From 509ccd85ef448f5843716d4b51a8b07f875cdfda Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Gustavsson?= Date: Mon, 25 Feb 2013 09:55:59 +0100 Subject: PER/UPER: Share all code except encoding of primitives The only code that is really different between the PER and UPER backends is encoding of primitive types. --- lib/asn1/test/asn1_SUITE_data/InfObj.asn | 9 ++++++++- lib/asn1/test/testInfObj.erl | 3 ++- 2 files changed, 10 insertions(+), 2 deletions(-) (limited to 'lib/asn1/test') diff --git a/lib/asn1/test/asn1_SUITE_data/InfObj.asn b/lib/asn1/test/asn1_SUITE_data/InfObj.asn index abd49e64f3..ff11b36788 100644 --- a/lib/asn1/test/asn1_SUITE_data/InfObj.asn +++ b/lib/asn1/test/asn1_SUITE_data/InfObj.asn @@ -163,7 +163,14 @@ myotherobject MY-CLASS ::= { } MyObjectSet MY-CLASS ::= { - myobject | myotherobject + myobject | myotherobject | + { + -- Each character will be encoded in 3 bits in UPER, 4 bits in PER. + &Count NumericString (FROM("01234567") ^ SIZE(8)), + &integerValue 43, + &booleanValue TRUE, + &stringValue "tjosan" + } } MyPdu ::= SEQUENCE { diff --git a/lib/asn1/test/testInfObj.erl b/lib/asn1/test/testInfObj.erl index 97e6a9aaa9..c0f86eab60 100644 --- a/lib/asn1/test/testInfObj.erl +++ b/lib/asn1/test/testInfObj.erl @@ -50,7 +50,8 @@ main(_Erule) -> roundtrip('InfObj', 'MyPdu', {'MyPdu',42,12,false,"string"}), roundtrip('InfObj', 'MyPdu', {'MyPdu',{'Seq',1023,"hello"}, - 42,true,"longer string"}). + 42,true,"longer string"}), + roundtrip('InfObj', 'MyPdu', {'MyPdu',"75712346",43,true,"string"}). roundtrip(M, T, V) -> -- cgit v1.2.3