X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=system%2Fgeneral%2Fsrc%2Ftest%2Fjava%2Forg%2Fwamblee%2Fsystem%2Fgraph%2FCompositeEdgeFilterTest.java;h=c2bcda5ee8181d081bed19423975b50db353b6a3;hb=ddd261f331280640c5b53c7128230b629ebcd268;hp=96fd009a4e915c7a771d63b8e859c97e08fc15d7;hpb=92e23e5ecf9614f2ab770a8cdedc0b21ddf1e127;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 96fd009a..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,23 +1,23 @@ /* * 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 junit.framework.TestCase; import static org.mockito.Matchers.*; import static org.mockito.Mockito.*; -import junit.framework.TestCase; import org.wamblee.system.container.Application; import org.wamblee.system.core.Component; @@ -27,75 +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(); + /** + * DOCUMENT ME! + */ + private Application app = new Application(); + + /** + * DOCUMENT ME! + */ private Environment env = new Environment(); - - private Edge createEdge(Component aClient, RequiredInterface aRequired, - Component aServer, ProvidedInterface aProvided) { + + /** + * 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) { - stub(base.isViolated((Edge)anyObject())).toReturn(aResult); + stub(base.isViolated((Edge) anyObject())).toReturn(aResult); } - - public void testOneRestriction() { - EdgeFilter base = mock(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); - - assertFalse(composite.isViolated(createEdge(app, app.getRequiredInterfaces().get(0), - env, env.getProvidedInterfaces().get(0)))); - + + assertFalse(composite.isViolated(createEdge(app, + app.getRequiredInterfaces().get(0), env, + env.getProvidedInterfaces().get(0)))); + // Second let the base return true and verify the result. configureRestriction(base, true); - - assertTrue(composite.isViolated(createEdge(app, app.getRequiredInterfaces().get(0), - env, env.getProvidedInterfaces().get(0)))); + + assertTrue(composite.isViolated(createEdge(app, + app.getRequiredInterfaces().get(0), env, + env.getProvidedInterfaces().get(0)))); } - - - public void testTwoRestrictions() { - EdgeFilter base1 = mock(EdgeFilter.class); + /** + * DOCUMENT ME! + */ + public void testTwoRestrictions() { + EdgeFilter base1 = mock(EdgeFilter.class); CompositeEdgeFilter composite = new CompositeEdgeFilter(); composite.add(base1); + 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); - assertFalse(composite.isViolated(createEdge(app, app.getRequiredInterfaces().get(0), - env, env.getProvidedInterfaces().get(0)))); - + 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); - - assertTrue(composite.isViolated(createEdge(app, app.getRequiredInterfaces().get(0), - env, env.getProvidedInterfaces().get(0)))); - + + 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. - - assertTrue(composite.isViolated(createEdge(app, app.getRequiredInterfaces().get(0), - env, env.getProvidedInterfaces().get(0)))); + assertTrue(composite.isViolated(createEdge(app, + app.getRequiredInterfaces().get(0), env, + env.getProvidedInterfaces().get(0)))); } - }