litesoft
@ HEAD
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 |
// This Source Code is in the Public Domain per: http://unlicense.org package org.litesoft.codec; import junit.framework.*; public class IntegerTypedTerminatingCodecTest extends TestCase { public static TestSuite suite() { return new TestSuite( IntegerTypedTerminatingCodecTest.class ); } public IntegerTypedTerminatingCodecTest( String name ) { super( name ); } public static void main( String[] args ) { junit.textui.TestRunner.run( suite() ); } public void test_Signed() throws Exception { TypedTerminatingCodec<Integer> zCodec = IntegerTypedTerminatingCodec.SIGNED; checkRT( zCodec, null ); checkNegatives( zCodec ); checkNonNegatives( zCodec ); checkBadStrings( zCodec ); } public void test_NonNegative() throws Exception { TypedTerminatingCodec<Integer> zCodec = IntegerTypedTerminatingCodec.NON_NEGATIVE; checkRT( zCodec, null ); checkNonNegatives( zCodec ); checkBadStrings( zCodec ); } private void checkBadStrings( TypedTerminatingCodec<Integer> pCodec ) { try { decode( pCodec, "~" ); fail( "Bad Char OK?" ); } catch ( IllegalArgumentException expected ) { // OK } String zEncoded = encode( pCodec, 1 ); try { decode( pCodec, zEncoded + AbstractTypedTerminatingCodec.NULL_AS_CHAR ); fail( "Extra Char OK?" ); } catch ( IllegalArgumentException expected ) { // OK } } private void checkNegatives( TypedTerminatingCodec<Integer> pCodec ) throws Exception { checkRT( pCodec, -1 ); checkRT( pCodec, -3 ); checkRT( pCodec, -15 ); checkRT( pCodec, -16 ); checkRT( pCodec, -17 ); checkRT( pCodec, -31 ); checkRT( pCodec, -32 ); checkRT( pCodec, -33 ); checkRT( pCodec, -63 ); checkRT( pCodec, -64 ); checkRT( pCodec, -65 ); checkRT( pCodec, -300 ); checkRT( pCodec, Integer.MIN_VALUE ); checkRT( pCodec, Integer.MIN_VALUE + 1 ); checkRT( pCodec, Integer.MIN_VALUE / 2 ); } private void checkNonNegatives( TypedTerminatingCodec<Integer> pCodec ) throws Exception { checkRT( pCodec, 0 ); checkRT( pCodec, 1 ); checkRT( pCodec, 3 ); checkRT( pCodec, 15 ); checkRT( pCodec, 16 ); checkRT( pCodec, 17 ); checkRT( pCodec, 31 ); checkRT( pCodec, 32 ); checkRT( pCodec, 33 ); checkRT( pCodec, 63 ); checkRT( pCodec, 64 ); checkRT( pCodec, 65 ); checkRT( pCodec, 300 ); checkRT( pCodec, Integer.MAX_VALUE / 2 ); checkRT( pCodec, Integer.MAX_VALUE - 1 ); checkRT( pCodec, Integer.MAX_VALUE ); } private void checkRT( TypedTerminatingCodec<Integer> pCodec, Integer pValue ) { String encoded = encode( pCodec, pValue ); Integer rtValue = decode( pCodec, encoded ); assertEquals( "RT " + pCodec.getClass().getSimpleName() + " (" + encoded + ") ", pValue, rtValue ); System.out.println( "RT " + pCodec.getClass().getSimpleName() + " " + pValue + ": " + encoded ); } private Integer decode( TypedTerminatingCodec<Integer> pCodec, String pEncoded ) { return pCodec.decode( pEncoded ); } private String encode( TypedTerminatingCodec<Integer> pCodec, Integer pValue ) { return pCodec.encode( pValue ); } } |
Commits for litesoft/trunk/Java/core/Anywhere/tests/org/litesoft/codec/IntegerTypedTerminatingCodecTest.java
Revision | Author | Commited | Message |
---|---|---|---|
947 Diff | GeorgeS | Fri 06 Jun, 2014 23:36:56 +0000 | Correct Spelling of package! |
831 Diff | GeorgeS | Fri 31 Aug, 2012 22:39:56 +0000 | |
779 Diff | GeorgeS | Mon 16 Jul, 2012 04:34:33 +0000 | |
772 Diff | GeorgeS | Sun 15 Jul, 2012 16:55:51 +0000 | ! |
769 Diff | GeorgeS | Sat 14 Jul, 2012 23:18:20 +0000 | |
768 Diff | GeorgeS | Sat 14 Jul, 2012 22:48:34 +0000 | ! |
767 Diff | GeorgeS | Sat 14 Jul, 2012 18:19:39 +0000 | |
766 Diff | GeorgeS | Sat 14 Jul, 2012 16:38:04 +0000 | ! |
490 | GeorgeS | Fri 09 Sep, 2011 18:11:40 +0000 | Encoding |