public void testGetAggregatedFaultPolicy() {
engine = new PolicyEngineImpl();
BindingFaultInfo bfi = control.createMock(BindingFaultInfo.class);
control.replay();
Policy p = engine.getAggregatedFaultPolicy(bfi);
assertTrue(p.isEmpty());
control.verify();
control.reset();
PolicyProvider provider1 = control.createMock(PolicyProvider.class);
engine.getPolicyProviders().add(provider1);
Policy p1 = control.createMock(Policy.class);
EasyMock.expect(provider1.getEffectivePolicy(bfi)).andReturn(p1);
control.replay();
assertSame(p1, engine.getAggregatedFaultPolicy(bfi));
control.verify();
control.reset();
PolicyProvider provider2 = control.createMock(PolicyProvider.class);
engine.getPolicyProviders().add(provider2);
Policy p2 = control.createMock(Policy.class);
Policy p3 = control.createMock(Policy.class);
EasyMock.expect(provider1.getEffectivePolicy(bfi)).andReturn(p1);
EasyMock.expect(provider2.getEffectivePolicy(bfi)).andReturn(p2);
EasyMock.expect(p1.merge(p2)).andReturn(p3);
control.replay();