public function testToArray() { $object = new stdClass(); $object->foo = 'bar'; $object->baz = new stdClass(); $object->baz->bat = 'bazbat'; $expected = ObjectUtils::toArray($object); $this->trait->setProxy($object); $this->assertSame($expected, $this->trait->toArray()); }
public function testTransformKeys() { $object = <<<OBJ { "first-name": "Frankie", "surname": "Manning", "meta": { "created-at": "2015-01-01", "updated-at": "2015-02-01" }, "associates": [ { "first-name": "Ella", "surname": "Fitzgerald" }, { "first-name": "Chick", "surname": "Webb" } ] } OBJ; $expected = <<<OBJ { "first_name": "Frankie", "surname": "Manning", "meta": { "created_at": "2015-01-01", "updated_at": "2015-02-01" }, "associates": [ { "first_name": "Ella", "surname": "Fitzgerald" }, { "first_name": "Chick", "surname": "Webb" } ] } OBJ; $object = $this->toObject($object); $actual = ObjectUtils::transformKeys($object, function ($key) { return is_int($key) ? $key : str_replace('-', '_', $key); }); $this->assertEquals($this->toObject($expected), $actual); $this->assertSame($object, $actual); $this->assertSame($object->meta, $actual->meta); }
/** * Assert that the resource's relationships contains the provided subset. * * @param object|array $expected * @param string|null $message * @return $this */ public function assertRelationshipsSubset($expected, $message = null) { $expected = ObjectUtils::toArray($expected); $actual = ObjectUtils::toArray($this->getRelationships() ?: []); $message = $message ? $this->withIndex($message) : $this->withIndex('Unexpected resource relationships') . ': ' . json_encode($actual); PHPUnit::assertArraySubset($expected, $actual, $message); return $this; }
/** * @return array */ public function toArray() { return ObjectUtils::toArray($this->getProxy()); }