public class BinarySearchTest? extends TestCase
{
int[] anArray = {1,2,3,4,6,7,8};
BinarySearchTest?( String name )
{super( name );
}
protected void setUp(){}
public static Test suite()
{TestSuite suite= new TestSuite();
suite.addTest(
new BinarySearchTest?("in array")
{protected void runTest() { this.testIsInArray(); }
});
suite.addTest(
new BinarySearchTest?("not in array")
{protected void runTest() { this.testNotInArray(); }
});
suite.addTest(
new BinarySearchTest?("throws")
{protected void runTest() { this.testThrows(); }
});
suite.addTest(
new BinarySearchTest?("doesn't throw")
{protected void runTest() { this.testThrowsNot(); }
});
return suite;
}
public void testNotInArray()
{BinarySearch failSearch = new BinarySearch( 5, anArray );
assert( failSearch.targetIsInArray() == false );
}
public void testIsInArray()
{BinarySearch successSearch = new BinarySearch( 2, anArray );
if( successSearch.targetIsInArray() )
{assert( "Target was not found in proper location",
anArray[ successSearch.indexOfTarget() ] == 2 );
}
else
{fail( "Target wasn't found" );
}
}
public void testThrows()
{try
{BinarySearch.findIndexOf( 5, anArray );
fail("Exception not thrown");
}
catch(Exception e){}
}
public void testThrowsNot()
{try
{BinarySearch.findIndexOf( 4, anArray ); }
catch(Exception e)
{fail("Exception thrown"); }
}
}