Esempio n. 1
0
 public function testUpdateDocument()
 {
     $firstData = (object) array('_id' => 'fooBar', '_rev' => '1-3491449E1G4S91S648S7E49FE', 'foo' => 'bar', 'boo' => 'bar');
     $secoundData = (object) array('foo' => 'dummy', 'boo' => 'dummy');
     $mockReturn = (object) array('ok' => true, 'id' => $firstData->_id, 'rev' => '2-3491449E1F89EF1E6F87E49FE');
     $this->mockClient = $this->getMock('Klinai\\Client\\Client');
     $this->mockClient->expects($this->any())->method('storeDoc')->will($this->returnValue($mockReturn));
     $doc = new Document(clone $firstData, $this->mockClient, 'client_test1');
     $doc->disableAutoRecord();
     $doc->foo = $secoundData->foo;
     $doc->boo = $secoundData->boo;
     $this->assertEquals($doc->_id, $firstData->_id);
     $this->assertEquals($doc->_rev, $firstData->_rev);
     $this->assertEquals($doc->foo, $secoundData->foo);
     $this->assertEquals($doc->boo, $secoundData->boo);
     $doc->record();
     $this->assertEquals($doc->_id, $firstData->_id);
     $this->assertNotEquals($doc->_rev, $firstData->_rev);
     $this->assertEquals($doc->_rev, $mockReturn->rev);
     $this->assertEquals($doc->foo, $secoundData->foo);
     $this->assertEquals($doc->boo, $secoundData->boo);
 }