ebul-cmp/src/test/java/info/ebenoit/ebul/cmp/TestDependencyInfo.java

65 lines
1.8 KiB
Java

package info.ebenoit.ebul.cmp;
import org.junit.Test;
import static org.junit.Assert.*;
/** Tests for {@link DependencyInfo} */
public class TestDependencyInfo
{
/** Test: name-based constructor throws {@link NullPointerException} if name is <code>null</code> */
@Test( expected = NullPointerException.class )
public void testNewWithNullName( )
{
new DependencyInfo( (String) null );
}
/** Test: class-based constructor throws {@link NullPointerException} if class is <code>null</code> */
@Test( expected = NullPointerException.class )
public void testNewWithNullClass( )
{
new DependencyInfo( (Class< ? >) null );
}
/** Test: class-based constructor throws {@link ComponentDefinitionException} if class is a primitive type */
@Test( expected = ComponentDefinitionException.class )
public void testNewWithPrimitiveType( )
{
new DependencyInfo( int.class );
}
/** Test: class-based constructor throws {@link ComponentDefinitionException} if class is an array type */
@Test( expected = ComponentDefinitionException.class )
public void testNewWithArrayType( )
{
new DependencyInfo( Object[].class );
}
/** Test: equals() method */
@Test
public void testEquals( )
{
DependencyInfo[] di = new DependencyInfo[] {
new DependencyInfo( "test" ) , new DependencyInfo( "test" ) , new DependencyInfo( "test2" ) ,
new DependencyInfo( String.class ) , new DependencyInfo( String.class ) ,
new DependencyInfo( Object.class )
};
assertTrue( di[ 0 ].equals( di[ 0 ] ) );
assertTrue( di[ 0 ].equals( di[ 1 ] ) );
assertFalse( di[ 0 ].equals( di[ 2 ] ) );
assertFalse( di[ 0 ].equals( di[ 3 ] ) );
assertTrue( di[ 3 ].equals( di[ 3 ] ) );
assertTrue( di[ 3 ].equals( di[ 4 ] ) );
assertFalse( di[ 3 ].equals( di[ 5 ] ) );
assertFalse( di[ 3 ].equals( di[ 0 ] ) );
}
}