~statik/ubuntu/maverick/erlang/erlang-merge-testing

« back to all changes in this revision

Viewing changes to lib/asn1/test/testDef.erl

  • Committer: Elliot Murphy
  • Date: 2010-06-08 03:55:44 UTC
  • mfrom: (3.5.6 squeeze)
  • Revision ID: elliot@elliotmurphy.com-20100608035544-dd8zh2swk7jr5rz2
* Merge with Debian unstable; remaining Ubuntu changes:
  - Drop libwxgtk2.8-dev build dependency. Wx isn't in main, and not
    supposed to. (LP #438365)
  - Drop erlang-wx binary.
  - Drop erlang-wx dependency from -megaco, -common-test, and -reltool, they
    do not really need wx. Also drop it from -debugger; the GUI needs wx,
    but it apparently has CLI bits as well, and is also needed by -megaco,
    so let's keep the package for now.
* Added missing symlinks to /usr/include for a few new header files.
* Fixed generation of ${erlang-base:Depends} and ${erlang-x11:Depends}
  substitution variables.
* Added a fix for a re:compile/2 crash on a long regular expression.
* Changed urgency to medium as the change fixes a security bug.
* Manpages in section 1 are needed even if only arch-dependent packages are
  built. So, re-enabled them.
* Fixed HiPE architecture recognition for powerpc Debian architecture.
* Moved xsltproc and fop to build-depends-indep and do not build
  documentation if only architecture-specific packages are built.
* Refreshed all patches.
* Made Emacs look in man5 and man7 for Erlang manpages and added code
  skeleton files to erlang-mode package.
* New upstream release.
* Moved manpages from incorrect sections 4 and 6 to correct 5 and 7
  (closes: #498492).
* Made manpages regexp in Emacs mode match only 3erl pages in section 3.
* Removed docb_gen script which is no longer needed to build manpages.
* Added erlang-doc package which contains documentation in HTML and PDF
  formats. This package replaces erlang-doc-html package and it's easier
  to synchronize it with the main Erlang packages as it's built from
  a single source package (closes: #558451).
* Removed RPATH from ssl and crypto application binaries as required by
  Debian policy.
* Added libwxgtk2.4-dev and libwxgtk2.6-dev to build conflicts.
* Added a few dpendencies for erlang-dialyzer, erlang-et, erlang-observer
  and erlang-examples packages which now call functions from more modules
  than in 1:13.b.3.
* Added a workaround which disables vfork() for hppa architecture
  (closes: #562218).
* Strictened check for JDK 1.5 adding a call to String(int[], int, int)
  because GCJ 4.4 doesn't implement it and OpenJDK isn't available for all
  architectures.
* Fixed erlang-manpages package section.
* Made erlang-depends add only substvars which are requested in
  debian/control file. This minimizes number of warnings from dh_gencontrol.
  Also, improved descriptions of the functions in erlang-depends escript.
* Added erlang-erl-docgen package to erlang-nox dependencies.
* Made dummy packages erlang-nox and erlang-x11 architecture all.
* Cleaned up working with custom substitution variables in debian/rules.
* Reorganized debian/rules to ensure that manpages arent built twice, and
  aren't built at all if only architecture-dependent packages are requested.
* Fixed project links in README.Debian.
* Added a new package erlang-jinterface which provides tools for
  communication of Java programs with Erlang processes. This adds build
  depandency on default-jdk and as a result enables Java module for IDL
  compiler.
* Bumped standards version to 3.8.4.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
%%
 
2
%% %CopyrightBegin%
 
3
%% 
 
4
%% Copyright Ericsson AB 1997-2009. All Rights Reserved.
 
5
%% 
 
6
%% The contents of this file are subject to the Erlang Public License,
 
7
%% Version 1.1, (the "License"); you may not use this file except in
 
8
%% compliance with the License. You should have received a copy of the
 
9
%% Erlang Public License along with this software. If not, it can be
 
10
%% retrieved online at http://www.erlang.org/.
 
11
%% 
 
12
%% Software distributed under the License is distributed on an "AS IS"
 
13
%% basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
 
14
%% the License for the specific language governing rights and limitations
 
15
%% under the License.
 
16
%% 
 
17
%% %CopyrightEnd%
 
18
%%
 
19
%%
 
20
-module(testDef).
 
21
 
 
22
-export([compile/3]).
 
23
-export([main/1]).
 
24
 
 
25
-include("test_server.hrl").
 
26
 
 
27
-record('Def1',{bool0, 
 
28
                bool1 = asn1_DEFAULT, 
 
29
                bool2 = asn1_DEFAULT, 
 
30
                bool3 = asn1_DEFAULT}).
 
31
-record('Def2',{bool10, 
 
32
                bool11 = asn1_DEFAULT, 
 
33
                bool12 = asn1_DEFAULT, 
 
34
                bool13}).
 
35
-record('Def3',{bool30 = asn1_DEFAULT, 
 
36
                bool31 = asn1_DEFAULT, 
 
37
                bool32 = asn1_DEFAULT, 
 
38
                bool33 = asn1_DEFAULT}).
 
39
 
 
40
 
 
41
compile(Config,Rules,Options) ->
 
42
 
 
43
    ?line DataDir = ?config(data_dir,Config),
 
44
    ?line OutDir = ?config(priv_dir,Config),
 
45
    ?line true = code:add_patha(?config(priv_dir,Config)),
 
46
    ?line ok = asn1ct:compile(DataDir ++ "Def",[Rules,{outdir,OutDir}]++Options).
 
47
 
 
48
 
 
49
 
 
50
main(_Rules) ->
 
51
    
 
52
    ?line {ok,Bytes11} = asn1_wrapper:encode('Def','Def1',#'Def1'{bool0 = true,
 
53
                                                            bool1 = true,
 
54
                                                            bool2 = true,
 
55
                                                            bool3 = true}),
 
56
    ?line {ok,{'Def1',true,true,true,true}} = 
 
57
        asn1_wrapper:decode('Def','Def1',lists:flatten(Bytes11)),
 
58
    
 
59
    ?line {ok,Bytes12} = asn1_wrapper:encode('Def','Def1',#'Def1'{bool0 = true}),
 
60
    ?line {ok,{'Def1',true,false,false,false}} = 
 
61
        asn1_wrapper:decode('Def','Def1',lists:flatten(Bytes12)),
 
62
    
 
63
    ?line {ok,Bytes13} = asn1_wrapper:encode('Def','Def1',#'Def1'{bool0 = true,
 
64
                                                            bool2 = false}),
 
65
    ?line {ok,{'Def1',true,false,false,false}} = 
 
66
        asn1_wrapper:decode('Def','Def1',lists:flatten(Bytes13)),
 
67
    
 
68
    ?line {ok,Bytes14} = asn1_wrapper:encode('Def','Def1',#'Def1'{bool0 = false,
 
69
                                                            bool3 = false}),
 
70
    ?line {ok,{'Def1',false,false,false,false}} = 
 
71
        asn1_wrapper:decode('Def','Def1',lists:flatten(Bytes14)),
 
72
    
 
73
    
 
74
    
 
75
    
 
76
    ?line {ok,Bytes21} = asn1_wrapper:encode('Def','Def2',#'Def2'{bool10 = false,
 
77
                                                            bool11 = false,
 
78
                                                            bool12 = false,
 
79
                                                            bool13 = false}),
 
80
    ?line {ok,{'Def2',false,false,false,false}} = 
 
81
        asn1_wrapper:decode('Def','Def2',lists:flatten(Bytes21)),
 
82
    
 
83
    ?line {ok,Bytes22} = asn1_wrapper:encode('Def','Def2',#'Def2'{bool10 = true,
 
84
                                                            bool13 = false}),
 
