예제 #1
0
 /**
  * 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));
 }
예제 #2
0
 /**
  * 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());
     }
 }
예제 #3
0
 /**
  * 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)));
 }