summaryrefslogtreecommitdiff
path: root/test/ratnest-tests.ads
blob: e72bfe748a384d0345dab1f0e0c5aaa9d110d271 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165


package Ratnest.Tests is


    package Errors is

        function Valid_Message_Check return Test_Result;
        function Valid_Identifier_Check return Test_Result;
        function Join_Check return Test_Result;
        function Encode_1_Check return Test_Result;
        function Encode_2_Check return Test_Result;
        function Encode_3_Check return Test_Result;
        function Encode_4_Check return Test_Result;
        function Decode_Check return Test_Result;

        Tests : Test_Array :=
           ((+"Valid_Message", Valid_Message_Check'Access),
            (+"Valid_Identifier", Valid_Identifier_Check'Access),
            (+"Join", Join_Check'Access),
            (+"Encode_1", Encode_1_Check'Access),
            (+"Encode_2", Encode_2_Check'Access),
            (+"Encode_3", Encode_3_Check'Access),
            (+"Encode_4", Encode_4_Check'Access),
            (+"Decode", Decode_Check'Access));

    end Errors;




    package Tokens is

        function Adjust_Check return Test_Result;
        function Equals_Check return Test_Result;
        function Store_Check return Test_Result;

        Tests : Test_Array :=
           ((+"Adjust", Adjust_Check'Access),
            (+"Equals", Equals_Check'Access),
            (+"Storage", Store_Check'Access));

    end Tokens;




    package Lexer is

        function Join_Check return Test_Result;
        function Equals_Check return Test_Result;

        function Sequence_Check return Test_Result;
        function Count_Check return Test_Result;
        function Many_Check return Test_Result;
        function Many_Until_Check return Test_Result;

        function Satisfy_Check return Test_Result;
        function Satisfy_With_Check return Test_Result;
        function Match_Check return Test_Result;
        function Match_With_Check return Test_Result;
        function Multimatch_Check return Test_Result;
        function Take_Check return Test_Result;
        function Take_While_Check return Test_Result;
        function Take_Until_Check return Test_Result;

        function Line_End_Check return Test_Result;
        function Input_End_Check return Test_Result;

        Combinator_Tests : Test_Array :=
           ((+"Join", Join_Check'Access),
            (+"Equals", Equals_Check'Access),
            (+"Sequence", Sequence_Check'Access),
            (+"Count", Count_Check'Access),
            (+"Many", Many_Check'Access),
            (+"Many_Until", Many_Until_Check'Access),
            (+"Satisfy", Satisfy_Check'Access),
            (+"Satisfy With", Satisfy_With_Check'Access),
            (+"Match", Match_Check'Access),
            (+"Match With", Match_With_Check'Access),
            (+"Multimatch", Multimatch_Check'Access),
            (+"Take", Take_Check'Access),
            (+"Take While", Take_While_Check'Access),
            (+"Take Until", Take_Until_Check'Access),
            (+"Line End", Line_End_Check'Access),
            (+"Input_End", Input_End_Check'Access));


        function Stamp_Check return Test_Result;
        function Ignore_Check return Test_Result;

        function Scan_Check return Test_Result;
        function Scan_Only_Check return Test_Result;
        function Scan_With_Check return Test_Result;
        function Scan_Set_Check return Test_Result;
        function Scan_Set_With_Check return Test_Result;

        function Scan_Error_Check return Test_Result;
        function Scan_Only_Error_Check return Test_Result;
        function Scan_With_Error_Check return Test_Result;
        function Scan_Set_Error_Check return Test_Result;
        function Scan_Set_With_Error_Check return Test_Result;

        Lexer_Tests : Test_Array :=
           ((+"Stamp", Stamp_Check'Access),
            (+"Ignore", Ignore_Check'Access),
            (+"Scan", Scan_Check'Access),
            (+"Scan_Only", Scan_Only_Check'Access),
            (+"Scan_With", Scan_With_Check'Access),
            (+"Scan_Set", Scan_Set_Check'Access),
            (+"Scan_Set_With", Scan_Set_With_Check'Access),
            (+"Scan Exception", Scan_Error_Check'Access),
            (+"Scan_Only Exception", Scan_Only_Error_Check'Access),
            (+"Scan_With Exception", Scan_With_Error_Check'Access),
            (+"Scan_Set Exception", Scan_Set_Error_Check'Access),
            (+"Scan_Set_With Exception", Scan_Set_With_Error_Check'Access));

    end Lexer;




    package Util is

        function In_Set_Check return Test_Result;
        function Not_In_Set_Check return Test_Result;

        Set_Predicate_Tests : Test_Array :=
           ((+"In_Set", In_Set_Check'Access),
            (+"Not_In_Set", Not_In_Set_Check'Access));


        function Is_Digit_Check return Test_Result;
        function Is_Hex_Check return Test_Result;
        function Is_Letter_Check return Test_Result;
        function Is_Alphanumeric_Check return Test_Result;
        function Is_Punctuation_Check return Test_Result;
        function Is_ASCII_Check return Test_Result;
        function Is_Extended_ASCII_Check return Test_Result;
        function Is_Space_Check return Test_Result;
        function Is_Linespace_Check return Test_Result;
        function Is_End_Of_Line_Check return Test_Result;
        function Is_Whitespace_Check return Test_Result;
        function Not_Whitespace_Check return Test_Result;

        Predicate_Tests : Test_Array :=
           ((+"Is_Digit", Is_Digit_Check'Access),
            (+"Is_Hex", Is_Hex_Check'Access),
            (+"Is_Letter", Is_Letter_Check'Access),
            (+"Is_Alphanumeric", Is_Alphanumeric_Check'Access),
            (+"Is_Punctuation", Is_Punctuation_Check'Access),
            (+"Is_ASCII", Is_ASCII_Check'Access),
            (+"Is_Extended_ASCII", Is_Extended_ASCII_Check'Access),
            (+"Is_Space", Is_Space_Check'Access),
            (+"Is_Linespace", Is_Linespace_Check'Access),
            (+"Is_End_Of_Line", Is_End_Of_Line_Check'Access),
            (+"Is_Whitespace", Is_Whitespace_Check'Access),
            (+"Not_Whitespace", Not_Whitespace_Check'Access));

    end Util;


end Ratnest.Tests;