### Question:
ContainerBinding extends BindingContext implements Binding { @Override public void modelChanged() { modelChanged.apply(); } ContainerBinding(Binding selfBinding, PropertyBehaviorProvider behaviorProvider,
            PropertyDispatcherFactory dispatcherFactory, Handler modelChanged); @Override void modelChanged(); @Override void updateFromPmo(); @Override Object getBoundComponent(); @Override Object getPmo();  }### Answer:
@Test public void testModelChanged_IsForwardedToParent() { BindingContext bindingContext = spy(new BindingContext()); ComponentWrapper componentWrapper = new TestComponentWrapper(new TestUiComponent()); ContainerBinding binding = bindingContext.bindContainer(new TestPmo(new TestModelObject()), BoundProperty.of("test"), Arrays.asList(), componentWrapper); binding.modelChanged(); verify(bindingContext).modelChanged(); }
@Test public void testModelChanged() { BindingContext bindingContext = new BindingContext(); ComponentWrapper componentWrapper = new TestComponentWrapper(new TestUiComponent()); TestAspectDef testAspectDef = new TestAspectDef(); ContainerBinding binding = bindingContext.bindContainer(new Object(), BoundProperty.of("test"), Arrays.asList(testAspectDef), componentWrapper); testAspectDef.triggered = false; binding.modelChanged(); assertThat(testAspectDef.triggered, is(true)); }