summaryrefslogtreecommitdiffstats
path: root/src/net/gcdc/asn1/test/UperEncodeEnumExtensionTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/net/gcdc/asn1/test/UperEncodeEnumExtensionTest.java')
-rw-r--r--src/net/gcdc/asn1/test/UperEncodeEnumExtensionTest.java148
1 files changed, 0 insertions, 148 deletions
diff --git a/src/net/gcdc/asn1/test/UperEncodeEnumExtensionTest.java b/src/net/gcdc/asn1/test/UperEncodeEnumExtensionTest.java
deleted file mode 100644
index 4b91f8e..0000000
--- a/src/net/gcdc/asn1/test/UperEncodeEnumExtensionTest.java
+++ /dev/null
@@ -1,148 +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.FieldOrder;
-import net.gcdc.asn1.datatypes.HasExtensionMarker;
-import net.gcdc.asn1.datatypes.IsExtension;
-import net.gcdc.asn1.datatypes.Sequence;
-
-import net.gcdc.asn1.uper.UperEncoder;
-
-import org.junit.Test;
-
-
-public class UperEncodeEnumExtensionTest {
-
- /*** Example from the Standard on UPER.
- <pre>
- World-Schema DEFINITIONS AUTOMATIC TAGS ::=
- BEGIN
- TestRecord ::= [APPLICATION 0] IMPLICIT SEQUENCE {
- value EnumType DEFAULT value2
- }
-
- EnumType ::= ENUMERATED {
- value1 (0),
- value2 (1)
- ,...
- }
- END
- </pre>
- */
- @Sequence
- public static class TestRecord {
-
- @FieldOrder(order = 0)
- @Asn1Optional EnumType value = EnumType.value1;
- public TestRecord() {}
- public void setValue(EnumType value) {
- this.value = value;
- }
- }
-
-
- /*** Example from the Standard on UPER.
- TestRecord ::= [APPLICATION 0] IMPLICIT SEQUENCE {
- value EnumType DEFAULT value2,
- }
-
- EnumType ::= ENUMERATED {
- value1 (0),
- value2 (1)
- ,...
- value3 (2)
- }
- */
- @Sequence
- public static class TestRecordExtended {
-
- @Asn1Optional EnumTypeExtended value = EnumTypeExtended.value3;
-
- public TestRecordExtended() {}
-
- public void setValue(EnumTypeExtended value) {
- this.value = value;
- }
-
-
- }
-
- @HasExtensionMarker
- public enum EnumType {
- value1("value1"),
- value2("value2");
-
- public String text;
-
- EnumType(String text) {
- this.text = text;
- }
-
- public String toString(){
- return text;
- }
- }
-
-
- @HasExtensionMarker
- public enum EnumTypeExtended {
- value1("value1"),
- value2("value2"),
-
- @IsExtension
- value3("value3");
-
- public String text;
-
- EnumTypeExtended(String text) {
- this.text = text;
- }
-
- public String toString(){
- return text;
- }
- }
-
-
-
- @Test public void testExtension() throws IllegalArgumentException, IllegalAccessException {
-
- TestRecordExtended record = new TestRecordExtended();
- record.setValue(EnumTypeExtended.value3);
- byte[] encoded = UperEncoder.encode(record);
- String hex = UperEncoder.hexStringFromBytes(encoded);
- UperEncoder.logger.log(Level.FINEST,String.format("Enum value3: data hex: %s", hex));
- assertEquals("C000", hex);
- }
-
- @Test public void testExtensionDecoding() throws IllegalArgumentException, IllegalAccessException {
-
- TestRecordExtended record = new TestRecordExtended();
- record.setValue(EnumTypeExtended.value3);
- byte[] encoded = UperEncoder.encode(record);
- String hex = UperEncoder.hexStringFromBytes(encoded);
- UperEncoder.logger.log(Level.FINEST,String.format("Enum value3: data hex: %s", hex));
- assertEquals("C000", hex);
-
- TestRecordExtended result = UperEncoder.decode(encoded, TestRecordExtended.class);
- assertEquals(result.value,EnumTypeExtended.value3);
- }
-
- @Test public void testUnknownExtensionDecoding() throws IllegalArgumentException, IllegalAccessException {
-
- TestRecordExtended record = new TestRecordExtended();
- byte[] encoded = UperEncoder.encode(record);
- String hex = UperEncoder.hexStringFromBytes(encoded);
- UperEncoder.logger.log(Level.FINEST,String.format("Enum value3: data hex: %s", hex));
- assertEquals("C000", hex);
-
- TestRecord result = UperEncoder.decode(encoded, TestRecord.class);
- assert(result.value == null);
- }
-
-
-}