void () { final MockFacet mockFacet = addFacet("facet"); final FacetPointer<MockFacet> pointer = getManager().create(mockFacet); final Facet subFacet = addSubFacet(mockFacet, "subFacet"); final FacetPointer<Facet> subPointer = getManager().create(subFacet); final MyFacetPointerListener<Facet> allPointersListener = new MyFacetPointerListener<>(); getManager().addListener(allPointersListener, getTestRootDisposable()); final MyFacetPointerListener<MockFacet> mockPointersListener = new MyFacetPointerListener<>(); getManager().addListener(MockFacet.class, mockPointersListener, getTestRootDisposable()); renameFacet(mockFacet, "newName"); assertSame(pointer, assertOneElement(allPointersListener.getChanged())); assertSame(pointer, assertOneElement(mockPointersListener.getChanged())); renameFacet(subFacet, "newSub"); assertSame(subPointer, assertOneElement(allPointersListener.getChanged())); assertEquals(0, mockPointersListener.getChanged().length); }