aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorBjörn Gustavsson <[email protected]>2013-06-07 05:59:29 +0200
committerBjörn Gustavsson <[email protected]>2013-06-07 07:05:34 +0200
commit65ca805b615ef076e77f28316f4d4cd5ee11479c (patch)
treeca002b9c0a3c6cd8f930d7dc84724cbe5dfde547 /lib
parent9b04c2649ce98c32335c05e90d501c2e66bb2f0e (diff)
downloadotp-65ca805b615ef076e77f28316f4d4cd5ee11479c.tar.gz
otp-65ca805b615ef076e77f28316f4d4cd5ee11479c.tar.bz2
otp-65ca805b615ef076e77f28316f4d4cd5ee11479c.zip
Add asn1_test_lib:hex_to_bin/1
Diffstat (limited to 'lib')
-rw-r--r--lib/asn1/test/asn1_test_lib.erl12
1 files changed, 12 insertions, 0 deletions
diff --git a/lib/asn1/test/asn1_test_lib.erl b/lib/asn1/test/asn1_test_lib.erl
index b839dfcf2a..7d7364e2a4 100644
--- a/lib/asn1/test/asn1_test_lib.erl
+++ b/lib/asn1/test/asn1_test_lib.erl
@@ -22,6 +22,7 @@
-export([compile/3]).
-export([compile_all/3]).
-export([compile_erlang/3]).
+-export([hex_to_bin/1]).
-export([ticket_7407_compile/2,ticket_7407_code/1, ticket_7678/2,
ticket_7708/2, ticket_7763/1, ticket_7876/3]).
@@ -61,6 +62,13 @@ compile_erlang(Mod, Config, Options) ->
{ok, M} = compile:file(filename:join(DataDir, Mod),
[report,{i,CaseDir},{outdir,CaseDir}|Options]).
+hex_to_bin(S) ->
+ << <<(hex2num(C)):4>> || C <- S, C =/= $\s >>.
+
+%%%
+%%% Internal functions.
+%%%
+
should_load(File, Options) ->
case lists:member(abs, Options) of
true ->
@@ -79,6 +87,10 @@ strip_extension(File, Ext) when Ext == ".asn"; Ext == ".set"; Ext == ".asn1"->
strip_extension(File, _Ext) ->
File.
+hex2num(C) when $0 =< C, C =< $9 -> C - $0;
+hex2num(C) when $A =< C, C =< $F -> C - $A + 10;
+hex2num(C) when $a =< C, C =< $f -> C - $a + 10.
+
ticket_7407_compile(Config,Option) ->
?line DataDir = ?config(data_dir,Config),