Skip to content

Commit 3ccced1

Browse files
committed
Add more tests
1 parent cc5a673 commit 3ccced1

File tree

6 files changed

+766
-162
lines changed

6 files changed

+766
-162
lines changed

tests/Feature/Type/bool-false.feature

+113-29
Large diffs are not rendered by default.

tests/Feature/Type/bool-true.feature

+113-29
Original file line numberDiff line numberDiff line change
@@ -10,29 +10,57 @@ Feature: Checking the "true" (TypeLang\Mapper\Type\BoolLiteralType) type behavio
1010
Then match of "<value>" must return <is_matched>
1111
Examples:
1212
| value | is_matched |
13+
# default checks
14+
## int
15+
| 42 | false |
1316
| 1 | false |
14-
| -1 | false |
1517
| 0 | false |
16-
| 42 | false |
17-
| 42.1 | false |
18+
| -1 | false |
19+
| -42 | false |
20+
## numeric int string
21+
| "42" | false |
22+
| "1" | false |
23+
| "0" | false |
24+
| "-1" | false |
25+
| "-42" | false |
26+
## float
27+
| 42.5 | false |
28+
| 42.0 | false |
1829
| 1.0 | false |
1930
| 0.0 | false |
2031
| -1.0 | false |
32+
| -42.0 | false |
33+
| -42.5 | false |
34+
## numeric float string
35+
| "42.5" | false |
36+
| "42.0" | false |
37+
| "1.0" | false |
38+
| "0.0" | false |
39+
| "-1.0" | false |
40+
| "-42.0" | false |
41+
| "-42.5" | false |
42+
## extra float
2143
| INF | false |
2244
| -INF | false |
2345
| NAN | false |
24-
| "1" | false |
25-
| "0" | false |
26-
| "string" | false |
27-
| "true" | false |
28-
| "false" | false |
29-
| "" | false |
46+
## null
3047
| null | false |
48+
## bool
3149
| true | true |
3250
| false | false |
51+
## bool string
52+
| "true" | false |
53+
| "false" | false |
54+
## string
55+
| "non empty" | false |
56+
| "" | false |
57+
## array
3358
| [] | false |
34-
| [1] | false |
59+
| [0 => 23] | false |
60+
| ['key' => 42] | false |
61+
## object
3562
| (object)[] | false |
63+
## enum
3664
| TypeLang\Mapper\Tests\Stub\IntBackedEnumStub::CASE | false |
3765
| TypeLang\Mapper\Tests\Stub\StringBackedEnumStub::CASE | false |
3866
| TypeLang\Mapper\Tests\Stub\UnitEnumStub::CASE | false |
@@ -42,29 +70,57 @@ Feature: Checking the "true" (TypeLang\Mapper\Type\BoolLiteralType) type behavio
4270
Then cast of "<value>" must return <result>
4371
Examples:
4472
| value | result |
73+
# default checks
74+
## int
75+
| 42 | true |
4576
| 1 | true |
46-
| -1 | true |
4777
| 0 | <error: Passed value 0 is invalid> |
48-
| 42 | true |
49-
| 42.1 | true |
78+
| -1 | true |
79+
| -42 | true |
80+
## numeric int string
81+
| "42" | true |
82+
| "1" | true |
83+
| "0" | <error: Passed value "0" is invalid> |
84+
| "-1" | true |
85+
| "-42" | true |
86+
## float
87+
| 42.5 | true |
88+
| 42.0 | true |
5089
| 1.0 | true |
5190
| 0.0 | <error: Passed value 0 is invalid> |
5291
| -1.0 | true |
92+
| -42.0 | true |
93+
| -42.5 | true |
94+
## numeric float string
95+
| "42.5" | true |
96+
| "42.0" | true |
97+
| "1.0" | true |
98+
| "0.0" | true |
99+
| "-1.0" | true |
100+
| "-42.0" | true |
101+
| "-42.5" | true |
102+
## extra float
53103
| INF | true |
54104
| -INF | true |
55105
| NAN | true |
56-
| "1" | true |
57-
| "0" | <error: Passed value "0" is invalid> |
58-
| "string" | true |
59-
| "true" | true |
60-
| "false" | true |
61-
| "" | <error: Passed value "" is invalid> |
106+
## null
62107
| null | <error: Passed value null is invalid> |
108+
## bool
63109
| true | true |
64110
| false | <error: Passed value false is invalid> |
111+
## bool string
112+
| "true" | true |
113+
| "false" | true |
114+
## string
115+
| "non empty" | true |
116+
| "" | <error: Passed value "" is invalid> |
117+
## array
65118
| [] | <error: Passed value [] is invalid> |
66-
| [1] | true |
119+
| [0 => 23] | true |
120+
| ['key' => 42] | true |
121+
## object
67122
| (object)[] | true |
123+
## enum
68124
| TypeLang\Mapper\Tests\Stub\IntBackedEnumStub::CASE | true |
69125
| TypeLang\Mapper\Tests\Stub\StringBackedEnumStub::CASE | true |
70126
| TypeLang\Mapper\Tests\Stub\UnitEnumStub::CASE | true |
@@ -74,29 +130,57 @@ Feature: Checking the "true" (TypeLang\Mapper\Type\BoolLiteralType) type behavio
74130
Then cast of "<value>" must return <result>
75131
Examples:
76132
| value | result |
133+
# default checks
134+
## int
135+
| 42 | <error: Passed value 42 is invalid> |
77136
| 1 | <error: Passed value 1 is invalid> |
78137
| 0 | <error: Passed value 0 is invalid> |
79138
| -1 | <error: Passed value -1 is invalid> |
80-
| 42 | <error: Passed value 42 is invalid> |
81-
| 42.1 | <error: Passed value 42.1 is invalid> |
139+
| -42 | <error: Passed value -42 is invalid> |
140+
## numeric int string
141+
| "42" | <error: Passed value "42" is invalid> |
142+
| "1" | <error: Passed value "1" is invalid> |
143+
| "0" | <error: Passed value "0" is invalid> |
144+
| "-1" | <error: Passed value "-1" is invalid> |
145+
| "-42" | <error: Passed value "-42" is invalid> |
146+
## float
147+
| 42.5 | <error: Passed value 42.5 is invalid> |
148+
| 42.0 | <error: Passed value 42 is invalid> |
82149
| 1.0 | <error: Passed value 1 is invalid> |
83150
| 0.0 | <error: Passed value 0 is invalid> |
84151
| -1.0 | <error: Passed value -1 is invalid> |
152+
| -42.0 | <error: Passed value -42 is invalid> |
153+
| -42.5 | <error: Passed value -42.5 is invalid> |
154+
## numeric float string
155+
| "42.5" | <error: Passed value "42.5" is invalid> |
156+
| "42.0" | <error: Passed value "42.0" is invalid> |
157+
| "1.0" | <error: Passed value "1.0" is invalid> |
158+
| "0.0" | <error: Passed value "0.0" is invalid> |
159+
| "-1.0" | <error: Passed value "-1.0" is invalid> |
160+
| "-42.0" | <error: Passed value "-42.0" is invalid> |
161+
| "-42.5" | <error: Passed value "-42.5" is invalid> |
162+
## extra float
85163
| INF | <error: Passed value INF is invalid> |
86164
| -INF | <error: Passed value -INF is invalid> |
87165
| NAN | <error: Passed value NAN is invalid> |
88-
| "1" | <error: Passed value "1" is invalid> |
89-
| "0" | <error: Passed value "0" is invalid> |
90-
| "string" | <error: Passed value "string" is invalid> |
91-
| "true" | <error: Passed value "true" is invalid> |
92-
| "false" | <error: Passed value "false" is invalid> |
93-
| "" | <error: Passed value "" is invalid> |
166+
## null
94167
| null | <error: Passed value null is invalid> |
168+
## bool
95169
| true | true |
96170
| false | <error: Passed value false is invalid> |
171+
## bool string
172+
| "true" | <error: Passed value "true" is invalid> |
173+
| "false" | <error: Passed value "false" is invalid> |
174+
## string
175+
| "non empty" | <error: Passed value "non empty" is invalid> |
176+
| "" | <error: Passed value "" is invalid> |
177+
## array
97178
| [] | <error: Passed value [] is invalid> |
98-
| [1] | <error: Passed value [1] is invalid> |
179+
| [0 => 23] | <error: Passed value [23] is invalid> |
180+
| ['key' => 42] | <error: Passed value {"key": 42} is invalid> |
181+
## object
99182
| (object)[] | <error: Passed value {} is invalid> |
183+
## enum
100184
| TypeLang\Mapper\Tests\Stub\IntBackedEnumStub::CASE | <error: Passed value {"name": "CASE", "value": 3735928559} is invalid> |
101185
| TypeLang\Mapper\Tests\Stub\StringBackedEnumStub::CASE | <error: Passed value {"name": "CASE", "value": "case"} is invalid> |
102186
| TypeLang\Mapper\Tests\Stub\UnitEnumStub::CASE | <error: Passed value {"name": "CASE"} is invalid> |

0 commit comments

Comments
 (0)