X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=system%2Fgeneral%2Fsrc%2Ftest%2Fjava%2Forg%2Fwamblee%2Fsystem%2Fgraph%2FCompositeEdgeFilterTest.java;h=c2bcda5ee8181d081bed19423975b50db353b6a3;hb=89c06d4d52b46c154128c97d6e758fa1f4fc7a6e;hp=7889c35723f25e62926c8530b4bc38f6eb6d6b87;hpb=1bfc42afcea288a918e8befe65fd8f87b99ba2e4;p=utils diff --git a/system/general/src/test/java/org/wamblee/system/graph/CompositeEdgeFilterTest.java b/system/general/src/test/java/org/wamblee/system/graph/CompositeEdgeFilterTest.java index 7889c357..c2bcda5e 100644 --- a/system/general/src/test/java/org/wamblee/system/graph/CompositeEdgeFilterTest.java +++ b/system/general/src/test/java/org/wamblee/system/graph/CompositeEdgeFilterTest.java @@ -1,27 +1,24 @@ /* * Copyright 2008 the original author or authors. - * + * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. - */ + */ package org.wamblee.system.graph; -import java.util.Arrays; - import junit.framework.TestCase; +import static org.mockito.Matchers.*; +import static org.mockito.Mockito.*; -import org.easymock.classextension.EasyMock; -import org.easymock.classextension.IMocksControl; -import static org.easymock.classextension.EasyMock.*; import org.wamblee.system.container.Application; import org.wamblee.system.core.Component; import org.wamblee.system.core.Environment; @@ -30,92 +27,116 @@ import org.wamblee.system.core.RequiredInterface; import org.wamblee.system.graph.component.ProvidedInterfaceNode; import org.wamblee.system.graph.component.RequiredInterfaceNode; + +/** + * DOCUMENT ME! + * + * @author $author$ + * @version $Revision$ + */ public class CompositeEdgeFilterTest extends TestCase { - private Application _app = new Application(); - private Environment _env = new Environment(); - - private Edge createEdge(Component aClient, RequiredInterface aRequired, - Component aServer, ProvidedInterface aProvided) { + /** + * DOCUMENT ME! + */ + private Application app = new Application(); + + /** + * DOCUMENT ME! + */ + private Environment env = new Environment(); + + /** + * DOCUMENT ME! + * + * @param aClient DOCUMENT ME! + * @param aRequired DOCUMENT ME! + * @param aServer DOCUMENT ME! + * @param aProvided DOCUMENT ME! + * + * @return DOCUMENT ME! + */ + private Edge createEdge(Component aClient, RequiredInterface aRequired, + Component aServer, ProvidedInterface aProvided) { Node from = new RequiredInterfaceNode(aClient, aRequired); - Node to = new ProvidedInterfaceNode(aServer, aProvided); + Node to = new ProvidedInterfaceNode(aServer, aProvided); + return new DefaultEdge(from, to); } - public void testEmpty() { - EdgeFilter restriction = new CompositeEdgeFilter(); - assertFalse(restriction.isViolated(createEdge(_app, _app.getRequiredInterfaces().get(0), - _env, _env.getProvidedInterfaces().get(0)))); + /** + * DOCUMENT ME! + */ + public void testEmpty() { + EdgeFilter restriction = new CompositeEdgeFilter(); + assertFalse(restriction.isViolated(createEdge(app, + app.getRequiredInterfaces().get(0), env, + env.getProvidedInterfaces().get(0)))); } - + + /** + * DOCUMENT ME! + * + * @param base DOCUMENT ME! + * @param aResult DOCUMENT ME! + */ private void configureRestriction(EdgeFilter base, boolean aResult) { - base.isViolated( (Edge)EasyMock.anyObject()); - EasyMock.expectLastCall().andReturn(aResult); + stub(base.isViolated((Edge) anyObject())).toReturn(aResult); } - - public void testOneRestriction() { - IMocksControl control = EasyMock.createStrictControl(); - - EdgeFilter base = control.createMock(EdgeFilter.class); + + /** + * DOCUMENT ME! + */ + public void testOneRestriction() { + EdgeFilter base = mock(EdgeFilter.class); CompositeEdgeFilter composite = new CompositeEdgeFilter(); composite.add(base); - + // First let the base return false and verify the result. - configureRestriction(base, false); - - control.replay(); - assertFalse(composite.isViolated(createEdge(_app, _app.getRequiredInterfaces().get(0), - _env, _env.getProvidedInterfaces().get(0)))); - control.verify(); - + + assertFalse(composite.isViolated(createEdge(app, + app.getRequiredInterfaces().get(0), env, + env.getProvidedInterfaces().get(0)))); + // Second let the base return true and verify the result. - control.reset(); configureRestriction(base, true); - - control.replay(); - assertTrue(composite.isViolated(createEdge(_app, _app.getRequiredInterfaces().get(0), - _env, _env.getProvidedInterfaces().get(0)))); - control.verify(); + + assertTrue(composite.isViolated(createEdge(app, + app.getRequiredInterfaces().get(0), env, + env.getProvidedInterfaces().get(0)))); } - - - public void testTwoRestrictions() { - IMocksControl control = EasyMock.createStrictControl(); - - EdgeFilter base1 = control.createMock(EdgeFilter.class); + /** + * DOCUMENT ME! + */ + public void testTwoRestrictions() { + EdgeFilter base1 = mock(EdgeFilter.class); CompositeEdgeFilter composite = new CompositeEdgeFilter(); composite.add(base1); - EdgeFilter base2 = control.createMock(EdgeFilter.class); + + EdgeFilter base2 = mock(EdgeFilter.class); composite.add(base2); - + // 1. base1 not violated and base 2 not violated -> not violated. - configureRestriction(base1, false); configureRestriction(base2, false); - control.replay(); - assertFalse(composite.isViolated(createEdge(_app, _app.getRequiredInterfaces().get(0), - _env, _env.getProvidedInterfaces().get(0)))); - control.verify(); - control.reset(); - + assertFalse(composite.isViolated(createEdge(app, + app.getRequiredInterfaces().get(0), env, + env.getProvidedInterfaces().get(0)))); + // 2. base 1 not violated but base 2 violated -> violated configureRestriction(base1, false); configureRestriction(base2, true); - control.replay(); - assertTrue(composite.isViolated(createEdge(_app, _app.getRequiredInterfaces().get(0), - _env, _env.getProvidedInterfaces().get(0)))); - control.verify(); - control.reset(); - + + assertTrue(composite.isViolated(createEdge(app, + app.getRequiredInterfaces().get(0), env, + env.getProvidedInterfaces().get(0)))); + // 3. base 1 violated -> violated and base 2 not called. configureRestriction(base1, true); // base 2 should not be called. - control.replay(); - assertTrue(composite.isViolated(createEdge(_app, _app.getRequiredInterfaces().get(0), - _env, _env.getProvidedInterfaces().get(0)))); - control.verify(); - control.reset(); + assertTrue(composite.isViolated(createEdge(app, + app.getRequiredInterfaces().get(0), env, + env.getProvidedInterfaces().get(0)))); } - }