/** * Test the MockPersistent::findOne() method. * * @param array $expected * @param array $criteria * @param array $fields * * @dataProvider providerFindOne * @group model */ public function testFindOne($expected, $criteria, $fields) { /** @var MockPersistent $object */ $object = MockPersistent::findOne($criteria, [], $this->fixture); $this->assertEquals($expected, $object->toArray($fields)); }
/** * Test a RESTful PUT request on a RestfulItem * * @param array $data * * @group controller * * @dataProvider providerPut */ public function testPut(array $data) { /** @var MockPersistent $itemObj */ $itemObj = MockPersistent::findOne(['name' => $data['name']], [], $this->fixture); $this->mockEnvironment(['PATH_INFO' => '/collection/' . $itemObj->_id, 'REQUEST_METHOD' => 'PUT', 'CONTENT_TYPE' => 'application/json', 'slim.input' => json_encode($data)]); try { $response = $this->tacit->invoke(); $item = json_decode($response->getBody(), true); unset($data['password']); $matches = array_uintersect_assoc($data, $item, array($this, 'compareMultidimensionalArray')); $this->assertEquals($data, $matches); } catch (RestfulException $e) { $this->fail($e->getMessage()); } catch (\Exception $e) { $this->fail($e->getMessage()); } }
/** * Test Collection::getMask() with an object instance. * * @param array $expected * @param array $exclude * * @dataProvider providerGetMaskFromObject */ public function testGetMaskFromObject(array $expected, array $exclude) { $object = MockPersistent::findOne([], [], $this->fixture); $this->assertInstanceOf('Tacit\\Test\\Model\\MockPersistent', $object); $this->assertEquals($expected, array_values(Collection::getMask($object, $exclude))); }