public void testOwnership() { MetadataElement root = new MetadataElement("root"); MetadataElement child = new MetadataElement("child"); ProductNodeGroup<MetadataElement> referencingGroup = new ProductNodeGroup<MetadataElement>(null, "metadataElements", false); child.setOwner(root); assertSame(root, child.getOwner()); referencingGroup.add(child); assertEquals(true, referencingGroup.contains(child)); assertSame(root, child.getOwner()); referencingGroup.remove(child); assertEquals(false, referencingGroup.contains(child)); assertSame(root, child.getOwner()); ProductNodeGroup<MetadataElement> owningGroup = new ProductNodeGroup<MetadataElement>(null, "metadataElements", true); child.setOwner(root); assertSame(root, child.getOwner()); owningGroup.add(child); assertEquals(true, owningGroup.contains(child)); assertSame(owningGroup, child.getOwner()); owningGroup.remove(child); assertEquals(false, owningGroup.contains(child)); assertSame(null, child.getOwner()); }
assertEquals(false, p.isModified()); assertNotNull(pinGroup); assertSame(p, pinGroup.getOwner()); assertSame(p, pinGroup.getProduct()); assertEquals(0, pinGroup.getNodeCount()); pinGroup.add(placemark2); pinGroup.add(placemark3); assertEquals(true, p.isModified()); assertEquals(3, pinGroup.getNodeCount()); assertEquals("+p1;+p2;+p3;", pl.trace); pl.trace = ""; assertEquals(false, p.isModified()); assertEquals("", pl.trace); assertSame(placemark1, pinGroup.get(0)); assertSame(placemark2, pinGroup.get(1)); assertSame(placemark3, pinGroup.get(2)); assertEquals(0, pinGroup.getNodeCount()); assertEquals("-p1;-p2;-p3;", pl.trace); assertEquals("+pins;-pins;", bl.trace); pl.trace = ""; bl.trace = ""; p.addBand("b2", ProductData.TYPE_INT8);
public void testNodeChangeIsObservable() { final Product p = new Product("p", "t", 10, 10); final ProductNodeGroup<Placemark> pinGroup = p.getPinGroup(); final Placemark placemark = Placemark.createPointPlacemark(PinDescriptor.getInstance(), "p1", "l1", "", new PixelPos(0, 0), null, null); pinGroup.add(placemark); final PNL listener = new PNL(Placemark.class); p.addProductNodeListener(listener); placemark.setLabel("new label"); assertEquals(true, p.isModified()); assertEquals("c:p1.label;", listener.trace); }