aboutsummaryrefslogtreecommitdiffstats
path: root/lib/asn1/test/asn1_SUITE.erl.src
diff options
context:
space:
mode:
authorAdam Lindberg <[email protected]>2012-02-16 15:51:37 +0100
committerAdam Lindberg <[email protected]>2012-02-29 14:42:22 +0100
commit9ec0a0babace0932d78accf7c10b237a32dc801c (patch)
tree2d4a8e515a13497611631b0ed6cd787341ace27b /lib/asn1/test/asn1_SUITE.erl.src
parent79d2f2878c950584e56258a3c34724d42a91c631 (diff)
downloadotp-9ec0a0babace0932d78accf7c10b237a32dc801c.tar.gz
otp-9ec0a0babace0932d78accf7c10b237a32dc801c.tar.bz2
otp-9ec0a0babace0932d78accf7c10b237a32dc801c.zip
[asn1] Refactor test cases and remove extra suites
Diffstat (limited to 'lib/asn1/test/asn1_SUITE.erl.src')
-rw-r--r--lib/asn1/test/asn1_SUITE.erl.src2347
1 files changed, 0 insertions, 2347 deletions
diff --git a/lib/asn1/test/asn1_SUITE.erl.src b/lib/asn1/test/asn1_SUITE.erl.src
deleted file mode 100644
index d05b7cac90..0000000000
--- a/lib/asn1/test/asn1_SUITE.erl.src
+++ /dev/null
@@ -1,2347 +0,0 @@
-%%
-%% %CopyrightBegin%
-%%
-%% Copyright Ericsson AB 2001-2012. All Rights Reserved.
-%%
-%% The contents of this file are subject to the Erlang Public License,
-%% Version 1.1, (the "License"); you may not use this file except in
-%% compliance with the License. You should have received a copy of the
-%% Erlang Public License along with this software. If not, it can be
-%% retrieved online at http://www.erlang.org/.
-%%
-%% Software distributed under the License is distributed on an "AS IS"
-%% basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
-%% the License for the specific language governing rights and limitations
-%% under the License.
-%%
-%% %CopyrightEnd%
-%%
-%%
-%%% Purpose : Test suite for the ASN.1 application
-
--module(asn1_%BIN%SUITE).
--define(PER, '%PER%').
--define(BER, '%BER%').
--define(ber_nif(Erule, Func),
- case Erule of
- ber_bin_v2 -> Func;
- _ -> ok
- end).
--define(per_optimize(Erule),
- case Erule of
- ber_bin_v2 -> [optimize];
- _ -> []
- end).
--define(per_bit_opt(FuncCall),
- case ?BER of
- ber_bin_v2 -> FuncCall;
- _ -> ok
- end).
--define(uper_bin(FuncCall),
- case ?PER of
- per -> FuncCall;
- _ -> ok
- end).
-
--compile(export_all).
-%%-export([Function/Arity, ...]).
-
--include_lib("test_server/include/test_server.hrl").
-
-%% records used by test-case default
--record('Def1', {bool0,
- bool1 = asn1_DEFAULT,
- bool2 = asn1_DEFAULT,
- bool3 = asn1_DEFAULT}).
-
-suite() -> [{ct_hooks, [ts_install_cth]}].
-
-all() -> [{group, parallel}] ++ common() ++ particular().
-
-groups() ->
- [{compile, parallel([]),
- [c_syntax,
- % Uses 'String'
- {group, [], [c_string_per,
- c_string_ber]},
- c_implicit_before_choice]},
-
- {ber, parallel([]),
- [ber_choiceinseq,
- % Uses 'SOpttest'
- {group, [], [ber_optional,
- ber_optional_keyed_list]},
- ber_other]},
-
- {app_test, [],
- [{asn1_app_test, all}]},
-
- {appup_test, [],
- [{asn1_appup_test, all}]},
-
- {parallel, parallel([]),
- [{group, compile},
- {group, ber},
- % Uses 'Prim'
- {group, [], [testPrim,
- rtUI]},
- % Uses 'P-Record', 'Constraints', 'MEDIA-GATEWAY-CONTROL'...
- {group, [], [parse,
- test_driver_load,
- test_undecoded_rest,
- test_inline,
- specialized_decodes,
- special_decode_performance,
- testMegaco,
- testConstraints,
- testCompactBitString]},
- % Uses 'Def'
- {group, [], [default_ber,
- default_per,
- default_per_opt]},
- per,
- {group, [], [testPrimStrings,
- testInvokeMod]},
- testChoPrim,
- testChoExtension,
- testChoOptional,
- testChoOptionalImplicitTag,
- testChoRecursive,
- testChoTypeRefCho,
- testChoTypeRefPrim,
- testChoTypeRefSeq,
- testChoTypeRefSet,
- testDef,
- testOpt,
- testSeqDefault,
- % Uses 'External'
- {group, [], [testChoExternal,
- testPrimExternal,
- testSeqExtension,
- testSeqExternal,
- testSeqOfExternal,
- testSeqTag,
- testSetExternal,
- testSetOfExternal,
- testSetOfTag,
- testSetTag]},
- testSeqOptional,
- testSeqPrim,
- testSeqTypeRefCho,
- % Uses 'SeqTypeRefPrim'
- {group, [], [testSeqTypeRefPrim,
- testTypeValueNotation]},
- testSeqTypeRefSeq,
- testSeqTypeRefSet,
- % Uses 'SeqOf'
- {group, [], [testSeqOf,
- testSeqOfIndefinite]}, % Uses 'Mvrasn*'
- testSeqOfCho,
- testSetDefault,
- testSetExtension,
- testExtensionAdditionGroup,
- testSeqOfTag,
- testSetOptional,
- testSetPrim,
- testSetTypeRefCho,
- testSetTypeRefPrim,
- testSetTypeRefSeq,
- testSetTypeRefSet,
- testSetOf,
- testSetOfCho,
- testEnumExt,
- value_test,
- testSeq2738,
- % Uses 'Constructed'
- {group, [], [constructed,
- ber_decode_error]},
- % Uses 'MULTIMEDIA-SYSTEM-CONTROL'
- {group, [], [h323test,
- per_GeneralString]},
- % Uses 'SeqSetIndefinite'
- {group, [], [testSeqIndefinite,
- testSetIndefinite]},
- testChoiceIndefinite,
- per_open_type,
- testInfObjectClass,
- testParameterizedInfObj,
- testMergeCompile,
- testobj,
- testDeepTConstr,
- testExport,
- testImport,
- % Uses 'ParamBasic'
- {group, [], [testParamBasic,
- testDER]},
- testMvrasn6,
- testContextSwitchingTypes,
- testOpenTypeImplicitTag,
- duplicate_tags,
- testROSE,
- testINSTANCE_OF,
- testTCAP,
- test_ParamTypeInfObj,
- test_WS_ParamClass,
- test_Defed_ObjectIdentifier,
- testSelectionType,
- testSSLspecs,
- testNortel,
- % Uses 'PKCS7'
- {group, [], [test_modified_x420,
- testX420]},
- testTcapsystem,
- testNBAPsystem,
- test_compile_options,
- testDoubleEllipses,
- test_x691,
- ticket_6143,
- testExtensionAdditionGroup,
- test_OTP_9688]}
- ].
-
-parallel(Options) ->
- case erlang:system_info(smp_support) andalso
- erlang:system_info(schedulers) > 1 of
- true -> [parallel|Options];
- false -> Options
- end.
-
-init_per_suite(Config) ->
- Config.
-
-end_per_suite(_Config) ->
- ok.
-
-init_per_group(_GroupName, Config) ->
- Config.
-
-end_per_group(_GroupName, Config) ->
- Config.
-
-init_per_testcase(Func, Config) ->
- PrivDir = ?config(priv_dir, Config),
- true = code:add_patha(PrivDir),
-
- CaseDir = filename:join([PrivDir, ?MODULE, Func]),
- ok = filelib:ensure_dir(filename:join([CaseDir, dummy_file])),
- true = code:add_patha(CaseDir),
-
- Dog = case Func of
- testX420 -> test_server:timetrap({minutes, 60});
- _ -> test_server:timetrap({minutes, 30})
- end,
- [{case_dir, CaseDir}, {watchdog, Dog}|Config].
-
-end_per_testcase(_Func, Config) ->
- Dog = ?config(watchdog, Config),
- % TODO: Clean up code path?
- test_server:timetrap_cancel(Dog).
-
-
-testPrim(suite) -> [];
-testPrim(Config) ->
- Files = ["Prim", "Real"],
-
- asn1_test_lib:compile_all(Files, Config, [?BER]),
- testPrim_cases(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile_all(Files, Config, [?BER, nif])),
- ?ber_nif(?BER, testPrim_cases(?BER)),
-
- asn1_test_lib:compile_all(Files, Config, [?PER]),
- testPrim_cases(?PER),
-
- ?per_bit_opt(asn1_test_lib:compile_all(Files, Config, [?PER, optimize])),
- ?per_bit_opt(testPrim_cases(?PER)),
-
- ?uper_bin(asn1_test_lib:compile_all(Files, Config, [uper_bin])),
- ?uper_bin(testPrim_cases(uper_bin)),
-
- asn1_test_lib:compile_all(Files, Config, [?PER, optimize]),
- testPrim_cases(?PER).
-
-testPrim_cases(Rules) ->
- testPrim:bool(Rules),
- testPrim:int(Rules),
- testPrim:enum(Rules),
- testPrim:obj_id(Rules),
- testPrim:rel_oid(Rules),
- testPrim:null(Rules),
- testPrim:real(Rules).
-
-
-testCompactBitString(suite) -> [];
-testCompactBitString(Config) ->
- testCompactBitString:compile(Config, [?BER, compact_bit_string]),
- testCompactBitString:compact_bit_string(?BER),
-
- ?ber_nif(?BER, testCompactBitString:compile(Config, [?BER, compact_bit_string, nif])),
- ?ber_nif(?BER, testCompactBitString:compact_bit_string(?BER)),
-
- testCompactBitString:compile(Config, [?PER, compact_bit_string]),
- testCompactBitString:compact_bit_string(?PER),
- testCompactBitString:bit_string_unnamed(?PER),
-
- ?per_bit_opt(testCompactBitString:compile(Config, [?PER, compact_bit_string, optimize])),
- ?per_bit_opt(testCompactBitString:compact_bit_string(?PER)),
- ?per_bit_opt(testCompactBitString:bit_string_unnamed(?PER)),
- ?per_bit_opt(testCompactBitString:ticket_7734(?PER)),
-
- ?uper_bin(testCompactBitString:compile(Config, [uper_bin, compact_bit_string])),
- ?uper_bin(testCompactBitString:compact_bit_string(uper_bin)),
- ?uper_bin(testCompactBitString:bit_string_unnamed(uper_bin)),
-
- testCompactBitString:compile(Config, [?PER, optimize, compact_bit_string]),
- testCompactBitString:compact_bit_string(?PER),
- testCompactBitString:bit_string_unnamed(?PER),
-
- testCompactBitString:otp_4869(?PER).
-
-
-testPrimStrings(suite) -> [];
-testPrimStrings(Config) ->
-
- testPrimStrings:compile(Config, ?BER, []),
- testPrimStrings_cases(?BER),
- testPrimStrings:more_strings(?BER), %% these are not implemented in per yet
- ?ber_nif(?BER, testPrimStrings:compile(Config, ?BER, [nif])),
- ?ber_nif(?BER, testPrimStrings_cases(?BER)),
- ?ber_nif(?BER, testPrimStrings:more_strings(?BER)),
-
- testPrimStrings:compile(Config, ?PER, []),
- testPrimStrings_cases(?PER),
-
- ?per_bit_opt(testPrimStrings:compile(Config, ?PER, [optimize])),
- ?per_bit_opt(testPrimStrings_cases(?PER)),
-
- ?uper_bin(testPrimStrings:compile(Config, uper_bin, [])),
- ?uper_bin(testPrimStrings_cases(uper_bin)),
-
- testPrimStrings:compile(Config, ?PER, [optimize]),
- testPrimStrings_cases(?PER).
-
-testPrimStrings_cases(Rules) ->
- testPrimStrings:bit_string(Rules),
- testPrimStrings:bit_string_unnamed(Rules),
- testPrimStrings:octet_string(Rules),
- testPrimStrings:numeric_string(Rules),
- testPrimStrings:other_strings(Rules),
- testPrimStrings:universal_string(Rules),
- testPrimStrings:bmp_string(Rules),
- testPrimStrings:times(Rules),
- testPrimStrings:utf8_string(Rules).
-
-
-
-testPrimExternal(suite) -> [];
-testPrimExternal(Config) ->
- asn1_test_lib:compile("External", Config, [?BER]),
- asn1_test_lib:compile("PrimExternal", Config, [?BER]),
- testPrimExternal:external(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("External", Config, [?BER, nif])),
- ?ber_nif(?BER, asn1_test_lib:compile("PrimExternal", Config, [?BER, nif])),
- ?ber_nif(?BER, testPrimExternal:external(?BER)),
-
- asn1_test_lib:compile("External", Config, [?PER]),
- asn1_test_lib:compile("PrimExternal", Config, [?PER]),
- testPrimExternal:external(?PER),
-
- ?per_bit_opt(asn1_test_lib:compile("External", Config, [?PER, optimize])),
- ?per_bit_opt(asn1_test_lib:compile("PrimExternal", Config, [?PER, optimize])),
- ?per_bit_opt(testPrimExternal:external(?PER)),
-
- ?uper_bin(asn1_test_lib:compile("External", Config, [uper_bin])),
- ?uper_bin(asn1_test_lib:compile("PrimExternal", Config, [uper_bin])),
- ?uper_bin(testPrimExternal:external(uper_bin)),
-
- asn1_test_lib:compile("External", Config, [?PER, optimize]),
- asn1_test_lib:compile("PrimExternal", Config, [?PER, optimize]),
- testPrimExternal:external(?PER).
-
-
-testChoPrim(suite) -> [];
-testChoPrim(Config) ->
- asn1_test_lib:compile("ChoPrim", Config, [?BER]),
- testChoPrim_cases(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("ChoPrim", Config, [?BER, nif])),
- ?ber_nif(?BER, testChoPrim_cases(?BER)),
-
- asn1_test_lib:compile("ChoPrim", Config, [?PER]),
- testChoPrim_cases(?PER),
-
- ?per_bit_opt(asn1_test_lib:compile("ChoPrim", Config, [?PER, optimize])),
- ?per_bit_opt(testChoPrim_cases(?PER)),
-
- ?uper_bin(asn1_test_lib:compile("ChoPrim", Config, [uper_bin])),
- ?uper_bin(testChoPrim_cases(uper_bin)),
-
- asn1_test_lib:compile("ChoPrim", Config, [?PER, optimize]),
- testChoPrim_cases(?PER).
-
-testChoPrim_cases(Rules) ->
- testChoPrim:bool(Rules),
- testChoPrim:int(Rules).
-
-
-
-testChoExtension(suite) -> [];
-testChoExtension(Config) ->
- asn1_test_lib:compile("ChoExtension", Config, [?BER]),
- testChoExtension_cases(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("ChoExtension", Config, [?BER, nif])),
- ?ber_nif(?BER, testChoExtension_cases(?BER)),
-
- asn1_test_lib:compile("ChoExtension", Config, [?PER]),
- testChoExtension_cases(?PER),
-
- ?per_bit_opt(asn1_test_lib:compile("ChoExtension", Config, [?PER, optimize])),
- ?per_bit_opt(testChoExtension_cases(?PER)),
-
- ?uper_bin(asn1_test_lib:compile("ChoExtension", Config, [uper_bin])),
- ?uper_bin(testChoExtension_cases(uper_bin)),
-
- asn1_test_lib:compile("ChoExtension", Config, [?PER, optimize]),
- testChoExtension_cases(?PER).
-
-testChoExtension_cases(Rules) ->
- testChoExtension:extension(Rules).
-
-
-
-testChoExternal(suite) -> [];
-testChoExternal(Config) ->
- asn1_test_lib:compile("External", Config, [?BER]),
- asn1_test_lib:compile("ChoExternal", Config, [?BER]),
- testChoExternal:external(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("External", Config, [?BER, nif])),
- ?ber_nif(?BER, asn1_test_lib:compile("ChoExternal", Config, [?BER, nif])),
- ?ber_nif(?BER, testChoExternal:external(?BER)),
-
- asn1_test_lib:compile("External", Config, [?PER]),
- asn1_test_lib:compile("ChoExternal", Config, [?PER]),
- testChoExternal:external(?PER),
-
- ?per_bit_opt(asn1_test_lib:compile("External", Config, [?PER, optimize])),
- ?per_bit_opt(asn1_test_lib:compile("ChoExternal", Config, [?PER, optimize])),
- ?per_bit_opt(testChoExternal:external(?PER)),
-
- ?uper_bin(asn1_test_lib:compile("External", Config, [uper_bin])),
- ?uper_bin(asn1_test_lib:compile("ChoExternal", Config, [uper_bin])),
- ?uper_bin(testChoExternal:external(uper_bin)),
-
- asn1_test_lib:compile("External", Config, [?PER, optimize]),
- asn1_test_lib:compile("ChoExternal", Config, [?PER, optimize]),
- testChoExternal:external(?PER).
-
-
-testChoOptional(suite) -> [];
-testChoOptional(Config) ->
-
- testChoOptional:compile(Config, ?BER, []),
- testChoOptional_cases(?BER),
-
- ?ber_nif(?BER, testChoOptional:compile(Config, ?BER, [nif])),
- ?ber_nif(?BER, testChoOptional_cases(?BER)),
-
- testChoOptional:compile(Config, ?PER, []),
- testChoOptional_cases(?PER),
-
- ?per_bit_opt(testChoOptional:compile(Config, ?PER, [optimize])),
- ?per_bit_opt(testChoOptional_cases(?PER)),
-
- ?uper_bin(testChoOptional:compile(Config, uper_bin, [])),
- ?uper_bin(testChoOptional_cases(uper_bin)),
-
- testChoOptional:compile(Config, ?PER, [optimize]),
- testChoOptional_cases(?PER).
-
-testChoOptional_cases(Rules) ->
- testChoOptional:optional(Rules).
-
-testChoOptionalImplicitTag(suite) -> [];
-testChoOptionalImplicitTag(Config) ->
- %% Only meaningful for ?BER
- testChoOptionalImplicitTag:compile(Config, ?BER),
- testChoOptionalImplicitTag:optional(?BER).
-
-
-testChoRecursive(suite) -> [];
-testChoRecursive(Config) ->
-
- testChoRecursive:compile(Config, ?BER, []),
- testChoRecursive_cases(?BER),
-
- ?ber_nif(?BER, testChoRecursive:compile(Config, ?BER, [nif])),
- ?ber_nif(?BER, testChoRecursive_cases(?BER)),
-
- testChoRecursive:compile(Config, ?PER, []),
- testChoRecursive_cases(?PER),
-
- ?per_bit_opt(testChoRecursive:compile(Config, ?PER, [optimize])),
- ?per_bit_opt(testChoRecursive_cases(?PER)),
-
- ?uper_bin(testChoRecursive:compile(Config, uper_bin, [])),
- ?uper_bin(testChoRecursive_cases(uper_bin)),
-
- testChoRecursive:compile(Config, ?PER, [optimize]),
- testChoRecursive_cases(?PER).
-
-testChoRecursive_cases(Rules) ->
- testChoRecursive:recursive(Rules).
-
-
-
-testChoTypeRefCho(suite) -> [];
-testChoTypeRefCho(Config) ->
-
- testChoTypeRefCho:compile(Config, ?BER, []),
- testChoTypeRefCho_cases(?BER),
-
- ?ber_nif(?BER, testChoTypeRefCho:compile(Config, ?BER, [nif])),
- ?ber_nif(?BER, testChoTypeRefCho_cases(?BER)),
-
- testChoTypeRefCho:compile(Config, ?PER, []),
- testChoTypeRefCho_cases(?PER),
-
- ?per_bit_opt(testChoTypeRefCho:compile(Config, ?PER, [optimize])),
- ?per_bit_opt(testChoTypeRefCho_cases(?PER)),
-
- ?uper_bin(testChoTypeRefCho:compile(Config, uper_bin, [])),
- ?uper_bin(testChoTypeRefCho_cases(uper_bin)),
-
- testChoTypeRefCho:compile(Config, ?PER, [optimize]),
- testChoTypeRefCho_cases(?PER).
-
-testChoTypeRefCho_cases(Rules) ->
- testChoTypeRefCho:choice(Rules).
-
-
-
-testChoTypeRefPrim(suite) -> [];
-testChoTypeRefPrim(Config) ->
-
- testChoTypeRefPrim:compile(Config, ?BER, []),
- testChoTypeRefPrim_cases(?BER),
-
- ?ber_nif(?BER, testChoTypeRefPrim:compile(Config, ?BER, [nif])),
- ?ber_nif(?BER, testChoTypeRefPrim_cases(?BER)),
-
- testChoTypeRefPrim:compile(Config, ?PER, []),
- testChoTypeRefPrim_cases(?PER),
-
- ?per_bit_opt(testChoTypeRefPrim:compile(Config, ?PER, [optimize])),
- ?per_bit_opt(testChoTypeRefPrim_cases(?PER)),
-
- ?uper_bin(testChoTypeRefPrim:compile(Config, uper_bin, [])),
- ?uper_bin(testChoTypeRefPrim_cases(uper_bin)),
-
- testChoTypeRefPrim:compile(Config, ?PER, [optimize]),
- testChoTypeRefPrim_cases(?PER).
-
-testChoTypeRefPrim_cases(Rules) ->
- testChoTypeRefPrim:prim(Rules).
-
-
-
-testChoTypeRefSeq(suite) -> [];
-testChoTypeRefSeq(Config) ->
-
- testChoTypeRefSeq:compile(Config, ?BER, []),
- testChoTypeRefSeq_cases(?BER),
-
- ?ber_nif(?BER, testChoTypeRefSeq:compile(Config, ?BER, [nif])),
- ?ber_nif(?BER, testChoTypeRefSeq_cases(?BER)),
-
- testChoTypeRefSeq:compile(Config, ?PER, []),
- testChoTypeRefSeq_cases(?PER),
-
- ?per_bit_opt(testChoTypeRefSeq:compile(Config, ?PER, [optimize])),
- ?per_bit_opt(testChoTypeRefSeq_cases(?PER)),
-
- ?uper_bin(testChoTypeRefSeq:compile(Config, uper_bin, [])),
- ?uper_bin(testChoTypeRefSeq_cases(uper_bin)),
-
- testChoTypeRefSeq:compile(Config, ?PER, [optimize]),
- testChoTypeRefSeq_cases(?PER).
-
-testChoTypeRefSeq_cases(Rules) ->
- testChoTypeRefSeq:seq(Rules).
-
-
-
-testChoTypeRefSet(suite) -> [];
-testChoTypeRefSet(Config) ->
-
- testChoTypeRefSet:compile(Config, ?BER, []),
- testChoTypeRefSet_cases(?BER),
-
- ?ber_nif(?BER, testChoTypeRefSet:compile(Config, ?BER, [nif])),
- ?ber_nif(?BER, testChoTypeRefSet_cases(?BER)),
-
- testChoTypeRefSet:compile(Config, ?PER, []),
- testChoTypeRefSet_cases(?PER),
-
- ?per_bit_opt(testChoTypeRefSet:compile(Config, ?PER, [optimize])),
- ?per_bit_opt(testChoTypeRefSet_cases(?PER)),
-
- ?uper_bin(testChoTypeRefSet:compile(Config, uper_bin, [])),
- ?uper_bin(testChoTypeRefSet_cases(uper_bin)),
-
- testChoTypeRefSet:compile(Config, ?PER, [optimize]),
- testChoTypeRefSet_cases(?PER).
-
-testChoTypeRefSet_cases(Rules) ->
- testChoTypeRefSet:set(Rules).
-
-
-
-testDef(suite) -> [];
-testDef(Config) ->
-
- testDef:compile(Config, ?BER, []),
- testDef_cases(?BER),
-
- ?ber_nif(?BER, testDef:compile(Config, ?BER, [nif])),
- ?ber_nif(?BER, testDef_cases(?BER)),
-
- testDef:compile(Config, ?PER, []),
- testDef_cases(?PER),
-
- ?per_bit_opt(testDef:compile(Config, ?PER, [optimize])),
- ?per_bit_opt(testDef_cases(?PER)),
-
- ?uper_bin(testDef:compile(Config, uper_bin, [])),
- ?uper_bin(testDef_cases(uper_bin)),
-
- testDef:compile(Config, ?PER, [optimize]),
- testDef_cases(?PER).
-
-testDef_cases(Rules) ->
- testDef:main(Rules).
-
-
-
-testOpt(suite) -> [];
-testOpt(Config) ->
-
- testOpt:compile(Config, ?BER),
- testOpt_cases(?BER),
-
- testOpt:compile(Config, ?PER),
- testOpt_cases(?PER).
-
-testOpt_cases(Rules) ->
- testOpt:main(Rules).
-
-
-testEnumExt(suite) -> [];
-testEnumExt(Config) ->
-
- asn1_test_lib:compile("EnumExt", Config, [?BER]),
- testEnumExt:main(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("EnumExt", Config, [?BER, nif])),
- ?ber_nif(?BER, testEnumExt:main(?BER)),
-
- asn1_test_lib:compile("EnumExt", Config, [?PER]),
- testEnumExt:main(?PER),
-
- ?per_bit_opt(asn1_test_lib:compile("EnumExt", Config, [?PER, optimize])),
- ?per_bit_opt(testEnumExt:main(?PER)),
-
- ?uper_bin(asn1_test_lib:compile("EnumExt", Config, [uper_bin])),
- ?uper_bin(testEnumExt:main(uper_bin)),
-
- asn1_test_lib:compile("EnumExt", Config, [?PER, optimize]),
- testEnumExt:main(?PER).
-
-testSeqDefault(doc) -> ["Test of OTP-2523 ENUMERATED with extensionmark."];
-testSeqDefault(suite) -> [];
-testSeqDefault(Config) ->
- asn1_test_lib:compile("SeqDefault", Config, [?BER]),
- testSeqDefault_cases(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("SeqDefault", Config, [?BER, nif])),
- ?ber_nif(?BER, testSeqDefault_cases(?BER)),
-
- asn1_test_lib:compile("SeqDefault", Config, [?PER]),
- testSeqDefault_cases(?PER),
-
- ?per_bit_opt(asn1_test_lib:compile("SeqDefault", Config, [?PER, optimize])),
- ?per_bit_opt(testSeqDefault_cases(?PER)),
-
- ?uper_bin(asn1_test_lib:compile("SeqDefault", Config, [uper_bin])),
- ?uper_bin(testSeqDefault_cases(uper_bin)),
-
- asn1_test_lib:compile("SeqDefault", Config, [?PER, optimize]),
- testSeqDefault_cases(?PER).
-
-testSeqDefault_cases(Rules) ->
- testSeqDefault:main(Rules).
-
-
-
-testSeqExtension(suite) -> [];
-testSeqExtension(Config) ->
- asn1_test_lib:compile("External", Config, [?BER]),
- asn1_test_lib:compile("SeqExtension", Config, [?BER]),
- testSeqExtension_cases(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("External", Config, [?BER, nif])),
- ?ber_nif(?BER, asn1_test_lib:compile("SeqExtension", Config, [?BER, nif])),
- ?ber_nif(?BER, testSeqExtension_cases(?BER)).
-
-testSeqExtension_cases(Rules) ->
- testSeqExtension:main(Rules).
-
-
-
-testSeqExternal(suite) -> [];
-testSeqExternal(Config) ->
- asn1_test_lib:compile("External", Config, [?BER]),
- asn1_test_lib:compile("SeqExternal", Config, [?BER]),
- testSeqExternal_cases(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("External", Config, [?BER, nif])),
- ?ber_nif(?BER, asn1_test_lib:compile("SeqExternal", Config, [?BER, nif])),
- ?ber_nif(?BER, testSeqExternal_cases(?BER)).
-
-testSeqExternal_cases(Rules) ->
- testSeqExternal:main(Rules).
-
-
-testSeqOptional(suite) -> [];
-testSeqOptional(Config) ->
-
- testSeqOptional:compile(Config, ?BER, []),
- testSeqOptional_cases(?BER),
-
- ?ber_nif(?BER, testSeqOptional:compile(Config, ?BER, [nif])),
- ?ber_nif(?BER, testSeqOptional_cases(?BER)),
-
- testSeqOptional:compile(Config, ?PER, []),
- testSeqOptional_cases(?PER),
-
- ?per_bit_opt(testSeqOptional:compile(Config, ?PER, [optimize])),
- ?per_bit_opt(testSeqOptional_cases(?PER)),
-
- ?uper_bin(testSeqOptional:compile(Config, uper_bin, [])),
- ?uper_bin(testSeqOptional_cases(uper_bin)),
-
- testSeqOptional:compile(Config, ?PER, [optimize]),
- testSeqOptional_cases(?PER).
-
-testSeqOptional_cases(Rules) ->
- testSeqOptional:main(Rules).
-
-
-
-testSeqPrim(suite) -> [];
-testSeqPrim(Config) ->
-
- testSeqPrim:compile(Config, ?BER, []),
- testSeqPrim_cases(?BER),
-
- ?ber_nif(?BER, testSeqPrim:compile(Config, ?BER, [nif])),
- ?ber_nif(?BER, testSeqPrim_cases(?BER)),
-
- testSeqPrim:compile(Config, ?PER, []),
- testSeqPrim_cases(?PER),
-
- ?per_bit_opt(testSeqPrim:compile(Config, ?PER, [optimize])),
- ?per_bit_opt(testSeqPrim_cases(?PER)),
-
- ?uper_bin(testSeqPrim:compile(Config, uper_bin, [])),
- ?uper_bin(testSeqPrim_cases(uper_bin)),
-
- testSeqPrim:compile(Config, ?PER, [optimize]),
- testSeqPrim_cases(?PER).
-
-testSeqPrim_cases(Rules) ->
- testSeqPrim:main(Rules).
-
-
-testSeq2738(doc) -> ["Test of OTP-2738 Detect corrupt optional component."];
-testSeq2738(suite) -> [];
-testSeq2738(Config) ->
- asn1_test_lib:compile("Seq2738", Config, [?BER]),
- testSeq2738_cases(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("Seq2738", Config, [?BER, nif])),
- ?ber_nif(?BER, testSeq2738_cases(?BER)),
-
- asn1_test_lib:compile("Seq2738", Config, [?PER]),
- testSeq2738_cases(?PER),
-
- ?per_bit_opt(asn1_test_lib:compile("Seq2738", Config, [?PER, optimize])),
- ?per_bit_opt(testSeq2738_cases(?PER)),
-
- ?uper_bin(asn1_test_lib:compile("Seq2738", Config, [uper_bin])),
- ?uper_bin(testSeq2738_cases(uper_bin)),
-
- asn1_test_lib:compile("Seq2738", Config, [?PER, optimize]),
- testSeq2738_cases(?PER).
-
-testSeq2738_cases(Rules) ->
- testSeq2738:main(Rules).
-
-
-testSeqTag(suite) -> [];
-testSeqTag(Config) ->
- asn1_test_lib:compile_all(["External", "SeqTag"], Config, [?BER]),
- testSeqTag_cases(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile_all(["External", "SeqTag"], Config, [?BER, nif])),
- ?ber_nif(?BER, testSeqTag_cases(?BER)),
-
- asn1_test_lib:compile_all(["External", "SeqTag"], Config, [?PER]),
- testSeqTag_cases(?PER),
-
- ?per_bit_opt(asn1_test_lib:compile_all(["External", "SeqTag"], Config, [?PER, optimize])),
- ?per_bit_opt(testSeqTag_cases(?PER)),
-
- ?uper_bin(asn1_test_lib:compile_all(["External", "SeqTag"], Config, [uper_bin])),
- ?uper_bin(testSeqTag_cases(uper_bin)),
-
- asn1_test_lib:compile_all(["External", "SeqTag"], Config, [?PER, optimize]),
- testSeqTag_cases(?PER).
-
-testSeqTag_cases(Rules) ->
- testSeqTag:main(Rules).
-
-
-
-
-testSeqTypeRefCho(suite) -> [];
-testSeqTypeRefCho(Config) ->
-
- testSeqTypeRefCho:compile(Config, ?BER, []),
- testSeqTypeRefCho_cases(?BER),
-
- ?ber_nif(?BER, testSeqTypeRefCho:compile(Config, ?BER, [nif])),
- ?ber_nif(?BER, testSeqTypeRefCho_cases(?BER)),
-
- testSeqTypeRefCho:compile(Config, ?PER, []),
- testSeqTypeRefCho_cases(?PER),
-
- ?per_bit_opt(testSeqTypeRefCho:compile(Config, ?PER, [optimize])),
- ?per_bit_opt(testSeqTypeRefCho_cases(?PER)),
-
- ?uper_bin(testSeqTypeRefCho:compile(Config, uper_bin, [])),
- ?uper_bin(testSeqTypeRefCho_cases(uper_bin)),
-
- testSeqTypeRefCho:compile(Config, ?PER, [optimize]),
- testSeqTypeRefCho_cases(?PER).
-
-testSeqTypeRefCho_cases(Rules) ->
- testSeqTypeRefCho:main(Rules).
-
-
-
-testSeqTypeRefPrim(suite) -> [];
-testSeqTypeRefPrim(Config) ->
- asn1_test_lib:compile("SeqTypeRefPrim", Config, [?BER]),
- testSeqTypeRefPrim_cases(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("SeqTypeRefPrim", Config, [?BER, nif])),
- ?ber_nif(?BER, testSeqTypeRefPrim_cases(?BER)),
-
- asn1_test_lib:compile("SeqTypeRefPrim", Config, [?PER]),
- testSeqTypeRefPrim_cases(?PER),
-
- ?per_bit_opt(asn1_test_lib:compile("SeqTypeRefPrim", Config, [?PER, optimize])),
- ?per_bit_opt(testSeqTypeRefPrim_cases(?PER)),
-
- ?uper_bin(asn1_test_lib:compile("SeqTypeRefPrim", Config, [uper_bin])),
- ?uper_bin(testSeqTypeRefPrim_cases(uper_bin)),
-
- asn1_test_lib:compile("SeqTypeRefPrim", Config, [?PER, optimize]),
- testSeqTypeRefPrim_cases(?PER).
-
-testSeqTypeRefPrim_cases(Rules) ->
- testSeqTypeRefPrim:main(Rules).
-
-
-
-testSeqTypeRefSeq(suite) -> [];
-testSeqTypeRefSeq(Config) ->
- asn1_test_lib:compile("SeqTypeRefSeq", Config, [?BER]),
- testSeqTypeRefSeq_cases(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("SeqTypeRefSeq", Config, [?BER, nif])),
- ?ber_nif(?BER, testSeqTypeRefSeq_cases(?BER)),
-
- asn1_test_lib:compile("SeqTypeRefSeq", Config, [?PER]),
- testSeqTypeRefSeq_cases(?PER),
-
- ?per_bit_opt(asn1_test_lib:compile("SeqTypeRefSeq", Config, [?PER, optimize])),
- ?per_bit_opt(testSeqTypeRefSeq_cases(?PER)),
-
- ?uper_bin(asn1_test_lib:compile("SeqTypeRefSeq", Config, [uper_bin])),
- ?uper_bin(testSeqTypeRefSeq_cases(uper_bin)),
-
- asn1_test_lib:compile("SeqTypeRefSeq", Config, [?PER, optimize]),
- testSeqTypeRefSeq_cases(?PER).
-
-testSeqTypeRefSeq_cases(Rules) ->
- testSeqTypeRefSeq:main(Rules).
-
-
-
-testSeqTypeRefSet(suite) -> [];
-testSeqTypeRefSet(Config) ->
- asn1_test_lib:compile("SeqTypeRefSet", Config, [?BER]),
- testSeqTypeRefSet_cases(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("SeqTypeRefSet", Config, [?BER, nif])),
- ?ber_nif(?BER, testSeqTypeRefSet_cases(?BER)),
-
- asn1_test_lib:compile("SeqTypeRefSet", Config, [?PER]),
- testSeqTypeRefSet_cases(?PER),
-
- ?per_bit_opt(asn1_test_lib:compile("SeqTypeRefSet", Config, [?PER, optimize])),
- ?per_bit_opt(testSeqTypeRefSet_cases(?PER)),
-
- ?uper_bin(asn1_test_lib:compile("SeqTypeRefSet", Config, [uper_bin])),
- ?uper_bin(testSeqTypeRefSet_cases(uper_bin)),
-
- asn1_test_lib:compile("SeqTypeRefSet", Config, [?PER, optimize]),
- testSeqTypeRefSet_cases(?PER).
-
-testSeqTypeRefSet_cases(Rules) ->
- testSeqTypeRefSet:main(Rules).
-
-
-
-
-testSeqOf(suite) -> [];
-testSeqOf(Config) ->
- testSeqOf:compile(Config, ?BER, []),
- testSeqOf_cases(?BER),
-
- ?ber_nif(?BER, testSeqOf:compile(Config, ?BER, [nif])),
- ?ber_nif(?BER, testSeqOf_cases(?BER)),
-
- testSeqOf:compile(Config, ?PER, []),
- testSeqOf_cases(?PER),
-
- ?per_bit_opt(testSeqOf:compile(Config, ?PER, [optimize])),
- ?per_bit_opt(testSeqOf_cases(?PER)),
-
- ?uper_bin(testSeqOf:compile(Config, uper_bin, [])),
- ?uper_bin(testSeqOf_cases(uper_bin)),
-
- testSeqOf:compile(Config, ?PER, [optimize]),
- testSeqOf_cases(?PER).
-
-testSeqOf_cases(Rules) ->
- testSeqOf:main(Rules).
-
-
-
-
-testSeqOfCho(suite) -> [];
-testSeqOfCho(Config) ->
- testSeqOfCho:compile(Config, ?BER, []),
- testSeqOfCho_cases(?BER),
-
- ?ber_nif(?BER, testSeqOfCho:compile(Config, ?BER, [nif])),
- ?ber_nif(?BER, testSeqOfCho_cases(?BER)),
-
- testSeqOfCho:compile(Config, ?PER, []),
- testSeqOfCho_cases(?PER),
-
- ?per_bit_opt(testSeqOfCho:compile(Config, ?PER, [optimize])),
- ?per_bit_opt(testSeqOfCho_cases(?PER)),
-
- ?uper_bin(testSeqOfCho:compile(Config, uper_bin, [])),
- ?uper_bin(testSeqOfCho_cases(uper_bin)),
-
- testSeqOfCho:compile(Config, ?PER, [optimize]),
- testSeqOfCho_cases(?PER).
-
-testSeqOfIndefinite(suite) -> [];
-testSeqOfIndefinite(Config) ->
- %% Mvrasn (11-21)-4
- testSeqOfIndefinite:compile(Config, ?BER, []),
- testSeqOfIndefinite:main(),
-
- ?ber_nif(?BER, testSeqOfIndefinite:compile(Config, ?BER, [nif])),
- ?ber_nif(?BER, testSeqOfIndefinite:main()).
-
-testSeqOfCho_cases(Rules) ->
- testSeqOfCho:main(Rules).
-
-
-testSeqOfExternal(suite) -> [];
-testSeqOfExternal(Config) ->
- asn1_test_lib:compile("External", Config, [?BER]),
- testSeqOfExternal:compile(Config, ?BER, []),
- testSeqOfExternal_cases(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("External", Config, [?BER, nif])),
- ?ber_nif(?BER, testSeqOfExternal:compile(Config, ?BER, [nif])),
- ?ber_nif(?BER, testSeqOfExternal_cases(?BER)),
-
- asn1_test_lib:compile("External", Config, [?PER]),
- testSeqOfExternal:compile(Config, ?PER, []),
- testSeqOfExternal_cases(?PER),
-
- ?per_bit_opt(asn1_test_lib:compile("External", Config, [?PER, optimize])),
- ?per_bit_opt(testSeqOfExternal:compile(Config, ?PER, [optimize])),
- ?per_bit_opt(testSeqOfExternal_cases(?PER)),
-
- ?uper_bin(asn1_test_lib:compile("External", Config, [uper_bin])),
- ?uper_bin(testSeqOfExternal:compile(Config, uper_bin, [])),
- ?uper_bin(testSeqOfExternal_cases(uper_bin)),
-
- asn1_test_lib:compile("External", Config, [?PER, optimize]),
- testSeqOfExternal:compile(Config, ?PER, [optimize]),
- testSeqOfExternal_cases(?PER).
-
-testSeqOfExternal_cases(Rules) ->
- testSeqOfExternal:main(Rules).
-
-
-
-testSeqOfTag(suite) -> [];
-testSeqOfTag(Config) ->
- asn1_test_lib:compile("External", Config, [?BER]),
- testSeqOfTag:compile(Config, ?BER, []),
- testSeqOfTag_cases(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("External", Config, [?BER, nif])),
- ?ber_nif(?BER, testSeqOfTag:compile(Config, ?BER, [nif])),
- ?ber_nif(?BER, testSeqOfTag_cases(?BER)),
-
- asn1_test_lib:compile("External", Config, [?PER]),
- testSeqOfTag:compile(Config, ?PER, []),
- testSeqOfTag_cases(?PER),
-
- ?per_bit_opt(asn1_test_lib:compile("External", Config, [?PER, optimize])),
- ?per_bit_opt(testSeqOfTag:compile(Config, ?PER, [optimize])),
- ?per_bit_opt(testSeqOfTag_cases(?PER)),
-
- ?uper_bin(asn1_test_lib:compile("External", Config, [uper_bin])),
- ?uper_bin(testSeqOfTag:compile(Config, uper_bin, [])),
- ?uper_bin(testSeqOfTag_cases(uper_bin)),
-
- asn1_test_lib:compile("External", Config, [?PER, optimize]),
- testSeqOfTag:compile(Config, ?PER, [optimize]),
- testSeqOfTag_cases(?PER).
-
-testSeqOfTag_cases(Rules) ->
- testSeqOfTag:main(Rules).
-
-
-
-
-testSetDefault(suite) -> [];
-testSetDefault(Config) ->
- asn1_test_lib:compile("SetDefault", Config, [?BER]),
- testSetDefault_cases(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("SetDefault", Config, [?BER, nif])),
- ?ber_nif(?BER, testSetDefault_cases(?BER)),
-
- asn1_test_lib:compile("SetDefault", Config, [?PER]),
- testSetDefault_cases(?PER),
-
- ?per_bit_opt(asn1_test_lib:compile("SetDefault", Config, [?PER, optimize])),
- ?per_bit_opt(testSetDefault_cases(?PER)),
-
- ?uper_bin(asn1_test_lib:compile("SetDefault", Config, [uper_bin])),
- ?uper_bin(testSetDefault_cases(uper_bin)),
-
- asn1_test_lib:compile("SetDefault", Config, [?PER, optimize]),
- testSetDefault_cases(?PER).
-
-testSetDefault_cases(Rules) ->
- testSetDefault:main(Rules).
-
-
-testParamBasic(suite) -> [];
-testParamBasic(Config) ->
- testParamBasic:compile(Config, ?BER, []),
- testParamBasic_cases(?BER),
-
- ?ber_nif(?BER, testParamBasic:compile(Config, ?BER, [nif])),
- ?ber_nif(?BER, testParamBasic_cases(?BER)),
-
- testParamBasic:compile(Config, ?PER, []),
- testParamBasic_cases(?PER),
-
- ?per_bit_opt(testParamBasic:compile(Config, ?PER, [optimize])),
- ?per_bit_opt(testParamBasic_cases(?PER)),
-
- ?uper_bin(testParamBasic:compile(Config, uper_bin, [])),
- ?uper_bin(testParamBasic_cases(uper_bin)),
-
- testParamBasic:compile(Config, ?PER, [optimize]),
- testParamBasic_cases(?PER).
-
-
-testParamBasic_cases(Rules) ->
- testParamBasic:main(Rules).
-
-testSetExtension(suite) -> [];
-testSetExtension(Config) ->
- asn1_test_lib:compile("External", Config, [?BER]),
- asn1_test_lib:compile("SetExtension", Config, [?BER]),
- testSetExtension_cases(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("External", Config, [?BER, nif])),
- ?ber_nif(?BER, asn1_test_lib:compile("SetExtension", Config, [?BER, nif])),
- ?ber_nif(?BER, testSetExtension_cases(?BER)).
-
-testSetExtension_cases(Rules) ->
- testSetExtension:main(Rules).
-
-
-testSetExternal(suite) -> [];
-testSetExternal(Config) ->
- asn1_test_lib:compile("External", Config, [?BER]),
- testSetExternal:compile(Config, ?BER, []),
- testSetExternal_cases(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("External", Config, [?BER, nif])),
- ?ber_nif(?BER, testSetExternal:compile(Config, ?BER, [nif])),
- ?ber_nif(?BER, testSetExternal_cases(?BER)).
-
-testSetExternal_cases(Rules) ->
- testSetExternal:main(Rules).
-
-
-testSetOptional(suite) -> [];
-testSetOptional(Config) ->
- testSetOptional:compile(Config, ?BER, []),
- testSetOptional_cases(?BER),
-
- ?ber_nif(?BER, testSetOptional:compile(Config, ?BER, [nif])),
- ?ber_nif(?BER, testSetOptional_cases(?BER)),
-
- testSetOptional:compile(Config, ?PER, []),
- testSetOptional_cases(?PER),
-
- ?per_bit_opt(testSetOptional:compile(Config, ?PER, [optimize])),
- ?per_bit_opt(testSetOptional_cases(?PER)),
-
- ?uper_bin(testSetOptional:compile(Config, uper_bin, [])),
- ?uper_bin(testSetOptional_cases(uper_bin)),
-
- testSetOptional:compile(Config, ?PER, [optimize]),
- testSetOptional_cases(?PER).
-
-testSetOptional_cases(Rules) ->
- ok = testSetOptional:ticket_7533(Rules),
- ok = testSetOptional:main(Rules).
-
-
-
-
-testSetPrim(suite) -> [];
-testSetPrim(Config) ->
- testSetPrim:compile(Config, ?BER, []),
- testSetPrim_cases(?BER),
-
- ?ber_nif(?BER, testSetPrim:compile(Config, ?BER, [nif])),
- ?ber_nif(?BER, testSetPrim_cases(?BER)),
-
- testSetPrim:compile(Config, ?PER, []),
- testSetPrim_cases(?PER),
-
- ?per_bit_opt(testSetPrim:compile(Config, ?PER, [optimize])),
- ?per_bit_opt(testSetPrim_cases(?PER)),
-
- ?uper_bin(testSetPrim:compile(Config, uper_bin, [])),
- ?uper_bin(testSetPrim_cases(uper_bin)),
-
- testSetPrim:compile(Config, ?PER, [optimize]),
- testSetPrim_cases(?PER).
-
-testSetPrim_cases(Rules) ->
- testSetPrim:main(Rules).
-
-
-
-testSetTag(suite) -> [];
-testSetTag(Config) ->
- asn1_test_lib:compile("External", Config, [?BER]),
- testSetTag:compile(Config, ?BER, []),
- testSetTag_cases(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("External", Config, [?BER, nif])),
- ?ber_nif(?BER, testSetTag:compile(Config, ?BER, [nif])),
- ?ber_nif(?BER, testSetTag_cases(?BER)),
-
- asn1_test_lib:compile("External", Config, [?PER]),
- testSetTag:compile(Config, ?PER, []),
- testSetTag_cases(?PER),
-
- ?per_bit_opt(asn1_test_lib:compile("External", Config, [?PER, optimize])),
- ?per_bit_opt(testSetTag:compile(Config, ?PER, [optimize])),
- ?per_bit_opt(testSetTag_cases(?PER)),
-
- ?uper_bin(asn1_test_lib:compile("External", Config, [uper_bin])),
- ?uper_bin(testSetTag:compile(Config, uper_bin, [])),
- ?uper_bin(testSetTag_cases(uper_bin)),
-
- asn1_test_lib:compile("External", Config, [?PER, optimize]),
- testSetTag:compile(Config, ?PER, [optimize]),
- testSetTag_cases(?PER).
-
-testSetTag_cases(Rules) ->
- testSetTag:main(Rules).
-
-
-
-testSetTypeRefCho(suite) -> [];
-testSetTypeRefCho(Config) ->
- asn1_test_lib:compile("SetTypeRefCho", Config, [?BER]),
- testSetTypeRefCho_cases(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("SetTypeRefCho", Config, [?BER, nif])),
- ?ber_nif(?BER, testSetTypeRefCho_cases(?BER)),
-
- asn1_test_lib:compile("SetTypeRefCho", Config, [?PER]),
- testSetTypeRefCho_cases(?PER),
-
- ?per_bit_opt(asn1_test_lib:compile("SetTypeRefCho", Config, [?PER, optimize])),
- ?per_bit_opt(testSetTypeRefCho_cases(?PER)),
-
- ?uper_bin(asn1_test_lib:compile("SetTypeRefCho", Config, [uper_bin])),
- ?uper_bin(testSetTypeRefCho_cases(uper_bin)),
-
- asn1_test_lib:compile("SetTypeRefCho", Config, [?PER, optimize]),
- testSetTypeRefCho_cases(?PER).
-
-testSetTypeRefCho_cases(Rules) ->
- testSetTypeRefCho:main(Rules).
-
-
-
-testSetTypeRefPrim(suite) -> [];
-testSetTypeRefPrim(Config) ->
- asn1_test_lib:compile("SetTypeRefPrim", Config, [?BER]),
- testSetTypeRefPrim_cases(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("SetTypeRefPrim", Config, [?BER, nif])),
- ?ber_nif(?BER, testSetTypeRefPrim_cases(?BER)),
-
- asn1_test_lib:compile("SetTypeRefPrim", Config, [?PER]),
- testSetTypeRefPrim_cases(?PER),
-
- ?per_bit_opt(asn1_test_lib:compile("SetTypeRefPrim", Config, [?PER, optimize])),
- ?per_bit_opt(testSetTypeRefPrim_cases(?PER)),
-
- ?uper_bin(asn1_test_lib:compile("SetTypeRefPrim", Config, [uper_bin])),
- ?uper_bin(testSetTypeRefPrim_cases(uper_bin)),
-
- asn1_test_lib:compile("SetTypeRefPrim", Config, [?PER, optimize]),
- testSetTypeRefPrim_cases(?PER).
-
-testSetTypeRefPrim_cases(Rules) ->
- testSetTypeRefPrim:main(Rules).
-
-
-
-testSetTypeRefSeq(suite) -> [];
-testSetTypeRefSeq(Config) ->
- asn1_test_lib:compile("SetTypeRefSeq", Config, [?BER]),
- testSetTypeRefSeq_cases(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("SetTypeRefSeq", Config, [?BER, nif])),
- ?ber_nif(?BER, testSetTypeRefSeq_cases(?BER)),
-
- asn1_test_lib:compile("SetTypeRefSeq", Config, [?PER]),
- testSetTypeRefSeq_cases(?PER),
-
- ?per_bit_opt(asn1_test_lib:compile("SetTypeRefSeq", Config, [?PER, optimize])),
- ?per_bit_opt(testSetTypeRefSeq_cases(?PER)),
-
- ?uper_bin(asn1_test_lib:compile("SetTypeRefSeq", Config, [uper_bin])),
- ?uper_bin(testSetTypeRefSeq_cases(uper_bin)),
-
- asn1_test_lib:compile("SetTypeRefSeq", Config, [?PER, optimize]),
- testSetTypeRefSeq_cases(?PER).
-
-testSetTypeRefSeq_cases(Rules) ->
- testSetTypeRefSeq:main(Rules).
-
-
-
-testSetTypeRefSet(suite) -> [];
-testSetTypeRefSet(Config) ->
- asn1_test_lib:compile("SetTypeRefSet", Config, [?BER]),
- testSetTypeRefSet_cases(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("SetTypeRefSet", Config, [?BER, nif])),
- ?ber_nif(?BER, testSetTypeRefSet_cases(?BER)),
-
- asn1_test_lib:compile("SetTypeRefSet", Config, [?PER]),
- testSetTypeRefSet_cases(?PER),
-
- ?per_bit_opt(asn1_test_lib:compile("SetTypeRefSet", Config, [?PER, optimize])),
- ?per_bit_opt(testSetTypeRefSet_cases(?PER)),
-
- ?uper_bin(asn1_test_lib:compile("SetTypeRefSet", Config, [uper_bin])),
- ?uper_bin(testSetTypeRefSet_cases(uper_bin)),
-
- asn1_test_lib:compile("SetTypeRefSet", Config, [?PER, optimize]),
- testSetTypeRefSet_cases(?PER).
-
-testSetTypeRefSet_cases(Rules) ->
- testSetTypeRefSet:main(Rules).
-
-
-
-testSetOf(suite) -> [];
-testSetOf(Config) ->
- asn1_test_lib:compile("SetOf", Config, [?BER]),
- testSetOf_cases(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("SetOf", Config, [?BER, nif])),
- ?ber_nif(?BER, testSetOf_cases(?BER)),
-
- asn1_test_lib:compile("SetOf", Config, [?PER]),
- testSetOf_cases(?PER),
-
- ?per_bit_opt(asn1_test_lib:compile("SetOf", Config, [?PER, optimize])),
- ?per_bit_opt(testSetOf_cases(?PER)),
-
- ?uper_bin(asn1_test_lib:compile("SetOf", Config, [uper_bin])),
- ?uper_bin(testSetOf_cases(uper_bin)),
-
- asn1_test_lib:compile("SetOf", Config, [?PER, optimize]),
- testSetOf_cases(?PER).
-
-testSetOf_cases(Rules) ->
- testSetOf:main(Rules).
-
-
-
-testSetOfCho(suite) -> [];
-testSetOfCho(Config) ->
- asn1_test_lib:compile("SetOfCho", Config, [?BER]),
- testSetOfCho_cases(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("SetOfCho", Config, [?BER, nif])),
- ?ber_nif(?BER, testSetOfCho_cases(?BER)),
-
- asn1_test_lib:compile("SetOfCho", Config, [?PER]),
- testSetOfCho_cases(?PER),
-
- ?per_bit_opt(asn1_test_lib:compile("SetOfCho", Config, [?PER, optimize])),
- ?per_bit_opt(testSetOfCho_cases(?PER)),
-
- ?uper_bin(asn1_test_lib:compile("SetOfCho", Config, [uper_bin])),
- ?uper_bin(testSetOfCho_cases(uper_bin)),
-
- asn1_test_lib:compile("SetOfCho", Config, [?PER, optimize]),
- testSetOfCho_cases(?PER).
-
-testSetOfCho_cases(Rules) ->
- testSetOfCho:main(Rules).
-
-
-testSetOfExternal(suite) -> [];
-testSetOfExternal(Config) ->
- asn1_test_lib:compile("External", Config, [?BER]),
- asn1_test_lib:compile("SetOfExternal", Config, [?BER]),
- testSetOfExternal_cases(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("External", Config, [?BER, nif])),
- ?ber_nif(?BER, asn1_test_lib:compile("SetOfExternal", Config, [?BER, nif])),
- ?ber_nif(?BER, testSetOfExternal_cases(?BER)),
-
- asn1_test_lib:compile("External", Config, [?PER]),
- asn1_test_lib:compile("SetOfExternal", Config, [?PER]),
- testSetOfExternal_cases(?PER),
-
- ?per_bit_opt(asn1_test_lib:compile("External", Config, [?PER, optimize])),
- ?per_bit_opt(asn1_test_lib:compile("SetOfExternal", Config, [?PER, optimize])),
- ?per_bit_opt(testSetOfExternal_cases(?PER)),
-
- ?uper_bin(asn1_test_lib:compile("External", Config, [uper_bin])),
- ?uper_bin(asn1_test_lib:compile("SetOfExternal", Config, [uper_bin])),
- ?uper_bin(testSetOfExternal_cases(uper_bin)),
-
- asn1_test_lib:compile("External", Config, [?PER, optimize]),
- asn1_test_lib:compile("SetOfExternal", Config, [?PER, optimize]),
- testSetOfExternal_cases(?PER).
-
-testSetOfExternal_cases(Rules) ->
- testSetOfExternal:main(Rules).
-
-
-
-
-testSetOfTag(suite) -> [];
-testSetOfTag(Config) ->
- asn1_test_lib:compile("External", Config, [?BER]),
- asn1_test_lib:compile("SetOfTag", Config, [?BER]),
- testSetOfTag_cases(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("External", Config, [?BER, nif])),
- ?ber_nif(?BER, asn1_test_lib:compile("SetOfTag", Config, [?BER, nif])),
- ?ber_nif(?BER, testSetOfTag_cases(?BER)),
-
- asn1_test_lib:compile("External", Config, [?PER]),
- asn1_test_lib:compile("SetOfTag", Config, [?PER]),
- testSetOfTag_cases(?PER),
-
- ?per_bit_opt(asn1_test_lib:compile("External", Config, [?PER, optimize])),
- ?per_bit_opt(asn1_test_lib:compile("SetOfTag", Config, [?PER, optimize])),
- ?per_bit_opt(testSetOfTag_cases(?PER)),
-
- ?uper_bin(asn1_test_lib:compile("External", Config, [uper_bin])),
- ?uper_bin(asn1_test_lib:compile("SetOfTag", Config, [uper_bin])),
- ?uper_bin(testSetOfTag_cases(uper_bin)),
-
- asn1_test_lib:compile("External", Config, [?PER, optimize]),
- asn1_test_lib:compile("SetOfTag", Config, [?PER, optimize]),
- testSetOfTag_cases(?PER).
-
-testSetOfTag_cases(Rules) ->
- testSetOfTag:main(Rules).
-
-
-sequence(suite) -> [{sequence, all}].
-
-c_syntax(suite) -> [];
-c_syntax(Config) ->
- DataDir% asn1_test_lib:compile("External", Config, ?PER),
-% testPrimExternal:compile(Config, ?PER),
-% testPrimExternal_cases(?PER).
- = ?config(data_dir, Config),
- _TempDir = ?config(priv_dir, Config),
- {error, _R1} = asn1ct:compile(filename:join(DataDir, "Syntax")),
- {error, _R2} = asn1ct:compile(filename:join(DataDir, "BadTypeEnding")),
- {error, _R3} = asn1ct:compile(filename:join(DataDir,
- "BadValueAssignment1")),
- {error, _R4} = asn1ct:compile(filename:join(DataDir,
- "BadValueAssignment2")),
- {error, _R5} = asn1ct:compile(filename:join(DataDir,
- "BadValueSet")),
- {error, _R6} = asn1ct:compile(filename:join(DataDir,
- "ChoiceBadExtension")),
- {error, _R7} = asn1ct:compile(filename:join(DataDir,
- "EnumerationBadExtension")),
- {error, _R8} = asn1ct:compile(filename:join(DataDir,
- "Example")),
- {error, _R9} = asn1ct:compile(filename:join(DataDir,
- "Export1")),
- {error, _R10} = asn1ct:compile(filename:join(DataDir,
- "MissingEnd")),
- {error, _R11} = asn1ct:compile(filename:join(DataDir,
- "SequenceBadComma")),
- {error, _R12} = asn1ct:compile(filename:join(DataDir,
- "SequenceBadComponentName")),
- {error, _R13} = asn1ct:compile(filename:join(DataDir,
- "SequenceBadComponentType")),
- {error, _R14} = asn1ct:compile(filename:join(DataDir,
- "SeqBadComma")).
-
-
-c_string_per(suite) -> [];
-c_string_per(Config) ->
- asn1_test_lib:compile("String", Config, [?PER]).
-
-c_string_ber(suite) -> [];
-c_string_ber(Config) ->
- asn1_test_lib:compile("String", Config, [?BER]).
-
-
-c_implicit_before_choice(suite) -> [];
-c_implicit_before_choice(Config) ->
- DataDir = ?config(data_dir, Config),
- TempDir = ?config(priv_dir, Config),
- {error, _R2} = asn1ct:compile(filename:join(DataDir, "CCSNARG3"),
- [?BER, {outdir, TempDir}]).
-
-parse(suite) -> [];
-parse(Config) ->
- M1 = test_modules(),
- ok = parse1(M1, Config).
-
-parse1([M|T], Config) ->
- asn1_test_lib:compile(M, Config, [abs]),
- parse1(T, Config);
-parse1([], _) ->
- ok.
-
-per(suite) -> [];
-per(Config) ->
- CaseDir = ?config(case_dir, Config),
- ok = per1(per_modules(), Config, CaseDir),
- ?per_bit_opt(per1_bit_opt(per_modules(), Config, CaseDir)).
-
-
-per1([M|T], Config, CaseDir) ->
- asn1_test_lib:compile(M, Config, [?PER]),
- ok = asn1ct:test(list_to_atom(M), [{i, CaseDir}]),
- per1(T, Config, CaseDir);
-per1([], _, _) ->
- ok.
-
-per1_bit_opt([M|T], Config, CaseDir) ->
- asn1_test_lib:compile(M, Config, [?PER, optimize]),
- ok = asn1ct:test(list_to_atom(M), [{i, CaseDir}]),
- per1_bit_opt(T, Config, CaseDir);
-per1_bit_opt([], _, _) ->
- ok.
-
-ber_choiceinseq(suite) ->[];
-ber_choiceinseq(Config) ->
- asn1_test_lib:compile("ChoiceInSeq", Config, [?BER]).
-
-ber_optional(suite) ->[];
-ber_optional(Config) ->
- asn1_test_lib:compile("SOpttest", Config, [?BER]),
-
- V = {'S', {'A', 10, asn1_NOVALUE, asn1_NOVALUE},
- {'B', asn1_NOVALUE, asn1_NOVALUE, asn1_NOVALUE},
- {'C', asn1_NOVALUE, 111, asn1_NOVALUE}},
- {ok, B} = asn1_wrapper:encode('SOpttest', 'S', V),
- Bytes = lists:flatten(B),
- V2 = asn1_wrapper:decode('SOpttest', 'S', Bytes),
- V = element(2, V2).
-
-ber_optional_keyed_list(suite) ->[];
-ber_optional_keyed_list(Config) ->
- case ?BER of
- ber_bin_v2 ->
- ok;
- _ ->
- asn1_test_lib:compile("SOpttest", Config, [?BER, keyed_list]),
- Vrecord = {'S', {'A', 10, asn1_NOVALUE, asn1_NOVALUE},
- {'B', asn1_NOVALUE, asn1_NOVALUE, asn1_NOVALUE},
- {'C', asn1_NOVALUE, 111, asn1_NOVALUE}},
- V = [{a, [{scriptKey, 10}]},
- {b, []},
- {c, [{callingPartysCategory, 111}]}],
- {ok, B} = asn1_wrapper:encode('SOpttest', 'S', V),
- Bytes = lists:flatten(B),
- V2 = asn1_wrapper:decode('SOpttest', 'S', Bytes),
- Vrecord = element(2, V2)
- end.
-
-ber_other(suite) ->[];
-ber_other(Config) ->
- CaseDir = ?config(case_dir, Config),
- ok = ber1(ber_modules(), Config, CaseDir).
-
-
-ber1([M|T], Config, CaseDir) ->
- asn1_test_lib:compile(M, Config, [?BER]),
- ok = asn1ct:test(list_to_atom(M), [{i, CaseDir}]),
- ber1(T, Config, CaseDir);
-ber1([], _, _) ->
- ok.
-
-default_per(suite) ->[];
-default_per(Config) ->
- default1(Config, [?PER]).
-
-default_per_opt(suite) -> [];
-default_per_opt(Config) ->
- ?per_bit_opt(default1(Config, [?PER, optimize])),
- default1(Config, [?PER, optimize]).
-
-default_ber(suite) ->[];
-default_ber(Config) ->
- default1(Config, [?BER]).
-
-default1(Config, Options) ->
- asn1_test_lib:compile("Def", Config, Options),
-
- {ok, Bytes1} = asn1_wrapper:encode('Def', 'Def1', #'Def1'{bool0 = true,
- bool1 = true,
- bool2 = true,
- bool3 = true}),
- {ok, {'Def1', true, true, true, true}} =
- asn1_wrapper:decode('Def', 'Def1', lists:flatten(Bytes1)),
-
- {ok, Bytes2} = asn1_wrapper:encode('Def', 'Def1', #'Def1'{bool0 = true}),
- {ok, {'Def1', true, false, false, false}} =
- asn1_wrapper:decode('Def', 'Def1', lists:flatten(Bytes2)),
-
- {ok, Bytes3} = asn1_wrapper:encode('Def', 'Def1', #'Def1'{bool0 = true,
- bool2 = false}),
- {ok, {'Def1', true, false, false, false}} =
- asn1_wrapper:decode('Def', 'Def1', lists:flatten(Bytes3)).
-
-
-value_test(suite) ->[];
-value_test(Config) ->
- asn1_test_lib:compile("ObjIdValues", Config, [?BER]),
- {ok, _} = asn1_wrapper:encode('ObjIdValues', 'ObjIdType', 'ObjIdValues':'mobileDomainId'()),
- asn1_test_lib:compile("ObjIdValues", Config, [?PER]),
- {ok, _} = asn1_wrapper:encode('ObjIdValues', 'ObjIdType', 'ObjIdValues':'mobileDomainId'()),
- ok = test_bad_values:tests(Config),
- ok.
-
-
-constructed(suite) ->
- [];
-constructed(Config) ->
- asn1_test_lib:compile("Constructed", Config, [?BER]),
- {ok, B} = asn1_wrapper:encode('Constructed', 'S', {'S', false}),
- [40, 3, 1, 1, 0] = lists:flatten(B),
- {ok, B1} = asn1_wrapper:encode('Constructed', 'S2', {'S2', false}),
- [40, 5, 48, 3, 1, 1, 0] = lists:flatten(B1),
- {ok, B2} = asn1_wrapper:encode('Constructed', 'I', 10),
- [136, 1, 10] = lists:flatten(B2),
- ok.
-
-ber_decode_error(suite) -> [];
-ber_decode_error(Config) ->
- asn1_test_lib:compile("Constructed", Config, [?BER]),
- ok = ber_decode_error:run([]),
-
- ?ber_nif(?BER, asn1_test_lib:compile("Constructed", Config, [?BER, nif])),
- ok = ?ber_nif(?BER, ber_decode_error:run([nif])),
- ok.
-
-h323test(suite) ->
- [];
-h323test(Config) ->
- Files = ["H235-SECURITY-MESSAGES",
- "H323-MESSAGES",
- "MULTIMEDIA-SYSTEM-CONTROL"],
- asn1_test_lib:compile_all(Files, Config, [?PER]),
- ok = h323test:run(?PER),
- ?per_bit_opt(asn1_test_lib:compile_all(Files, Config, [?PER, optimize])),
- ?per_bit_opt(h323test:run(?PER)),
- ?uper_bin(asn1_test_lib:compile_all(Files, Config, [uper_bin])),
- ?uper_bin(h323test:run(uper_bin)),
- ok = asn1_test_lib:compile_all(Files, Config, [?PER, optimize]),
- ok = h323test:run(?PER),
- ok.
-
-per_GeneralString(suite) ->
- [];
-per_GeneralString(Config) ->
- asn1_test_lib:compile("MULTIMEDIA-SYSTEM-CONTROL", Config, [?PER]),
- UI = [109, 64, 1, 57],
- {ok, _V} = asn1_wrapper:decode('MULTIMEDIA-SYSTEM-CONTROL',
- 'MultimediaSystemControlMessage', UI).
-
-per_open_type(suite) ->
- [];
-per_open_type(Config) ->
- asn1_test_lib:compile("OpenType", Config, [?PER]),
-
- Stype = {'Stype', 10, true},
- {ok, Bytes} = asn1_wrapper:encode('OpenType', 'Ot', Stype),
- {ok, Stype} = asn1_wrapper:decode('OpenType', 'Ot', Bytes),
-
- ?per_bit_opt(asn1_test_lib:compile("OpenType", Config, [?PER, optimize])),
- ?per_bit_opt({ok, Bytes}=asn1_wrapper:encode('OpenType', 'Ot', Stype)),
- ?per_bit_opt({ok, Stype}=asn1_wrapper:decode('OpenType', 'Ot', Bytes)),
-
- ?uper_bin(asn1_test_lib:compile("OpenType", Config, [uper_bin])),
- ?uper_bin({ok, Bytes}=asn1_wrapper:encode('OpenType', 'Ot', Stype)),
- ?uper_bin({ok, Stype}=asn1_wrapper:decode('OpenType', 'Ot', Bytes)),
-
- asn1_test_lib:compile("OpenType", Config, [?PER, optimize]),
- {ok, Bytes} = asn1_wrapper:encode('OpenType', 'Ot', Stype),
- {ok, Stype} = asn1_wrapper:decode('OpenType', 'Ot', Bytes).
-
-testConstraints(suite) ->
- [];
-testConstraints(Config) ->
- asn1_test_lib:compile("Constraints", Config, [?BER]),
- testConstraints:int_constraints(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("Constraints", Config, [?BER, nif])),
- ?ber_nif(?BER, testConstraints:int_constraints(?BER)),
-
- asn1_test_lib:compile("Constraints", Config, [?PER]),
- testConstraints:int_constraints(?PER),
- testConstraints:refed_NNL_name(?PER),
-
- ?per_bit_opt(asn1_test_lib:compile("Constraints", Config, [?PER, optimize])),
- ?per_bit_opt(testConstraints:int_constraints(?PER)),
- ?per_bit_opt(testConstraints:refed_NNL_name(?PER)),
-
- ?uper_bin(asn1_test_lib:compile("Constraints", Config, [uper_bin])),
- ?uper_bin(testConstraints:int_constraints(uper_bin)),
- ?uper_bin(testConstraints:refed_NNL_name(uper_bin)),
-
- asn1_test_lib:compile("Constraints", Config, [?PER, optimize]),
- testConstraints:int_constraints(?PER),
- testConstraints:refed_NNL_name(?PER).
-
-testSeqIndefinite(suite) -> [];
-testSeqIndefinite(Config) ->
- asn1_test_lib:compile("SeqSetIndefinite", Config, [?BER]),
- testSeqIndefinite:main(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("SeqSetIndefinite", Config, [?BER, nif])),
- ?ber_nif(?BER, testSeqIndefinite:main(?BER)).
-
-testSetIndefinite(suite) -> [];
-testSetIndefinite(Config) ->
- asn1_test_lib:compile("SeqSetIndefinite", Config, [?BER]),
- testSetIndefinite:main(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("SeqSetIndefinite", Config, [?BER, nif])),
- ?ber_nif(?BER, testSetIndefinite:main(?BER)).
-
-testChoiceIndefinite(suite) -> [];
-testChoiceIndefinite(Config) ->
- testChoiceIndefinite:compile(Config, ?BER, []),
- testChoiceIndefinite:main(?BER),
-
- ?ber_nif(?BER, testChoiceIndefinite:compile(Config, ?BER, [nif])),
- ?ber_nif(?BER, testChoiceIndefinite:main(?BER)).
-
-testInfObjectClass(suite) ->
- [];
-testInfObjectClass(Config) ->
- Files = ["ErrorClass", "InfClass"],
- InfObjFiles = ["RANAPextract1", "InfObj", "MAP-ExtensionDataTypes",
- "Objects", "INAPv2extract"],
- RANAPFiles = ["RANAP-CommonDataTypes", "RANAP-Constants",
- "RANAP-Containers", "RANAP-IEs", "RANAP-PDU-Contents",
- "RANAP-PDU-Descriptions"],
- asn1_test_lib:compile_all(Files, Config, [?PER]),
- testInfObjectClass:main(?PER),
- asn1_test_lib:compile_all(InfObjFiles, Config, [?PER]),
- testInfObj:main(?PER),
-
- ?uper_bin(asn1_test_lib:compile_all(Files, Config, [uper_bin])),
- ?uper_bin(testInfObjectClass:main(uper_bin)),
- ?uper_bin(asn1_test_lib:compile_all(InfObjFiles, Config, [uper_bin])),
- ?uper_bin(testInfObj:main(uper_bin)),
-
- asn1_test_lib:compile_all(Files, Config, [?PER, optimize]),
- testInfObjectClass:main(?PER),
- asn1_test_lib:compile_all(InfObjFiles, Config, [?PER, optimize]),
- testInfObj:main(?PER),
-
- asn1_test_lib:compile_all(Files, Config, [?BER]),
- testInfObjectClass:main(?BER),
- asn1_test_lib:compile_all(InfObjFiles, Config, [?BER]),
- testInfObj:main(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile_all(Files, Config, [?BER, nif])),
- ?ber_nif(?BER, testInfObjectClass:main(?BER)),
- ?ber_nif(?BER, asn1_test_lib:compile_all(InfObjFiles, Config, [?BER, nif])),
- ?ber_nif(?BER, testInfObj:main(?BER)),
-
- asn1_test_lib:compile_all(RANAPFiles, Config, [?PER]),
-
- ?uper_bin(asn1_test_lib:compile_all(RANAPFiles, Config, [uper_bin])),
-
- asn1_test_lib:compile_all(RANAPFiles, Config, [?PER, optimize]),
-
- asn1_test_lib:compile_all(RANAPFiles, Config, [?BER]).
-
-testParameterizedInfObj(suite) ->
- [];
-testParameterizedInfObj(Config) ->
- asn1_test_lib:compile("Param", Config, [?PER]),
- testParameterizedInfObj:main(?PER),
-
- % TODO: Remove all ?per_bit_opt(...) which has an equiv without macro
- ?per_bit_opt(asn1_test_lib:compile("Param", Config, [?PER, optimize])),
- ?per_bit_opt(testParameterizedInfObj:main(?PER)),
-
- ?uper_bin(asn1_test_lib:compile("Param", Config, [uper_bin])),
- ?uper_bin(testParameterizedInfObj:main(uper_bin)),
-
- asn1_test_lib:compile("Param", Config, [?PER, optimize]),
- testParameterizedInfObj:main(?PER),
-
- asn1_test_lib:compile("Param", Config, [?BER]),
- testParameterizedInfObj:main(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("Param", Config, [?BER, nif])),
- ?ber_nif(?BER, testParameterizedInfObj:main(?BER)).
-
-testMergeCompile(suite) ->
- [];
-testMergeCompile(Config) ->
- Files = ["MS.set.asn", "RANAPSET.set.asn1", "Mvrasn4.set.asn",
- "Mvrasn6.set.asn"],
- asn1_test_lib:compile_all(Files, Config, [?PER]),
- testMergeCompile:main(?PER),
- testMergeCompile:mvrasn(?PER),
-
- ?per_bit_opt(asn1_test_lib:compile_all(Files, Config, [?PER, optimize])),
- ?per_bit_opt(testMergeCompile:main(?PER)),
- ?per_bit_opt(testMergeCompile:mvrasn(?PER)),
-
- ?uper_bin(asn1_test_lib:compile_all(Files, Config, [uper_bin])),
- ?uper_bin(testMergeCompile:main(uper_bin)),
- ?uper_bin(testMergeCompile:mvrasn(uper_bin)),
-
- asn1_test_lib:compile_all(Files, Config, [?BER]),
- testMergeCompile:main(?BER),
- testMergeCompile:mvrasn(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile_all(Files, Config, [?BER, nif])),
- ?ber_nif(?BER, testMergeCompile:main(?BER)),
- ?ber_nif(?BER, testMergeCompile:mvrasn(?BER)).
-
-testobj(suite) ->
- [];
-testobj(Config) ->
- ok = testRANAP:compile(Config, [?PER]),
- ok = testRANAP:testobj(?PER),
- ok = testParameterizedInfObj:ranap(?PER),
-
- ?per_bit_opt(ok = testRANAP:compile(Config, [?PER, optimize])),
- ?per_bit_opt(ok = testRANAP:testobj(?PER)),
- ?per_bit_opt(ok = testParameterizedInfObj:ranap(?PER)),
-
- ?uper_bin(ok = testRANAP:compile(Config, [uper_bin])),
- ?uper_bin(ok = testRANAP:testobj(uper_bin)),
- ?uper_bin(ok = testParameterizedInfObj:ranap(uper_bin)),
-
- ok = testRANAP:compile(Config, [?PER, optimize]),
- ok = testRANAP:testobj(?PER),
- ok = testParameterizedInfObj:ranap(?PER),
-
- ok = testRANAP:compile(Config, [?BER]),
- ok = testRANAP:testobj(?BER),
- ok = testParameterizedInfObj:ranap(?BER),
-
- ?ber_nif(?BER, testRANAP:compile(Config, [?BER, nif])),
- ?ber_nif(?BER, testRANAP:testobj(?BER)),
- ?ber_nif(?BER, testParameterizedInfObj:ranap(?BER)).
-
-
-testDeepTConstr(suite) ->
- [];
-testDeepTConstr(Config) ->
- asn1_test_lib:compile("TConstrChoice", Config, [?PER]),
- asn1_test_lib:compile("TConstr", Config, [?PER]),
- testDeepTConstr:main(?PER),
-
- ?per_bit_opt(asn1_test_lib:compile("TConstrChoice", Config, [?PER, optimize])),
- ?per_bit_opt(asn1_test_lib:compile("TConstr", Config, [?PER, optimize])),
- ?per_bit_opt(testDeepTConstr:main(?PER)),
-
- ?uper_bin(asn1_test_lib:compile("TConstrChoice", Config, [uper_bin])),
- ?uper_bin(asn1_test_lib:compile("TConstr", Config, [uper_bin])),
- ?uper_bin(testDeepTConstr:main(uper_bin)),
-
- asn1_test_lib:compile("TConstrChoice", Config, [?PER, optimize]),
- asn1_test_lib:compile("TConstr", Config, [?PER, optimize]),
- testDeepTConstr:main(?PER),
-
- asn1_test_lib:compile("TConstrChoice", Config, [?BER]),
- asn1_test_lib:compile("TConstr", Config, [?BER]),
- testDeepTConstr:main(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("TConstrChoice", Config, [?BER, nif])),
- ?ber_nif(?BER, asn1_test_lib:compile("TConstr", Config, [?BER, nif])),
- ?ber_nif(?BER, testDeepTConstr:main(?BER)).
-
-testInvokeMod(suite) ->
- [];
-testInvokeMod(Config) ->
- asn1_test_lib:compile("PrimStrings", Config, []),
- {ok, _Result1} = 'PrimStrings':encode('Bs1', [1, 0, 1, 0]),
- asn1_test_lib:compile("PrimStrings", Config, [?PER]),
- {ok, _Result2} = 'PrimStrings':encode('Bs1', [1, 0, 1, 0]).
-
-testExport(suite) ->
- [];
-testExport(Config) ->
- DataDir = ?config(data_dir, Config),
- CaseDir = ?config(case_dir, Config),
- {error, {asn1, _Reason}} =
- asn1ct:compile(filename:join(DataDir, "IllegalExport"),
- [{outdir, CaseDir}]).
-
-testImport(suite) ->
- [];
-testImport(Config) ->
- DataDir = ?config(data_dir, Config),
- CaseDir = ?config(priv_dir, Config),
- {error, _} = asn1ct:compile(filename:join(DataDir, "ImportsFrom"),
- [?BER, {outdir, CaseDir}]).
-
-testMegaco(suite) ->
- [];
-testMegaco(Config) ->
- {ok, ModuleName1, ModuleName2} = testMegaco:compile(Config, ?BER, []),
- ok = testMegaco:main(ModuleName1, Config),
- ok = testMegaco:main(ModuleName2, Config),
-
- case ?BER of
- ber_bin_v2 ->
- {ok, ModuleName3, ModuleName4} = testMegaco:compile(Config, ?BER, [nif]),
- ok = testMegaco:main(ModuleName3, Config),
- ok = testMegaco:main(ModuleName4, Config);
- _->
- ok
- end,
-
- {ok, ModuleName5, ModuleName6} = testMegaco:compile(Config, ?PER, []),
- ok = testMegaco:main(ModuleName5, Config),
- ok = testMegaco:main(ModuleName6, Config),
-
- ?per_bit_opt({ok, ModuleName5, ModuleName6} = testMegaco:compile(Config, ?PER, [optimize])),
- ?per_bit_opt(ok = testMegaco:main(ModuleName5, Config)),
- ?per_bit_opt(ok = testMegaco:main(ModuleName6, Config)),
-
- ?uper_bin({ok, ModuleName5, ModuleName6} = testMegaco:compile(Config, uper_bin, [])),
- ?uper_bin(ok = testMegaco:main(ModuleName5, Config)),
- ?uper_bin(ok = testMegaco:main(ModuleName6, Config)),
-
- {ok, ModuleName7, ModuleName8} = testMegaco:compile(Config, ?PER, [optimize]),
- ok = testMegaco:main(ModuleName7, Config),
- ok = testMegaco:main(ModuleName8, Config).
-
-
-testMvrasn6(suite) -> [];
-testMvrasn6(Config) ->
- asn1_test_lib:compile("Mvrasn-21-4", Config, [?BER]),
- asn1_test_lib:compile("Mvrasn-20-6", Config, [?BER]),
- asn1_test_lib:compile("Mvrasn-19-6", Config, [?BER]),
- asn1_test_lib:compile("Mvrasn-15-6", Config, [?BER]),
- asn1_test_lib:compile("Mvrasn-18-6", Config, [?BER]),
- asn1_test_lib:compile("Mvrasn-14-6", Config, [?BER]),
- asn1_test_lib:compile("Mvrasn-11-6", Config, [?BER]).
-
-testContextSwitchingTypes(suite) -> [];
-testContextSwitchingTypes(Config) ->
- asn1_test_lib:compile("ContextSwitchingTypes", Config, [?BER]),
- testContextSwitchingTypes:test(Config),
-
- ?ber_nif(?BER, asn1_test_lib:compile("ContextSwitchingTypes", Config, [?BER, nif])),
- ?ber_nif(?BER, testContextSwitchingTypes:test(Config)),
-
- asn1_test_lib:compile("ContextSwitchingTypes", Config, [?PER]),
- testContextSwitchingTypes:test(Config),
-
- ?per_bit_opt(asn1_test_lib:compile("ContextSwitchingTypes", Config, [?PER, optimize])),
- ?per_bit_opt(testContextSwitchingTypes:test(Config)),
-
- ?uper_bin(asn1_test_lib:compile("ContextSwitchingTypes", Config, [uper_bin])),
- ?uper_bin(testContextSwitchingTypes:test(Config)),
-
- asn1_test_lib:compile("ContextSwitchingTypes", Config, [?PER, optimize]),
- testContextSwitchingTypes:test(Config).
-
-testTypeValueNotation(suite) -> [];
-testTypeValueNotation(Config) ->
- Files = ["SeqTypeRefPrim",
- "ValueTest"], % OTP-6695
- case ?BER of
- Ber when Ber == ber; Ber == ber_bin ->
- asn1_test_lib:compile_all(Files, Config, [?BER]),
- testTypeValueNotation:main(?BER, dummy);
- _ ->
- ok
- end,
-
- ?ber_nif(?BER, asn1_test_lib:compile_all(Files, Config, [?BER, nif])),
- ?ber_nif(?BER, testTypeValueNotation:main(?BER, optimize)),
-
- case ?BER of
- Ber2 when Ber2 == ber; Ber2 == ber_bin ->
- asn1_test_lib:compile_all(Files, Config, [?PER]),
- testTypeValueNotation:main(?PER, dummy);
- _ ->
- ok
- end,
-
- ?per_bit_opt(asn1_test_lib:compile_all(Files, Config, [?PER, optimize])),
- ?per_bit_opt(testTypeValueNotation:main(?PER, optimize)),
-
- ?uper_bin(asn1_test_lib:compile_all(Files, Config, [uper_bin])),
- ?uper_bin(testTypeValueNotation:main(uper_bin, optimize)),
- case ?BER of
- Ber3 when Ber3 == ber; Ber3 == ber_bin ->
- asn1_test_lib:compile_all(Files, Config, [?PER, optimize]),
- testTypeValueNotation:main(?PER, optimize);
- _ ->
- ok
- end.
-
-testOpenTypeImplicitTag(suite) -> [];
-testOpenTypeImplicitTag(Config) ->
- asn1_test_lib:compile("OpenTypeImplicitTag", Config, [?BER]),
- testOpenTypeImplicitTag:main(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("OpenTypeImplicitTag", Config, [?BER, nif])),
- ?ber_nif(?BER, testOpenTypeImplicitTag:main(?BER)),
-
- asn1_test_lib:compile("OpenTypeImplicitTag", Config, [?PER]),
- testOpenTypeImplicitTag:main(?PER),
-
- ?per_bit_opt(asn1_test_lib:compile("OpenTypeImplicitTag", Config, [?PER, optimize])),
- ?per_bit_opt(testOpenTypeImplicitTag:main(?PER)),
-
- ?uper_bin(asn1_test_lib:compile("OpenTypeImplicitTag", Config, [uper_bin])),
- ?uper_bin(testOpenTypeImplicitTag:main(uper_bin)),
-
- asn1_test_lib:compile("OpenTypeImplicitTag", Config, [?PER, optimize]),
- testOpenTypeImplicitTag:main(?PER).
-
-duplicate_tags(suite) -> [];
-duplicate_tags(Config) ->
- DataDir = ?config(data_dir, Config),
- CaseDir = ?config(case_dir, Config),
- {error, {asn1, [{error, {type, _, _, 'SeqOpt1Imp', {asn1, {duplicates_of_the_tags, _}}}}]}} =
- asn1ct:compile(filename:join(DataDir, "SeqOptional2"),
- [abs, {outdir, CaseDir}]).
-
-rtUI(suite) -> [];
-rtUI(Config) ->
- asn1_test_lib:compile("Prim", Config, [?BER]),
- {ok, _} = asn1rt:info('Prim'),
- asn1_test_lib:compile("Prim", Config, [?PER]),
- {ok, _} = asn1rt:info('Prim').
-
-testROSE(suite) -> [];
-testROSE(Config) ->
- asn1_test_lib:compile("Remote-Operations-Merged.set.asn1", Config, [?BER]),
- asn1_test_lib:compile("Remote-Operations-Merged.set.asn1", Config, [?PER]),
- ?per_bit_opt(asn1_test_lib:compile("Remote-Operations-Merged.set.asn1", Config, [?PER, optimize])),
- ?uper_bin(asn1_test_lib:compile("Remote-Operations-Merged.set.asn1", Config, [uper_bin])),
- asn1_test_lib:compile("Remote-Operations-Merged.set.asn1", Config, [?PER, optimize]).
-
-testINSTANCE_OF(suite) -> [];
-testINSTANCE_OF(Config) ->
- asn1_test_lib:compile("INSTANCEOF.asn1", Config, [?BER]),
- testINSTANCE_OF:main(?BER),
-
- ?ber_nif(?BER, asn1_test_lib:compile("INSTANCEOF.asn1", Config, [?BER, nif])),
- ?ber_nif(?BER, testINSTANCE_OF:main(?BER)),
-
- asn1_test_lib:compile("INSTANCEOF.asn1", Config, [?PER]),
- testINSTANCE_OF:main(?PER),
-
- ?per_bit_opt(asn1_test_lib:compile("INSTANCEOF.asn1", Config, [?PER, optimize])),
- ?per_bit_opt(testINSTANCE_OF:main(?PER)),
-
- ?uper_bin(asn1_test_lib:compile("INSTANCEOF.asn1", Config, [uper_bin])),
- ?uper_bin(testINSTANCE_OF:main(uper_bin)),
-
- asn1_test_lib:compile("INSTANCEOF.asn1", Config, [?PER, optimize]),
- testINSTANCE_OF:main(?PER).
-
-testTCAP(suite) -> [];
-testTCAP(Config) ->
- testTCAP:compile(Config, [?BER]),
- testTCAP:test(?BER, Config),
-
- ?ber_nif(?BER, testTCAP:compile(Config, [?BER, nif])),
- ?ber_nif(?BER, testTCAP:test(?BER, Config)),
-
- ?ber_nif(?BER, testTCAP:compile_asn1config(Config, [?BER, asn1config])),
- ?ber_nif(?BER, testTCAP:test_asn1config()).
-
-testDER(suite) ->[];
-testDER(Config) ->
- asn1_test_lib:compile("DERSpec", Config, [?BER, der]),
- testDER:test(),
-
- ?ber_nif(?BER, asn1_test_lib:compile("DERSpec", Config, [?BER, der, nif])),
- ?ber_nif(?BER, testDER:test()),
-
- asn1_test_lib:compile("ParamBasic", Config, [?BER, der]),
- testParamBasic_cases(der),
-
- asn1_test_lib:compile("Default", Config, [?BER, der]),
- testSeqSetDefaultVal_cases(?BER).
-
-testSeqSetDefaultVal_cases(?BER) ->
- testSeqSetDefaultVal:main(?BER).
-
-
-specialized_decodes(suite) -> [];
-specialized_decodes(Config) ->
- case ?BER of
- ber_bin_v2 ->
- asn1_test_lib:compile_all(["PartialDecSeq.asn",
- "PartialDecSeq2.asn",
- "PartialDecSeq3.asn",
- "PartialDecMyHTTP.asn",
- "MEDIA-GATEWAY-CONTROL.asn",
- "P-Record"],
- Config, [?BER, optimize, asn1config]),
- test_partial_incomplete_decode:test(Config),
- test_selective_decode:test();
- Rule ->
- {skip, lists:concat(["not implemented yet for version: ", Rule])}
- end.
-
-special_decode_performance(suite) ->[];
-special_decode_performance(Config) ->
- Files = ["MEDIA-GATEWAY-CONTROL", "PartialDecSeq"],
- ?ber_nif(?BER, asn1_test_lib:compile_all(Files, Config,
- [?BER, optimize, asn1config])),
- ?ber_nif(?BER, test_special_decode_performance:go(all)).
-
-
-test_driver_load(suite) -> [];
-test_driver_load(Config) ->
- case ?PER of
- per_bin ->
- asn1_test_lib:compile("P-Record", Config, [?PER, optimize]),
- test_driver_load:test(5);
- _ ->
- ok
- end.
-
-test_ParamTypeInfObj(suite) -> [];
-test_ParamTypeInfObj(Config) ->
- asn1_test_lib:compile("IN-CS-1-Datatypes", Config, [ber_bin]).
-
-test_WS_ParamClass(suite) -> [];
-test_WS_ParamClass(Config) ->
- asn1_test_lib:compile("InformationFramework", Config, [ber_bin]).
-
-test_Defed_ObjectIdentifier(suite) -> [];
-test_Defed_ObjectIdentifier(Config) ->
- asn1_test_lib:compile("UsefulDefinitions", Config, [ber_bin]).
-
-testSelectionType(suite) -> [];
-testSelectionType(Config) ->
- asn1_test_lib:compile("SelectionType", Config, [?BER]),
- {ok, _} = testSelectionTypes:test(),
- asn1_test_lib:compile("SelectionType", Config, [?PER]),
- {ok, _} = testSelectionTypes:test().
-
-testSSLspecs(suite) -> [];
-testSSLspecs(Config) ->
- ok = testSSLspecs:compile(Config,
- [?BER, optimize, compact_bit_string, der]),
- testSSLspecs:run(?BER),
-
- case code:which(asn1ct) of
- cover_compiled ->
- ok;
- _ ->
- ok = testSSLspecs:compile_inline(Config, ?BER),
- ok = testSSLspecs:run_inline(?BER)
- end.
-
-testNortel(suite) -> [];
-testNortel(Config) ->
- asn1_test_lib:compile("Nortel", Config, [?BER]),
- asn1_test_lib:compile("Nortel", Config, [?BER, optimize]),
- asn1_test_lib:compile("Nortel", Config, [?BER, optimize, nif]),
- asn1_test_lib:compile("Nortel", Config, [?PER]),
- ?per_bit_opt(asn1_test_lib:compile("Nortel", Config, [?PER, optimize])),
- ?uper_bin(asn1_test_lib:compile("Nortel", Config, [uper_bin])),
- asn1_test_lib:compile("Nortel", Config, [?PER, optimize]).
-
-test_undecoded_rest(suite) -> [];
-test_undecoded_rest(Config) ->
-
- asn1_test_lib:compile("P-Record", Config, [?BER]),
- ok = test_undecoded_rest:test([], Config),
-
- asn1_test_lib:compile("P-Record", Config, [?BER, undec_rest]),
- ok = test_undecoded_rest:test(undec_rest, Config),
-
- asn1_test_lib:compile("P-Record", Config, [?PER]),
- ok = test_undecoded_rest:test([], Config),
-
- ?per_bit_opt(asn1_test_lib:compile("P-Record", Config, [?PER, optimize, undec_rest])),
- ?per_bit_opt(ok = test_undecoded_rest:test(undec_rest, Config)),
-
- ?uper_bin(asn1_test_lib:compile("P-Record", Config, [uper_bin, undec_rest])),
- ?uper_bin(ok = test_undecoded_rest:test(undec_rest, Config)),
-
- asn1_test_lib:compile("P-Record", Config, [?PER, undec_rest]),
- ok = test_undecoded_rest:test(undec_rest, Config).
-
-test_inline(suite) -> [];
-test_inline(Config) ->
- case code:which(asn1ct) of
- cover_compiled ->
- {skip, "Not runnable when cover compiled"};
- _ ->
- ok=test_inline:compile(Config, []),
- test_inline:main(Config, ?BER),
- test_inline:inline1(Config, ?BER, []),
- test_inline:performance2()
- end.
-
-%test_inline_prf(suite) -> [];
-%test_inline_prf(Config) ->
-% test_inline:performance(Config).
-
-testTcapsystem(suite) -> [];
-testTcapsystem(Config) ->
- testTcapsystem:compile(Config, [?BER]).
-
-testNBAPsystem(suite) -> [];
-testNBAPsystem(Config) ->
- ok=testNBAPsystem:compile(Config, [?PER|?per_optimize(?BER)]),
- ok=testNBAPsystem:test(?PER, Config).
-
-test_compile_options(suite) -> [];
-test_compile_options(Config) ->
- case code:which(asn1ct) of
- cover_compiled ->
- {skip, "Not runnable when cover compiled"};
- _ ->
- ok = test_compile_options:wrong_path(Config),
- ok = test_compile_options:path(Config),
- ok = test_compile_options:noobj(Config),
- ok = test_compile_options:record_name_prefix(Config),
- ok = test_compile_options:verbose(Config),
- ok = test_compile_options:warnings_as_errors(Config)
- end.
-
-testDoubleEllipses(suite) -> [];
-testDoubleEllipses(Config) ->
- asn1_test_lib:compile("DoubleEllipses", Config, [?BER]),
- testDoubleEllipses:main(?BER),
- ?ber_nif(?BER, asn1_test_lib:compile("DoubleEllipses", Config, [?BER, nif])),
- ?ber_nif(?BER, testDoubleEllipses:main(?BER)),
- ?per_bit_opt(asn1_test_lib:compile("DoubleEllipses", Config, [?PER, optimize])),
- ?per_bit_opt(testDoubleEllipses:main(?PER)),
- ?uper_bin(asn1_test_lib:compile("DoubleEllipses", Config, [uper_bin])),
- ?uper_bin(testDoubleEllipses:main(uper_bin)),
- asn1_test_lib:compile("DoubleEllipses", Config, [?PER|?per_optimize(?BER)]),
- testDoubleEllipses:main(?PER).
-
-test_modified_x420(suite) -> [];
-test_modified_x420(Config) ->
- test_modified_x420:compile(Config),
- test_modified_x420:test_io(Config).
-
-testX420(suite) -> [];
-testX420(Config) ->
- testX420:compile(?BER, [der], Config),
- ok = testX420:ticket7759(?BER, Config),
- testX420:compile(?PER, [], Config).
-
-test_x691(suite) -> [];
-test_x691(Config) ->
- case ?PER of
- per ->
- ok = test_x691:compile(Config, [uper_bin]),
- true = test_x691:cases(uper_bin, unaligned),
- ok = test_x691:compile(Config, [?PER]),
- true = test_x691:cases(?PER, aligned),
- ok = asn1_test_lib:ticket_7708(Config, []),
- ok = asn1_test_lib:ticket_7763(Config);
- _ ->
- ok = test_x691:compile(Config, [?PER|?per_optimize(?BER)]),
- true = test_x691:cases(?PER, aligned)
- end.
-
-ticket_6143(suite) -> [];
-ticket_6143(Config) ->
- ok = test_compile_options:ticket_6143(Config).
-
-testExtensionAdditionGroup(suite) -> [];
-testExtensionAdditionGroup(Config) ->
- DataDir = ?config(data_dir, Config),
- PrivDir = ?config(priv_dir, Config),
- Path = code:get_path(),
- DoIt = fun(Erule) ->
- ok = asn1ct:compile(filename:join(DataDir, "Extension-Addition-Group"), Erule ++ [{outdir, PrivDir}]),
- {ok, _M} = compile:file(filename:join(DataDir, "extensionAdditionGroup"), [{i, PrivDir}, {outdir, PrivDir}, debug_info]),
- ok = extensionAdditionGroup:run(Erule),
- ok = extensionAdditionGroup:run2(Erule),
- ok = asn1ct:compile(filename:join(DataDir, "EUTRA-RRC-Definitions"), Erule ++ [{record_name_prefix, "RRC-"}, {outdir, PrivDir}]),
- ok = extensionAdditionGroup:run3(Erule)
- end,
- [DoIt(Rule)|| Rule <- [[per_bin], [per_bin, optimize], [uper_bin]]],
- %% FIXME problems with automatic tags [ber_bin], [ber_bin, optimize]
- code:set_path(Path).
-
-
-
-% parse_modules() ->
-% ["ImportsFrom"].
-
-per_modules() ->
- [X || X <- test_modules()].
-ber_modules() ->
- [X || X <- test_modules(),
- X =/= "CommonDataTypes",
- X =/= "DS-EquipmentUser-CommonFunctionOrig-TransmissionPath",
- X =/= "H323-MESSAGES",
- X =/= "H235-SECURITY-MESSAGES",
- X =/= "MULTIMEDIA-SYSTEM-CONTROL"].
-test_modules() ->
- _Modules = [
- "BitStr",
- "CAP",
- "CommonDataTypes",
- "Constraints",
- "ContextSwitchingTypes",
- "DS-EquipmentUser-CommonFunctionOrig-TransmissionPath",
- "Enum",
- "From",
- "H235-SECURITY-MESSAGES",
- "H323-MESSAGES",
- %%"MULTIMEDIA-SYSTEM-CONTROL", recursive type , problem for asn1ct:value
- "Import",
- "Int",
- "MAP-commonDataTypes",
-% ambigous tags "MAP-insertSubscriberData-def",
- "Null",
- "Octetstr",
- "One",
- "P-Record",
- "P",
-% "PDUs",
- "Person",
- "PrimStrings",
- "Real",
- "XSeq",
- "XSeqOf",
- "XSet",
- "XSetOf",
- "String",
- "SwCDR",
-% "Syntax",
- "Time"
-% ANY "Tst",
-% "Two",
-% errors that should be detected "UndefType"
-] ++
- [
- "SeqSetLib", % must be compiled before Seq and Set
- "Seq",
- "Set",
- "SetOf",
- "SeqOf",
- "Prim",
- "Cho",
- "Def",
- "Opt",
- "ELDAPv3",
- "LDAP"
- ].
-
-test_OTP_9688(Config) ->
- Asn1Mod = "OTP-9688.asn1",
- %%DataDir = ?config(data_dir,Config),
- PrivDir = ?config(priv_dir,Config),
- Data = "
-OTP-9688 DEFINITIONS ::= BEGIN
-
- foo INTEGER ::= 1
- bar INTEGER ::= 42
-
- Baz ::= INTEGER {x-y-z1(foo), x-y-z2(bar)}
- Qux ::= SEQUENCE {flerpInfo SEQUENCE {x INTEGER (-10 | -9 | (0..4))} OPTIONAL}
-
-END
-",
- File = filename:join(PrivDir,Asn1Mod),
- ok = file:write_file(File, Data),
- %% Does it compile with changes to asn1ct_check and asn1ct_gen_per_rt2ct?
- %% (see ticket)
- ok = asn1ct:compile(File, [{outdir, PrivDir}]).