Subversion Repository Public Repository

litesoft

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
// This Source Code is in the Public Domain per: http://litesoft.org/License.txt
package org.litesoft.codec;

import junit.framework.*;


public class StringCodecTest extends TestCase
{
    public static TestSuite suite()
    {
        return new TestSuite( StringCodecTest.class );
    }

    public StringCodecTest( String name )
    {
        super( name );
    }

    public static void main( String[] args )
    {
        junit.textui.TestRunner.run( suite() );
    }

    public void test_It()
            throws Exception
    {
        Codec<String> zCodec = StringCodec.INSTANCE;

        checkRT( zCodec, null );

        checkRT( zCodec, "" );
        checkRT( zCodec, " " );
        checkRT( zCodec, " A" );
        checkRT( zCodec, " A " );
        checkRT( zCodec, "The QuickBrown Fox Jumped Over the Lazy Moon." );
        checkRT( zCodec, "\t\r\n!@#$%^&*()1234567890=-+_][}{';" );

        try
        {
            zCodec.decode( "~" );
            fail( "Bad Char OK?" );
        }
        catch ( IllegalArgumentException expected )
        {
            // OK
        }
        String zEncoded = zCodec.encode( "A " );
        try
        {
            zCodec.decode( zEncoded + AbstractCodec.NULL_AS_STRING );
            fail( "Extra Char OK?" );
        }
        catch ( IllegalArgumentException expected )
        {
            // OK
        }
    }

    private void checkRT( Codec<String> pCodec, String pValue )
    {
        String encoded = pCodec.encode( pValue );
        String rtValue = pCodec.decode( encoded );
        assertEquals( "RT " + pCodec.getClass().getSimpleName() + " (" + encoded + ") ", pValue, rtValue );
        System.out.println( "RT " + pCodec.getClass().getSimpleName() + " " + pValue + ": " + encoded );
    }
}

Commits for litesoft/trunk/Java/core/Anywhere/tests/org/litesoft/codec/StringCodecTest.java

Diff revisions: vs.
Revision Author Commited Message
767 Diff Diff GeorgeS picture GeorgeS Sat 14 Jul, 2012 18:19:39 +0000
766 Diff Diff GeorgeS picture GeorgeS Sat 14 Jul, 2012 16:38:04 +0000

!

490 GeorgeS picture GeorgeS Fri 09 Sep, 2011 18:11:40 +0000

Encoding