From 6af68006ccdd60f320481e02feffc4283192f05c Mon Sep 17 00:00:00 2001 From: Antony Videtta Date: Wed, 11 Dec 2019 16:50:07 +1300 Subject: [PATCH] ISSUE: 69-4 automation test --- tests/unit/JSONDataFormatterTest.php | 40 ++----------------- tests/unit/JSONDataFormatterTest.yml | 13 ------ .../Stubs/JSONDataFormatterTypeTestObject.php | 0 3 files changed, 3 insertions(+), 50 deletions(-) mode change 100644 => 100755 tests/unit/JSONDataFormatterTest.yml mode change 100644 => 100755 tests/unit/Stubs/JSONDataFormatterTypeTestObject.php diff --git a/tests/unit/JSONDataFormatterTest.php b/tests/unit/JSONDataFormatterTest.php index 9b53016..1595967 100755 --- a/tests/unit/JSONDataFormatterTest.php +++ b/tests/unit/JSONDataFormatterTest.php @@ -4,10 +4,7 @@ namespace SilverStripe\RestfulServer\Tests; use SilverStripe\RestfulServer\RestfulServer; use SilverStripe\ORM\DataObject; -use SilverStripe\RestfulServer\Tests\Stubs\JSONDataFormatterTypeTestObject_1; use SilverStripe\RestfulServer\Tests\Stubs\JSONDataFormatterTypeTestObject; -use SilverStripe\RestfulServer\Tests\Stubs\JSONDataFormatterTypeTestObject_2; -use SilverStripe\RestfulServer\Tests\Stubs\JSONDataFormatterTypeTestObject_3; use SilverStripe\Dev\SapphireTest; use SilverStripe\RestfulServer\DataFormatter\JSONDataFormatter; @@ -32,40 +29,9 @@ class JSONDataFormatterTest extends SapphireTest $formatter = new JSONDataFormatter(); $parent = $this->objFromFixture(JSONDataFormatterTypeTestObject::class, 'parent'); $json = $formatter->convertDataObject($parent); - - $this->assertRegexp('/"ID":\d+/', $json, 'PK casted to integer'); - $this->assertRegexp('/"Created":"\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}"/', $json, 'Datetime casted to string'); - $this->assertContains('"Name":"Parent"', $json, 'String casted to string'); - $this->assertContains('"Active":true', $json, 'Boolean casted to boolean'); - $this->assertContains('"Sort":17', $json, 'Integer casted to integer'); - $this->assertContains('"Average":1.2345', $json, 'Float casted to float'); - $this->assertContains('"ParentID":0', $json, 'Empty FK is 0'); - - $child3 = $this->objFromFixture(JSONDataFormatterTypeTestObject::class, 'child3'); - $json = $formatter->convertDataObject($child3); - $this->assertContains('"Name":null', $json, 'Empty string is null'); - $this->assertContains('"Active":false', $json, 'Empty boolean is false'); - $this->assertContains('"Sort":0', $json, 'Empty integer is 0'); - $this->assertContains('"Average":0', $json, 'Empty float is 0'); - $this->assertRegexp('/"ParentID":\d+/', $json, 'FK casted to integer'); - - - // Test convertDataObjectToJSONObject - $parent = $this->objFromFixture(JSONDataFormatterTypeTestObject::class, 'parent'); - $JsonObject = $formatter->convertDataObjectToJSONObject($parent); - $JsonObjectArray = json_encode($JsonObject); - - $this->assertEquals('string', gettype($JsonObjectArray)); // is not null - $this->assertRegexp('/"ID":\d+/', $JsonObjectArray, 'PK casted to integer'); - $this->assertRegexp('/"LastEdited":"\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}"/', $JsonObjectArray, 'Datetime casted to string'); - $this->assertRegexp('/"Created":"\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}"/', $JsonObjectArray, 'Datetime casted to string'); - - $this->assertContains('"Name":"Parent"', $JsonObjectArray, 'String casted to string'); - $this->assertContains('"Active":true', $JsonObjectArray, 'Boolean casted to boolean'); - $this->assertContains('"Sort":17', $JsonObjectArray, 'Integer casted to integer'); - $this->assertContains('"Average":1.2345', $JsonObjectArray, 'Float casted to float'); - $this->assertContains('"ParentID":0', $JsonObjectArray, 'Empty FK is 0'); - + $this->assertContains('"Active":true', $json, 'boolean is false'); + $this->assertContains('"Sort":17', $json, 'Empty integer is 0'); + $this->assertContains('"Average":1.2345', $json, 'Empty float is 0'); } } diff --git a/tests/unit/JSONDataFormatterTest.yml b/tests/unit/JSONDataFormatterTest.yml old mode 100644 new mode 100755 index 4c6f2f8..743b896 --- a/tests/unit/JSONDataFormatterTest.yml +++ b/tests/unit/JSONDataFormatterTest.yml @@ -4,17 +4,4 @@ SilverStripe\RestfulServer\Tests\Stubs\JSONDataFormatterTypeTestObject: Active: true Sort: 17 Average: 1.2345 - child1: - Name: Child 1 - Active: 1 - Sort: 4 - Average: 6.78 - Parent: =>SilverStripe\RestfulServer\Tests\Stubs\JSONDataFormatterTypeTestObject.parent - child2: - Name: Child 2 - Active: false - Sort: 9 - Average: 1 - Parent: =>SilverStripe\RestfulServer\Tests\Stubs\JSONDataFormatterTypeTestObject.parent - child3: Parent: =>SilverStripe\RestfulServer\Tests\Stubs\JSONDataFormatterTypeTestObject.parent diff --git a/tests/unit/Stubs/JSONDataFormatterTypeTestObject.php b/tests/unit/Stubs/JSONDataFormatterTypeTestObject.php old mode 100644 new mode 100755