diff options
author | Dan Gudmundsson <[email protected]> | 2014-10-28 12:52:12 +0100 |
---|---|---|
committer | Björn Gustavsson <[email protected]> | 2015-01-12 11:40:26 +0100 |
commit | 1c79a4fd03cea47d20f5de00bbdaa8b8bd025ad0 (patch) | |
tree | ccba0cbed827aa3a9826e28e4bc41df7e6437d02 /lib/asn1/test | |
parent | 09bcfc03bd2e2b2eb31f15f2410ca3b5e8e76616 (diff) | |
download | otp-1c79a4fd03cea47d20f5de00bbdaa8b8bd025ad0.tar.gz otp-1c79a4fd03cea47d20f5de00bbdaa8b8bd025ad0.tar.bz2 otp-1c79a4fd03cea47d20f5de00bbdaa8b8bd025ad0.zip |
Use recursive get_referenced_type to get classdef directly
To be sure that indirect references to classes are solved.
Diffstat (limited to 'lib/asn1/test')
-rw-r--r-- | lib/asn1/test/asn1_SUITE_data/ParamBasic.asn1 | 19 | ||||
-rw-r--r-- | lib/asn1/test/testParamBasic.erl | 4 |
2 files changed, 23 insertions, 0 deletions
diff --git a/lib/asn1/test/asn1_SUITE_data/ParamBasic.asn1 b/lib/asn1/test/asn1_SUITE_data/ParamBasic.asn1 index 68fc782f33..8a69a6addd 100644 --- a/lib/asn1/test/asn1_SUITE_data/ParamBasic.asn1 +++ b/lib/asn1/test/asn1_SUITE_data/ParamBasic.asn1 @@ -42,4 +42,23 @@ SIGNATURE-ALGORITHM ::= CLASS { KEY &id CONTAINING &Type } +-- +-- Test that indirect classes references are resolved. +-- + +AlgorithmIdentifier2 { ALGORITHM-IDENTIFIER:InfoObjectSet } ::= SEQUENCE { + algorithm ALGORITHM-IDENTIFIER.&id({InfoObjectSet}), + parameters ALGORITHM-IDENTIFIER.&Type({InfoObjectSet} {@algorithm}) OPTIONAL +} + +ALGORITHM-IDENTIFIER ::= TYPE-IDENTIFIER + +Seq ::= SEQUENCE { + c1 AlgorithmIdentifier2 {{ObjectSet-1}}, + c2 AlgorithmIdentifier2 {{ObjectSet-2}} +} + +ObjectSet-1 ALGORITHM-IDENTIFIER ::= { {INTEGER IDENTIFIED BY {2 1 1}}, ... } +ObjectSet-2 ALGORITHM-IDENTIFIER ::= { ... } + END diff --git a/lib/asn1/test/testParamBasic.erl b/lib/asn1/test/testParamBasic.erl index 39f7947e8d..52c6426414 100644 --- a/lib/asn1/test/testParamBasic.erl +++ b/lib/asn1/test/testParamBasic.erl @@ -46,6 +46,10 @@ main(Rules) -> roundtrip('AnAlgorithm', {'AnAlgorithm',1,42}), roundtrip('AnAlgorithm', {'AnAlgorithm',2,true}), roundtrip('AnAlgorithm', {'AnAlgorithm',2,false}), + + roundtrip('Seq', {'Seq', + {'Seq_c1',{2,1,1},42}, + {'Seq_c2',{2,1,1,1},asn1_NOVALUE}}), ok. roundtrip(Type, Value) -> |