示例#1
0
 /**
  * Test MongaPersistent::create()
  *
  * @param array $data The data used to create the object.
  *
  * @dataProvider providerCreate
  * @group model
  * @group monga
  */
 public function testCreate($data)
 {
     try {
         $object = MongaPersistentObject::create($data, $this->fixture);
         $this->assertNotNull($object);
         $this->assertInstanceOf('Tacit\\Model\\Persistent', $object);
         $this->assertInstanceOf('Tacit\\Model\\Monga\\MongaPersistent', $object);
         $this->assertInstanceOf('Tacit\\Test\\Model\\Monga\\MongaPersistentObject', $object);
     } catch (ModelValidationException $e) {
         echo $e;
     }
 }
示例#2
0
 /**
  * Test a RESTful PUT request on a RestfulItem
  *
  * @param array $data
  *
  * @group controller
  *
  * @dataProvider providerPut
  */
 public function testPut(array $data)
 {
     /** @var MongaPersistentObject $itemObj */
     $itemObj = MongaPersistentObject::findOne(['name' => $data['name']], [], $this->fixture);
     $this->mockEnvironment(['PATH_INFO' => '/monga/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());
     }
 }