From cb6a006acbcec5aae7cf94f163f101fb6c9d439a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Gustavsson?= Date: Wed, 1 Oct 2014 09:43:28 +0200 Subject: Check CLASS names for validity Class names must start with an uppercase letter and only contain uppercase letters, digits, or hyphens. The parser will not allow class names that don't start with an uppercase letter, so we don't have to check that. --- lib/asn1/test/error_SUITE.erl | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) (limited to 'lib/asn1/test') diff --git a/lib/asn1/test/error_SUITE.erl b/lib/asn1/test/error_SUITE.erl index 1edd60f7c8..713f80cbee 100644 --- a/lib/asn1/test/error_SUITE.erl +++ b/lib/asn1/test/error_SUITE.erl @@ -19,7 +19,8 @@ -module(error_SUITE). -export([suite/0,all/0,groups/0, - already_defined/1,bitstrings/1,enumerated/1, + already_defined/1,bitstrings/1, + classes/1,enumerated/1, imports/1,instance_of/1,integers/1,objects/1, parameterization/1,values/1]). @@ -34,6 +35,7 @@ groups() -> [{p,parallel(), [already_defined, bitstrings, + classes, enumerated, imports, instance_of, @@ -94,6 +96,18 @@ bitstrings(Config) -> ]} = run(P, Config), ok. +classes(Config) -> + M = 'Classes', + P = {M, + <<"Classes DEFINITIONS AUTOMATIC TAGS ::= BEGIN\n" + " LowerCase ::= CLASS { &id INTEGER UNIQUE }\n" + "END\n">>}, + {error, + [{structured_error,{M,2},asn1ct_check,{illegal_class_name, + 'LowerCase'}} + ]} = run(P, Config), + ok. + enumerated(Config) -> M = 'Enumerated', P = {M, -- cgit v1.2.3