donaldp     2002/10/04 00:02:43

  Modified:    info/src/test/org/apache/avalon/framework/tools/infobuilder/test
                        InfoBuilderTestCase.java
  Added:       info/src/test/org/apache/avalon/framework/tools/infobuilder/test
                        InfoAssert.java
  Log:
  Extract out asserts.
  
  Revision  Changes    Path
  1.3       +14 -180   
jakarta-avalon-excalibur/info/src/test/org/apache/avalon/framework/tools/infobuilder/test/InfoBuilderTestCase.java
  
  Index: InfoBuilderTestCase.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-avalon-excalibur/info/src/test/org/apache/avalon/framework/tools/infobuilder/test/InfoBuilderTestCase.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- InfoBuilderTestCase.java  4 Oct 2002 06:10:35 -0000       1.2
  +++ InfoBuilderTestCase.java  4 Oct 2002 07:02:43 -0000       1.3
  @@ -30,8 +30,6 @@
   public class InfoBuilderTestCase
       extends TestCase
   {
  -    private static final Attribute[] EMPTY_ATTRIBUTES = new Attribute[ 0 ];
  -
       private static final String BASE_PACKAGE =
           "org.apache.avalon.framework.tools.infobuilder.test.data.";
   
  @@ -50,9 +48,9 @@
           final ComponentInfo actual = loadComponentInfo( COMPONENT1 );
           final ComponentInfo expected = constructDummyInfo();
   
  -        assertEqualInfos( COMPONENT1 + " should be equal to constructed actual",
  -                          expected,
  -                          actual );
  +        InfoAssert.assertEqualInfos( COMPONENT1 + " should be equal to constructed 
actual",
  +                                     expected,
  +                                     actual );
       }
   
       public void testLoadLegacyComponent()
  @@ -61,173 +59,9 @@
           final ComponentInfo actual = loadComponentInfo( COMPONENT2 );
           final ComponentInfo expected = loadComponentInfo( COMPONENT3 );
   
  -        assertEqualStructure( COMPONENT2 + " should be identical to " + COMPONENT3,
  -                              expected,
  -                              actual );
  -    }
  -
  -    private void assertEqualStructure( final String message,
  -                                       final ComponentInfo expected,
  -                                       final ComponentInfo actual )
  -    {
  -        final ComponentDescriptor expectedComponent = 
expected.getComponentDescriptor();
  -        final ComponentDescriptor actualComponent = actual.getComponentDescriptor();
  -        assertEqualAttributes( message + ": Component.attribute",
  -                               expectedComponent.getAttributes(),
  -                               actualComponent.getAttributes() );
  -
  -        assertEqualFeatures( message, expected, actual );
  -    }
  -
  -    private void assertEqualInfos( final String message,
  -                                   final ComponentInfo expected,
  -                                   final ComponentInfo actual )
  -    {
  -        final ComponentDescriptor expectedComponent = 
expected.getComponentDescriptor();
  -        final ComponentDescriptor actualComponent = actual.getComponentDescriptor();
  -        assertEqualComponents( message, expectedComponent, actualComponent );
  -
  -        assertEqualFeatures( message, expected, actual );
  -    }
  -
  -    private void assertEqualFeatures( final String message,
  -                                      final ComponentInfo expected,
  -                                      final ComponentInfo actual )
  -    {
  -        final LoggerDescriptor[] expectedLoggers = expected.getLoggers();
  -        final LoggerDescriptor[] actualLoggers = actual.getLoggers();
  -        assertEqualLoggers( message, expectedLoggers, actualLoggers );
  -
  -        final ContextDescriptor expectedContext = expected.getContextDescriptor();
  -        final ContextDescriptor actualContext = actual.getContextDescriptor();
  -        assertEqualContext( message, expectedContext, actualContext );
  -
  -        final ServiceDescriptor[] expectedServices = expected.getServices();
  -        final ServiceDescriptor[] actualServices = actual.getServices();
  -        assertEqualServices( message, expectedServices, actualServices );
  -
  -        final DependencyDescriptor[] expectedDeps = expected.getDependencies();
  -        final DependencyDescriptor[] actualDeps = actual.getDependencies();
  -        assertEqualDeps( message, expectedDeps, actualDeps );
  -    }
  -
  -    private void assertEqualDeps( final String message,
  -                                  final DependencyDescriptor[] expected,
  -                                  final DependencyDescriptor[] actual )
  -    {
  -        assertEquals( message + ": Dependencys.length", expected.length, 
actual.length );
  -        for( int i = 0; i < expected.length; i++ )
  -        {
  -            assertEquals( message + ": Dependencys[ " + i + "].service",
  -                          expected[ i ].getService(),
  -                          actual[ i ].getService() );
  -            assertEquals( message + ": Dependencys[ " + i + "].key",
  -                          expected[ i ].getKey(),
  -                          actual[ i ].getKey() );
  -            assertEqualAttributes( message + ": Dependencys[ " + i + "].attributes",
  -                                   expected[ i ].getAttributes(),
  -                                   actual[ i ].getAttributes() );
  -        }
  -    }
  -
  -    private void assertEqualServices( final String message,
  -                                      final ServiceDescriptor[] expected,
  -                                      final ServiceDescriptor[] actual )
  -    {
  -        assertEquals( message + ": Services.length", expected.length, actual.length 
);
  -        for( int i = 0; i < expected.length; i++ )
  -        {
  -            assertEquals( message + ": Services[ " + i + "].type",
  -                          expected[ i ].getImplementationKey(),
  -                          actual[ i ].getImplementationKey() );
  -            assertEqualAttributes( message + ": Services[ " + i + "].attributes",
  -                                   expected[ i ].getAttributes(),
  -                                   actual[ i ].getAttributes() );
  -        }
  -    }
  -
  -    private void assertEqualLoggers( final String message,
  -                                     final LoggerDescriptor[] expected,
  -                                     final LoggerDescriptor[] actual )
  -    {
  -        assertEquals( message + ": Loggers.length", expected.length, actual.length 
);
  -        for( int i = 0; i < expected.length; i++ )
  -        {
  -            assertEquals( message + ": Loggers[ " + i + "].name",
  -                          expected[ i ].getName(), actual[ i ].getName() );
  -            assertEqualAttributes( message + ": Loggers[ " + i + "].attributes",
  -                                   expected[ i ].getAttributes(), actual[ i 
].getAttributes() );
  -        }
  -    }
  -
  -    private void assertEqualContext( final String message,
  -                                     final ContextDescriptor expected,
  -                                     final ContextDescriptor actual )
  -    {
  -        assertEquals( message + ": Context.type", expected.getType(), 
actual.getType() );
  -        assertEqualEntrys( message + ": Context.entrys", expected.getEntrys(), 
expected.getEntrys() );
  -        assertEqualAttributes( message + ": Context.attribute",
  -                               expected.getAttributes(),
  -                               actual.getAttributes() );
  -    }
  -
  -    private void assertEqualEntrys( final String message,
  -                                    final EntryDescriptor[] expected,
  -                                    final EntryDescriptor[] actual )
  -    {
  -        assertEquals( message + " Length", expected.length, actual.length );
  -        for( int i = 0; i < expected.length; i++ )
  -        {
  -            assertEquals( message + " [" + i + "].key",
  -                          expected[ i ].getKey(), actual[ i ].getKey() );
  -            assertEquals( message + " [" + i + "].type",
  -                          expected[ i ].getType(), actual[ i ].getType() );
  -            assertEqualAttributes( message + " [" + i + "].attribute",
  -                                   expected[ i ].getAttributes(),
  -                                   actual[ i ].getAttributes() );
  -        }
  -    }
  -
  -    private void assertEqualComponents( final String message,
  -                                        final ComponentDescriptor expected,
  -                                        final ComponentDescriptor actual )
  -    {
  -        assertEquals( message + ": Component.type", expected.getImplementationKey(),
  -                      actual.getImplementationKey() );
  -        assertEqualAttributes( message + ": Component.attribute",
  -                               expected.getAttributes(),
  -                               actual.getAttributes() );
  -    }
  -
  -    private void assertEqualAttributes( final String message,
  -                                        final Attribute[] expected,
  -                                        final Attribute[] actual )
  -    {
  -        assertEquals( message + " Length", expected.length, actual.length );
  -        for( int i = 0; i < expected.length; i++ )
  -        {
  -            assertEquals( message + " [" + i + "].name",
  -                          expected[ i ].getName(), actual[ i ].getName() );
  -            assertEqualParameters( message + " [" + i + "].parameters",
  -                                   expected[ i ], actual[ i ] );
  -        }
  -    }
  -
  -    private void assertEqualParameters( final String message,
  -                                        final Attribute expected,
  -                                        final Attribute actual )
  -    {
  -        final String[] expectedNames = expected.getParameterNames();
  -        final String[] actualNames = actual.getParameterNames();
  -        assertEquals( message + " Length", expectedNames.length, actualNames.length 
);
  -
  -        for( int i = 0; i < expectedNames.length; i++ )
  -        {
  -            final String name = expectedNames[ i ];
  -            assertEquals( message + " value",
  -                          expected.getParameter( name ),
  -                          actual.getParameter( name ) );
  -        }
  +        InfoAssert.assertEqualStructure( COMPONENT2 + " should be identical to " + 
COMPONENT3,
  +                                         expected,
  +                                         actual );
       }
   
       private ComponentInfo constructDummyInfo()
  @@ -235,22 +69,22 @@
           final ComponentDescriptor component =
               new ComponentDescriptor(
                   "org.realityforge.Component1",
  -                EMPTY_ATTRIBUTES );
  +                InfoAssert.EMPTY_ATTRIBUTES );
   
  -        final LoggerDescriptor logger1 = new LoggerDescriptor( "", EMPTY_ATTRIBUTES 
);
  -        final LoggerDescriptor logger2 = new LoggerDescriptor( "audit", 
EMPTY_ATTRIBUTES );
  +        final LoggerDescriptor logger1 = new LoggerDescriptor( "", 
InfoAssert.EMPTY_ATTRIBUTES );
  +        final LoggerDescriptor logger2 = new LoggerDescriptor( "audit", 
InfoAssert.EMPTY_ATTRIBUTES );
           final LoggerDescriptor[] loggers = new LoggerDescriptor[]{logger1, logger2};
   
           final EntryDescriptor entry1 = new EntryDescriptor( "mbean",
                                                               "javax.jmx.MBeanServer",
                                                               false,
  -                                                            EMPTY_ATTRIBUTES );
  +                                                            
