diff options
Diffstat (limited to 'src/net/gcdc/asn1/test/UperEncodeStringTest.java')
-rw-r--r-- | src/net/gcdc/asn1/test/UperEncodeStringTest.java | 112 |
1 files changed, 0 insertions, 112 deletions
diff --git a/src/net/gcdc/asn1/test/UperEncodeStringTest.java b/src/net/gcdc/asn1/test/UperEncodeStringTest.java deleted file mode 100644 index 29e6c99..0000000 --- a/src/net/gcdc/asn1/test/UperEncodeStringTest.java +++ /dev/null @@ -1,112 +0,0 @@ -package net.gcdc.asn1.test; - -import static org.junit.Assert.assertEquals; - -import java.util.logging.Level; - -import net.gcdc.asn1.datatypes.Asn1Optional; -import net.gcdc.asn1.datatypes.CharacterRestriction; -import net.gcdc.asn1.datatypes.FieldOrder; -import net.gcdc.asn1.datatypes.RestrictedString; -import net.gcdc.asn1.datatypes.Sequence; - -import net.gcdc.asn1.uper.UperEncoder; - -import org.junit.Test; - - -public class UperEncodeStringTest { - - /** - * Example from the Standard on UPER. - <pre> - World-Schema DEFINITIONS AUTOMATIC TAGS ::= - BEGIN - TestRecord ::= [APPLICATION 0] IMPLICIT SEQUENCE { - testString1 UTF8String OPTIONAL, - testString2 IA5String OPTIONAL - } - END - </pre> - */ - @Sequence - public static class TestRecord { - - @FieldOrder(order = 0) - @RestrictedString(CharacterRestriction.UTF8String) - @Asn1Optional() String valueUtf8; - - @FieldOrder(order = 1) - @RestrictedString(CharacterRestriction.IA5String) - @Asn1Optional() String valueIA5; - - public TestRecord() { - } - - public TestRecord(String utf8, String ia5) { - this.valueUtf8 = utf8; - this.valueIA5 = ia5; - } - } - - - @Test public void testEncode() throws IllegalArgumentException, IllegalAccessException { - - //Teststring: AêñüC - String original = new String("A" + "\u00ea" + "\u00f1" + "\u00fc" + "C"); - - TestRecord record = new TestRecord(original, "Meier"); - byte[] encoded = UperEncoder.encode(record); - String hex = UperEncoder.hexStringFromBytes(encoded); - UperEncoder.logger.log(Level.FINEST,String.format("data hex: %s", hex)); - assertEquals("C21070EAB0EC70EF10C166E5D39790",hex); - - } - - @Test public void testEncodeUtf8() throws IllegalArgumentException, IllegalAccessException { - - //"你好吗" - String original = new String("\u00e4" + "\u00bd" + "\u00a0" + "\u00e5" + "\u00a5" + "\u00bd" + "\u00e5" + "\u0090" + "\u0097"); - TestRecord record = new TestRecord(original, "Meier"); - byte[] encoded = UperEncoder.encode(record); - String hex = UperEncoder.hexStringFromBytes(encoded); - UperEncoder.logger.log(Level.FINEST,String.format("data hex: %s", hex)); - assertEquals("C4B0E930AF70A830E970A970AF70E970A430A5C166E5D39790",hex); - } - - - - @Test public void testDecode() throws IllegalArgumentException, IllegalAccessException { - - //Teststring: AêñüC - String original = new String("A" + "\u00ea" + "\u00f1" + "\u00fc" + "C"); - - TestRecord record = new TestRecord(original, "Meier"); - byte[] encoded = UperEncoder.encode(record); - String hex = UperEncoder.hexStringFromBytes(encoded); - UperEncoder.logger.log(Level.FINEST,String.format("data hex: %s", hex)); - assertEquals("C21070EAB0EC70EF10C166E5D39790",hex); - TestRecord result = UperEncoder.decode(encoded, TestRecord.class); - assertEquals(result.valueUtf8,record.valueUtf8); - assertEquals(result.valueIA5,record.valueIA5); - } - - - @Test public void testDecodeUtf8() throws IllegalArgumentException, IllegalAccessException { - //"你好吗" - String original = new String("\u00e4" + "\u00bd" + "\u00a0" + "\u00e5" + "\u00a5" + "\u00bd" + "\u00e5" + "\u0090" + "\u0097"); - TestRecord record = new TestRecord(original, "Meier"); - byte[] encoded = UperEncoder.encode(record); - String hex = UperEncoder.hexStringFromBytes(encoded); - UperEncoder.logger.log(Level.FINEST,String.format("data hex: %s", hex)); - assertEquals("C4B0E930AF70A830E970A970AF70E970A430A5C166E5D39790",hex); - TestRecord result = UperEncoder.decode(encoded, TestRecord.class); - assertEquals(result.valueUtf8,record.valueUtf8); - assertEquals(result.valueIA5,record.valueIA5); - } - - - - - -} |