1%% 2%% %CopyrightBegin% 3%% 4%% Copyright Ericsson AB 1997-2016. All Rights Reserved. 5%% 6%% Licensed under the Apache License, Version 2.0 (the "License"); 7%% you may not use this file except in compliance with the License. 8%% You may obtain a copy of the License at 9%% 10%% http://www.apache.org/licenses/LICENSE-2.0 11%% 12%% Unless required by applicable law or agreed to in writing, software 13%% distributed under the License is distributed on an "AS IS" BASIS, 14%% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15%% See the License for the specific language governing permissions and 16%% limitations under the License. 17%% 18%% %CopyrightEnd% 19%% 20%% 21-module(testSetOfTag). 22-export([main/1]). 23 24-include_lib("common_test/include/ct.hrl"). 25-include("External.hrl"). 26 27-record('SetTagNt',{nt}). 28-record('SetTagNtI',{imp}). 29-record('SetTagNtE',{exp}). 30-record('SetTagI',{nt}). 31-record('SetTagII',{imp}). 32-record('SetTagIE',{exp}). 33-record('SetTagE',{nt}). 34-record('SetTagEI',{imp}). 35-record('SetTagEE',{exp}). 36-record('SetTagXNt',{xnt}). 37-record('SetTagXI',{ximp}). 38-record('SetTagXE',{xexp}). 39-record('SetTagImpX',{xnt, ximp, xexp}). 40-record('SetTagExpX',{xnt, ximp, xexp}). 41-record('NT',{os, bool}). 42-record('Imp',{os, bool}). 43-record('Exp',{os, bool}). 44 45main(_Rules) -> 46 roundtrip('SetTagNt', #'SetTagNt'{nt=[#'NT'{os = <<"kalle">>,bool=true}, 47 #'NT'{os = <<"kalle">>,bool=true}]}), 48 roundtrip('SetTagNtI', #'SetTagNtI'{imp=[#'Imp'{os = <<"kalle">>,bool=true}, 49 #'Imp'{os = <<"kalle">>,bool=true}]}), 50 roundtrip('SetTagNtE', #'SetTagNtE'{exp=[#'Exp'{os = <<"kalle">>,bool=true}, 51 #'Exp'{os = <<"kalle">>,bool=true}]}), 52 roundtrip('SetTagI', #'SetTagI'{nt=[#'NT'{os = <<"kalle">>,bool=true}, 53 #'NT'{os = <<"kalle">>,bool=true}]}), 54 roundtrip('SetTagII', #'SetTagII'{imp=[#'Imp'{os = <<"kalle">>,bool=true}, 55 #'Imp'{os = <<"kalle">>,bool=true}]}), 56 roundtrip('SetTagIE', #'SetTagIE'{exp=[#'Exp'{os = <<"kalle">>,bool=true}, 57 #'Exp'{os = <<"kalle">>,bool=true}]}), 58 roundtrip('SetTagE', #'SetTagE'{nt=[#'NT'{os = <<"kalle">>,bool=true}, 59 #'NT'{os = <<"kalle">>,bool=true}]}), 60 roundtrip('SetTagEI', #'SetTagEI'{imp=[#'Imp'{os = <<"kalle">>,bool=true}, 61 #'Imp'{os = <<"kalle">>,bool=true}]}), 62 roundtrip('SetTagEE', #'SetTagEE'{exp=[#'Exp'{os = <<"kalle">>,bool=true}, 63 #'Exp'{os = <<"kalle">>,bool=true}]}), 64 roundtrip('SetTagXNt', #'SetTagXNt'{xnt=[#'XSetNT'{os = <<"kalle">>,bool=true}, 65 #'XSetNT'{os = <<"kalle">>,bool=true}]}), 66 roundtrip('SetTagXI', #'SetTagXI'{ximp=[#'XSetImp'{os = <<"kalle">>,bool=true}, 67 #'XSetImp'{os = <<"kalle">>,bool=true}]}), 68 roundtrip('SetTagXE', #'SetTagXE'{xexp=[#'XSetExp'{os = <<"kalle">>,bool=true}, 69 #'XSetExp'{os = <<"kalle">>,bool=true}]}), 70 roundtrip('SetTagImpX', #'SetTagImpX'{xnt=[#'XSetNT'{os = <<"kalle">>,bool=true}, 71 #'XSetNT'{os = <<"kalle">>,bool=true}], 72 ximp=[#'XSetImp'{os = <<"kalle">>,bool=true}, 73 #'XSetImp'{os = <<"kalle">>,bool=true}], 74 xexp=[#'XSetExp'{os = <<"kalle">>,bool=true}, 75 #'XSetExp'{os = <<"kalle">>,bool=true}]}), 76 roundtrip('SetTagExpX', #'SetTagExpX'{xnt=[#'XSetNT'{os = <<"kalle">>,bool=true}, 77 #'XSetNT'{os = <<"kalle">>,bool=true}], 78 ximp=[#'XSetImp'{os = <<"kalle">>,bool=true}, 79 #'XSetImp'{os = <<"kalle">>,bool=true}], 80 xexp=[#'XSetExp'{os = <<"kalle">>,bool=true}, 81 #'XSetExp'{os = <<"kalle">>,bool=true}]}), 82 ok. 83 84roundtrip(T, V) -> 85 asn1_test_lib:roundtrip('SetOfTag', T, V). 86