Skip to content

Commit 69e9cdd

Browse files
committed
Add tests for double-coercion array cases
1 parent 9099c23 commit 69e9cdd

File tree

1 file changed

+10
-0
lines changed

1 file changed

+10
-0
lines changed

tests/Constraints/CoerciveTest.php

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,8 @@ public function testValidCoerceCases($input, $schema, $errors = array())
6868
$this->assertTrue(gettype($value->numberArray) == 'integer');
6969
$this->assertTrue(gettype($value->boolArray) == 'boolean');
7070
$this->assertTrue(gettype($value->nullArray) == 'NULL');
71+
$this->assertTrue(gettype($value->doubleCoercion) == 'array');
72+
$this->assertTrue(gettype($value->doubleCoercion2) == 'integer');
7173

7274
$validator->validate($value, $schema, $checkMode);
7375

@@ -91,6 +93,8 @@ public function testValidCoerceCases($input, $schema, $errors = array())
9193
$this->assertTrue(gettype($value->numberArray) == 'array');
9294
$this->assertTrue(gettype($value->boolArray) == 'array');
9395
$this->assertTrue(gettype($value->nullArray) == 'array');
96+
$this->assertTrue(gettype($value->doubleCoercion) == 'integer');
97+
$this->assertTrue(gettype($value->doubleCoercion2) == 'array');
9498

9599
$this->assertTrue(gettype($value->multitype1) == 'boolean');
96100
$this->assertTrue(gettype($value->multitype2) == 'double');
@@ -117,6 +121,8 @@ public function testValidCoerceCases($input, $schema, $errors = array())
117121
$this->assertTrue($value->numberArray === array(45));
118122
$this->assertTrue($value->boolArray === array(true));
119123
$this->assertTrue($value->nullArray === array(null));
124+
$this->assertTrue($value->doubleCoercion === 45);
125+
$this->assertTrue($value->doubleCoercion2 === array('45'));
120126

121127
$this->assertTrue($validator->isValid(), print_r($validator->getErrors(), true));
122128
}
@@ -187,6 +193,8 @@ public function getValidCoerceTests()
187193
"numberArray":45,
188194
"boolArray":true,
189195
"nullArray":null,
196+
"doubleCoercion":["45"],
197+
"doubleCoercion2":45,
190198
"null":null,
191199
"any": "string",
192200
"allOf": "1",
@@ -227,6 +235,8 @@ public function getValidCoerceTests()
227235
"numberArray":{"type":"array"},
228236
"boolArray":{"type":"array"},
229237
"nullArray":{"type":"array"},
238+
"doubleCoercion":{"type":"number"},
239+
"doubleCoercion2":{"type":"array","items":[{"type":"string"}]},
230240
"null":{"type":"null"},
231241
"any": {"type":"any"},
232242
"allOf" : {"allOf":[{

0 commit comments

Comments
 (0)