85
    ?line {ok,{'Def2',true,false,false,false}} = 
 
86
        asn1_wrapper:decode('Def','Def2',lists:flatten(Bytes22)),
 
87
    
 
88
    ?line {ok,Bytes23} = asn1_wrapper:encode('Def','Def2',#'Def2'{bool10 = true,
 
89
                                                            bool11 = false,
 
90
                                                            bool13 = false}),
 
91
    ?line {ok,{'Def2',true,false,false,false}} = 
 
92
        asn1_wrapper:decode('Def','Def2',lists:flatten(Bytes23)),
 
93
    
 
94
    ?line {ok,Bytes24} = asn1_wrapper:encode('Def','Def2',#'Def2'{bool10 = false,
 
95
                                                            bool12 = false,
 
96
                                                            bool13 = false}),
 
97
    ?line {ok,{'Def2',false,false,false,false}} = 
 
98
        asn1_wrapper:decode('Def','Def2',lists:flatten(Bytes24)),
 
99
    
 
100
    
 
101
    
 
102
    
 
103
    ?line {ok,Bytes31} = asn1_wrapper:encode('Def','Def3',#'Def3'{bool30 = false,
 
104
                                                            bool31 = false,
 
105
                                                            bool32 = false,
 
106
                                                            bool33 = false}),
 
107
    ?line {ok,{'Def3',false,false,false,false}} = 
 
108
        asn1_wrapper:decode('Def','Def3',lists:flatten(Bytes31)),
 
109
    
 
110
    ?line {ok,Bytes32} = asn1_wrapper:encode('Def','Def3',#'Def3'{}),
 
111
    ?line {ok,{'Def3',false,false,false,false}} = 
 
112
        asn1_wrapper:decode('Def','Def3',lists:flatten(Bytes32)),
 
113
    
 
114
    ?line {ok,Bytes33} = asn1_wrapper:encode('Def','Def3',#'Def3'{bool30 = true}),
 
115
    ?line {ok,{'Def3',true,false,false,false}} = 
 
116
        asn1_wrapper:decode('Def','Def3',lists:flatten(Bytes33)),
 
117
    
 
118
    ?line {ok,Bytes34} = asn1_wrapper:encode('Def','Def3',#'Def3'{bool32 = false}),
 
119
    ?line {ok,{'Def3',false,false,false,false}} = 
 
120
        asn1_wrapper:decode('Def','Def3',lists:flatten(Bytes34)),
 
121
    
 
122
    ?line {ok,Bytes35} = asn1_wrapper:encode('Def','Def3',#'Def3'{bool33 = false}),
 
123
    ?line {ok,{'Def3',false,false,false,false}} = 
 
124
        asn1_wrapper:decode('Def','Def3',lists:flatten(Bytes35)),
 
125
    
 
126
    
 
127
    
 
128
    ok.