diff options
author | Björn Gustavsson <[email protected]> | 2014-11-28 15:47:44 +0100 |
---|---|---|
committer | Björn Gustavsson <[email protected]> | 2015-01-12 11:40:28 +0100 |
commit | 303fff739a00200a2a2adf3104e80a9e48012563 (patch) | |
tree | 45da1b6489d31b8814ccc069a683d310777701b8 /lib/asn1/test | |
parent | 2a343fda2c75f52bbf35b6d5ca9f3c97037c50b5 (diff) | |
download | otp-303fff739a00200a2a2adf3104e80a9e48012563.tar.gz otp-303fff739a00200a2a2adf3104e80a9e48012563.tar.bz2 otp-303fff739a00200a2a2adf3104e80a9e48012563.zip |
Modernize error handling for illicit tags
Diffstat (limited to 'lib/asn1/test')
-rw-r--r-- | lib/asn1/test/asn1_SUITE.erl | 12 | ||||
-rw-r--r-- | lib/asn1/test/asn1_SUITE_data/CCSNARG3.asn | 2 | ||||
-rw-r--r-- | lib/asn1/test/error_SUITE.erl | 21 |
3 files changed, 23 insertions, 12 deletions
diff --git a/lib/asn1/test/asn1_SUITE.erl b/lib/asn1/test/asn1_SUITE.erl index 04ebbab599..8013dd5605 100644 --- a/lib/asn1/test/asn1_SUITE.erl +++ b/lib/asn1/test/asn1_SUITE.erl @@ -54,7 +54,6 @@ groups() -> [{compile, Parallel, [c_syntax, c_string, - c_implicit_before_choice, constraint_equivalence]}, {ber, Parallel, @@ -588,14 +587,6 @@ c_string(Config, Rule, Opts) -> asn1_test_lib:compile("String", Config, [Rule|Opts]), asn1ct:test('String'). -c_implicit_before_choice(Config) -> - test(Config, fun c_implicit_before_choice/3, [ber]). -c_implicit_before_choice(Config, Rule, Opts) -> - DataDir = ?config(data_dir, Config), - CaseDir = ?config(case_dir, Config), - {error, _R2} = asn1ct:compile(filename:join(DataDir, "CCSNARG3"), - [Rule, {outdir, CaseDir}|Opts]). - constraint_equivalence(Config) -> constraint_equivalence_abs(Config), test(Config, fun constraint_equivalence/3). @@ -1139,7 +1130,8 @@ test_modules() -> "Opt", "ELDAPv3", "LDAP", - "SeqOptional2"]. + "SeqOptional2", + "CCSNARG3"]. test_OTP_9688(Config) -> PrivDir = ?config(case_dir, Config), diff --git a/lib/asn1/test/asn1_SUITE_data/CCSNARG3.asn b/lib/asn1/test/asn1_SUITE_data/CCSNARG3.asn index 23c1f32ceb..8932238adc 100644 --- a/lib/asn1/test/asn1_SUITE_data/CCSNARG3.asn +++ b/lib/asn1/test/asn1_SUITE_data/CCSNARG3.asn @@ -3,7 +3,7 @@ BEGIN CallCentreServiceNotificationArg ::= SEQUENCE { scriptInformation [0] ScriptToScriptInformation, - eventInformation [1] IMPLICIT EventInformation OPTIONAL + eventInformation [1] EventInformation OPTIONAL } diff --git a/lib/asn1/test/error_SUITE.erl b/lib/asn1/test/error_SUITE.erl index e8f48b6187..399ddc2124 100644 --- a/lib/asn1/test/error_SUITE.erl +++ b/lib/asn1/test/error_SUITE.erl @@ -693,11 +693,24 @@ tags(Config) -> "}\n" "\n" + "Set1 ::= SET {\n" " os [0] OCTET STRING,\n" " bool [0] BOOLEAN\n" "}\n" + "Seq1 ::= SEQUENCE {\n" + "a [0] IMPLICIT Choice OPTIONAL\n" + "}\n" + "Seq2 ::= SEQUENCE {\n" + "a [0] IMPLICIT ANY OPTIONAL\n" + "}\n" + "Choice ::=\n" + "CHOICE {\n" + "a [0] BOOLEAN,\n" + "b [1] INTEGER\n" + "}\n" + "END\n">>}, {error, [{structured_error, @@ -705,7 +718,13 @@ tags(Config) -> {duplicate_tags,[seq1,seq2]}}, {structured_error, {M,24},asn1ct_check, - {duplicate_tags,[bool,os]}} + {duplicate_tags,[bool,os]}}, + {structured_error, + {M,28},asn1ct_check, + {implicit_tag_before,choice}}, + {structured_error, + {M,31},asn1ct_check, + {implicit_tag_before,open_type}} ]} = run(P, Config), ok. |