InfoAssert.EMPTY_ATTRIBUTES );
   
           final EntryDescriptor[] entrys = new EntryDescriptor[]{entry1};
           final ContextDescriptor context =
               new ContextDescriptor( "org.apache.avalon.phoenix.BlockContext",
                                      entrys,
  -                                   EMPTY_ATTRIBUTES );
  +                                   InfoAssert.EMPTY_ATTRIBUTES );
   
           final Properties parameters = new Properties();
           parameters.setProperty( "display-name", "Special Service" );
  @@ -264,12 +98,12 @@
               new DependencyDescriptor( "org.realityforge.Service2",
                                         "org.realityforge.Service2",
                                         true,
  -                                      EMPTY_ATTRIBUTES );
  +                                      InfoAssert.EMPTY_ATTRIBUTES );
           final DependencyDescriptor dependency2 =
               new DependencyDescriptor( "foo",
                                         "org.realityforge.Service3",
                                         false,
  -                                      EMPTY_ATTRIBUTES );
  +                                      InfoAssert.EMPTY_ATTRIBUTES );
           final DependencyDescriptor[] deps =
               new DependencyDescriptor[]{dependency1, dependency2};
   
  
  
  
  1.1                  
jakarta-avalon-excalibur/info/src/test/org/apache/avalon/framework/tools/infobuilder/test/InfoAssert.java
  
  Index: InfoAssert.java
  ===================================================================
  /*
   * Copyright (C) The Apache Software Foundation. All rights reserved.
   *
   * This software is published under the terms of the Apache Software License
   * version 1.1, a copy of which has been included with this distribution in
   * the LICENSE.txt file.
   */
  package org.apache.avalon.framework.tools.infobuilder.test;
  
  import org.apache.avalon.framework.info.Attribute;
  import org.apache.avalon.framework.info.ComponentInfo;
  import org.apache.avalon.framework.info.ComponentDescriptor;
  import org.apache.avalon.framework.info.LoggerDescriptor;
  import org.apache.avalon.framework.info.ContextDescriptor;
  import org.apache.avalon.framework.info.ServiceDescriptor;
  import org.apache.avalon.framework.info.DependencyDescriptor;
  import org.apache.avalon.framework.info.EntryDescriptor;
  import junit.framework.Assert;
  
  /**
   * A set of utilities for asserting  facts about info objects.
   *
   * @author <a href="mailto:peter at apache.org">Peter Donald</a>
   * @version $Revision: 1.1 $ $Date: 2002/10/04 07:02:43 $
   */
  public class InfoAssert
  {
      public static final Attribute[] EMPTY_ATTRIBUTES = new Attribute[ 0 ];
  
      public static void assertEqualStructure( final String message,
                                               final ComponentInfo expected,
                                               final ComponentInfo actual )
      {
          final ComponentDescriptor expectedComponent = 
expected.getComponentDescriptor();
          final ComponentDescriptor actualComponent = actual.getComponentDescriptor();
          assertEqualAttributes( message + ": Component.attribute",
                                 expectedComponent.getAttributes(),
                                 actualComponent.getAttributes() );
  
          assertEqualFeatures( message, expected, actual );
      }
  
      public static void assertEqualInfos( final String message,
                                           final ComponentInfo expected,
                                           final ComponentInfo actual )
      {
          final ComponentDescriptor expectedComponent = 
expected.getComponentDescriptor();
          final ComponentDescriptor actualComponent = actual.getComponentDescriptor();
          assertEqualComponents( message, expectedComponent, actualComponent );
  
          assertEqualFeatures( message, expected, actual );
      }
  
      public static void assertEqualFeatures( final String message,
                                              final ComponentInfo expected,
                                              final ComponentInfo actual )
      {
          final LoggerDescriptor[] expectedLoggers = expected.getLoggers();
          final LoggerDescriptor[] actualLoggers = actual.getLoggers();
          assertEqualLoggers( message, expectedLoggers, actualLoggers );
  
          final ContextDescriptor expectedContext = expected.getContextDescriptor();
          final ContextDescriptor actualContext = actual.getContextDescriptor();
          assertEqualContext( message, expectedContext, actualContext );
  
          final ServiceDescriptor[] expectedServices = expected.getServices();
          final ServiceDescriptor[] actualServices = actual.getServices();
          assertEqualServices( message, expectedServices, actualServices );
  
          final DependencyDescriptor[] expectedDeps = expected.getDependencies();
          final DependencyDescriptor[] actualDeps = actual.getDependencies();
          assertEqualDeps( message, expectedDeps, actualDeps );
      }
  
      public static void assertEqualDeps( final String message,
                                          final DependencyDescriptor[] expected,
                                          final DependencyDescriptor[] actual )
      {
          Assert.assertEquals( message + ": Dependencys.length", expected.length, 
actual.length );
          for( int i = 0; i < expected.length; i++ )
          {
              Assert.assertEquals( message + ": Dependencys[ " + i + "].service",
                                   expected[ i ].getService(),
                                   actual[ i ].getService() );
              Assert.assertEquals( message + ": Dependencys[ " + i + "].key",
                                   expected[ i ].getKey(),
                                   actual[ i ].getKey() );
              assertEqualAttributes( message + ": Dependencys[ " + i + "].attributes",
                                     expected[ i ].getAttributes(),
                                     actual[ i ].getAttributes() );
          }
      }
  
      public static void assertEqualServices( final String message,
                                              final ServiceDescriptor[] expected,
                                              final ServiceDescriptor[] actual )
      {
          Assert.assertEquals( message + ": Services.length", expected.length, 
actual.length );
          for( int i = 0; i < expected.length; i++ )
          {
              Assert.assertEquals( message + ": Services[ " + i + "].type",
                                   expected[ i ].getImplementationKey(),
                                   actual[ i ].getImplementationKey() );
              assertEqualAttributes( message + ": Services[ " + i + "].attributes",
                                     expected[ i ].getAttributes(),
                                     actual[ i ].getAttributes() );
          }
      }
  
      public static void assertEqualLoggers( final String message,
                                             final LoggerDescriptor[] expected,
                                             final LoggerDescriptor[] actual )
      {
          Assert.assertEquals( message + ": Loggers.length", expected.length, 
actual.length );
          for( int i = 0; i < expected.length; i++ )
          {
              Assert.assertEquals( message + ": Loggers[ " + i + "].name",
                                   expected[ i ].getName(), actual[ i ].getName() );
              assertEqualAttributes( message + ": Loggers[ " + i + "].attributes",
                                     expected[ i ].getAttributes(), actual[ i 
].getAttributes() );
          }
      }
  
      public static void assertEqualContext( final String message,
                                             final ContextDescriptor expected,
                                             final ContextDescriptor actual )
      {
          Assert.assertEquals( message + ": Context.type", expected.getType(), 
actual.getType() );
          assertEqualEntrys( message + ": Context.entrys", expected.getEntrys(), 
expected.getEntrys() );
          assertEqualAttributes( message + ": Context.attribute",
                                 expected.getAttributes(),
                                 actual.getAttributes() );
      }
  
      public static void assertEqualEntrys( final String message,
                                            final EntryDescriptor[] expected,
                                            final EntryDescriptor[] actual )
      {
          Assert.assertEquals( message + " Length", expected.length, actual.length );
          for( int i = 0; i < expected.length; i++ )
          {
              Assert.assertEquals( message + " [" + i + "].key",
                                   expected[ i ].getKey(), actual[ i ].getKey() );
              Assert.assertEquals( message + " [" + i + "].type",
                                   expected[ i ].getType(), actual[ i ].getType() );
              assertEqualAttributes( message + " [" + i + "].attribute",
                                     expected[ i ].getAttributes(),
                                     actual[ i ].getAttributes() );
          }
      }
  
      public static void assertEqualComponents( final String message,
                                                final ComponentDescriptor expected,
                                                final ComponentDescriptor actual )
      {
          Assert.assertEquals( message + ": Component.type", 
expected.getImplementationKey(),
                               actual.getImplementationKey() );
          assertEqualAttributes( message + ": Component.attribute",
                                 expected.getAttributes(),
                                 actual.getAttributes() );
      }
  
      public static void assertEqualParameters( final String message,
                                                final Attribute expected,
                                                final Attribute actual )
      {
          final String[] expectedNames = expected.getParameterNames();
          final String[] actualNames = actual.getParameterNames();
          Assert.assertEquals( message + " Length", expectedNames.length, 
actualNames.length );
  
          for( int i = 0; i < expectedNames.length; i++ )
          {
              final String name = expectedNames[ i ];
              Assert.assertEquals( message + " value",
                                   expected.getParameter( name ),
                                   actual.getParameter( name ) );
          }
      }
  
      protected static void assertEqualAttributes( final String message,
                                                   final Attribute[] expected,
                                                   final Attribute[] actual )
      {
          Assert.assertEquals( message + " Length", expected.length, actual.length );
          for( int i = 0; i < expected.length; i++ )
          {
              Assert.assertEquals( message + " [" + i + "].name",
                                   expected[ i ].getName(), actual[ i ].getName() );
              assertEqualParameters( message + " [" + i + "].parameters",
                                     expected[ i ], actual[ i ] );
          }
      }
  }
  
  
  

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to