TestStringUtilpublic class TestStringUtil extends TestCase
Constructors Summary |
---|
public TestStringUtil(String name)Creates new TestStringUtil
super( name );
|
Methods Summary |
---|
private java.lang.String | fmt(double num, int minIntDigits, int maxFracDigitis)
NumberFormat nf = NumberFormat.getInstance();
if ( minIntDigits != -1 )
{
nf.setMinimumIntegerDigits( minIntDigits );
}
if ( maxFracDigitis != -1 )
{
nf.setMaximumFractionDigits( maxFracDigitis );
}
return nf.format( num );
| public static void | main(java.lang.String[] ignored_args)main
System.out.println( "Testing util.StringUtil functionality" );
junit.textui.TestRunner.run( TestStringUtil.class );
| protected void | setUp()
super.setUp();
// System.setProperty()
| public void | testComplexGetFromUnicode()Test more complex form of getFromUnicode
byte[] test_data = new byte[32];
int index = 0;
for ( int k = 0; k < 16; k++ )
{
test_data[index++] = (byte) 0;
test_data[index++] = (byte) ( 'a" + k );
}
assertEquals( "abcdefghijklmno",
StringUtil.getFromUnicodeBE( test_data, 0, 15 ) );
assertEquals( "bcdefghijklmnop",
StringUtil.getFromUnicodeBE( test_data, 2, 15 ) );
try
{
StringUtil.getFromUnicodeBE( test_data, -1, 16 );
fail( "Should have caught ArrayIndexOutOfBoundsException" );
}
catch ( ArrayIndexOutOfBoundsException ignored )
{
// as expected
}
try
{
StringUtil.getFromUnicodeBE( test_data, 32, 16 );
fail( "Should have caught ArrayIndexOutOfBoundsException" );
}
catch ( ArrayIndexOutOfBoundsException ignored )
{
// as expected
}
try
{
StringUtil.getFromUnicodeBE( test_data, 1, 16 );
fail( "Should have caught IllegalArgumentException" );
}
catch ( IllegalArgumentException ignored )
{
// as expected
}
try
{
StringUtil.getFromUnicodeBE( test_data, 1, -1 );
fail( "Should have caught IllegalArgumentException" );
}
catch ( IllegalArgumentException ignored )
{
// as expected
}
| public void | testFormat()
assertEquals( "This is a test " + fmt( 1.2345, 2, 2 ),
StringUtil.format( "This is a test %2.2", new Object[]
{
new Double( 1.2345 )
} ) );
assertEquals( "This is a test " + fmt( 1.2345, -1, 3 ),
StringUtil.format( "This is a test %.3", new Object[]
{
new Double( 1.2345 )
} ) );
assertEquals( "This is a great test " + fmt( 1.2345, -1, 3 ),
StringUtil.format( "This is a % test %.3", new Object[]
{
"great", new Double( 1.2345 )
} ) );
assertEquals( "This is a test 1",
StringUtil.format( "This is a test %", new Object[]
{
new Integer( 1 )
} ) );
assertEquals( "This is a test 1",
StringUtil.format( "This is a test %", new Object[]
{
new Integer( 1 ), new Integer( 1 )
} ) );
assertEquals( "This is a test 1.x",
StringUtil.format( "This is a test %1.x", new Object[]
{
new Integer( 1 )
} ) );
assertEquals( "This is a test ?missing data?1.x",
StringUtil.format( "This is a test %1.x", new Object[]
{
} ) );
assertEquals( "This is a test %1.x",
StringUtil.format( "This is a test \\%1.x", new Object[]
{
} ) );
| public void | testGetFromUnicodeHighSymbolsWithCodesMoreThan127()test getFromUnicodeHigh for symbols with code below and more 127
byte[] test_data = new byte[]{0x22, 0x04,
0x35, 0x04,
0x41, 0x04,
0x42, 0x04,
0x20, 0x00,
0x74, 0x00,
0x65, 0x00,
0x73, 0x00,
0x74, 0x00,
};
assertEquals( "\u0422\u0435\u0441\u0442 test",
StringUtil.getFromUnicodeLE( test_data ) );
| public void | testGetFromUnicodeSymbolsWithCodesMoreThan127()test simple form of getFromUnicode with symbols with code below and more 127
byte[] test_data = new byte[]{0x04, 0x22,
0x04, 0x35,
0x04, 0x41,
0x04, 0x42,
0x00, 0x20,
0x00, 0x74,
0x00, 0x65,
0x00, 0x73,
0x00, 0x74,
};
assertEquals( "\u0422\u0435\u0441\u0442 test",
StringUtil.getFromUnicodeBE( test_data ) );
| public void | testPutCompressedUnicode()Test putCompressedUnicode
byte[] output = new byte[100];
byte[] expected_output =
{
(byte) 'H", (byte) 'e", (byte) 'l", (byte) 'l",
(byte) 'o", (byte) ' ", (byte) 'W", (byte) 'o",
(byte) 'r", (byte) 'l", (byte) 'd", (byte) 0xAE
};
String input = new String( expected_output, StringUtil.getPreferredEncoding() );
StringUtil.putCompressedUnicode( input, output, 0 );
for ( int j = 0; j < expected_output.length; j++ )
{
assertEquals( "testing offset " + j, expected_output[j],
output[j] );
}
StringUtil.putCompressedUnicode( input, output,
100 - expected_output.length );
for ( int j = 0; j < expected_output.length; j++ )
{
assertEquals( "testing offset " + j, expected_output[j],
output[100 + j - expected_output.length] );
}
try
{
StringUtil.putCompressedUnicode( input, output,
101 - expected_output.length );
fail( "Should have caught ArrayIndexOutOfBoundsException" );
}
catch ( ArrayIndexOutOfBoundsException ignored )
{
// as expected
}
| public void | testPutUncompressedUnicode()Test putUncompressedUnicode
byte[] output = new byte[100];
String input = "Hello World";
byte[] expected_output =
{
(byte) 'H", (byte) 0, (byte) 'e", (byte) 0, (byte) 'l",
(byte) 0, (byte) 'l", (byte) 0, (byte) 'o", (byte) 0,
(byte) ' ", (byte) 0, (byte) 'W", (byte) 0, (byte) 'o",
(byte) 0, (byte) 'r", (byte) 0, (byte) 'l", (byte) 0,
(byte) 'd", (byte) 0
};
StringUtil.putUnicodeLE( input, output, 0 );
for ( int j = 0; j < expected_output.length; j++ )
{
assertEquals( "testing offset " + j, expected_output[j],
output[j] );
}
StringUtil.putUnicodeLE( input, output,
100 - expected_output.length );
for ( int j = 0; j < expected_output.length; j++ )
{
assertEquals( "testing offset " + j, expected_output[j],
output[100 + j - expected_output.length] );
}
try
{
StringUtil.putUnicodeLE( input, output,
101 - expected_output.length );
fail( "Should have caught ArrayIndexOutOfBoundsException" );
}
catch ( ArrayIndexOutOfBoundsException ignored )
{
// as expected
}
| public void | testSimpleGetFromUnicode()test simple form of getFromUnicode
byte[] test_data = new byte[32];
int index = 0;
for ( int k = 0; k < 16; k++ )
{
test_data[index++] = (byte) 0;
test_data[index++] = (byte) ( 'a" + k );
}
assertEquals( "abcdefghijklmnop",
StringUtil.getFromUnicodeBE( test_data ) );
|
|