public function testCommitBatch_UpdateNode_Success_ReturnsTrue() { $node = new Node($this->client); $node->useLazyLoad(false)->setId(123)->setProperties(array('foo' => 'bar', 'baz' => 'qux')); $request = array(array('id' => 0, 'method' => 'PUT', 'to' => '/node/123/properties', 'body' => array('foo' => 'bar', 'baz' => 'qux'))); $return = array('code' => 200, 'data' => array(array('id' => 0))); $this->batch->save($node); $this->setupTransportExpectation($request, $this->returnValue($return)); $result = $this->client->commitBatch($this->batch); $this->assertTrue($result); $this->assertSame($node, $this->client->getEntityCache()->getCachedEntity(123, 'node')); }
public function testSaveNode_Update_TransportError_ThrowsException() { $properties = array('foo' => 'bar', 'baz' => 'qux'); $node = new Node($this->client); $node->useLazyLoad(false)->setId(123)->setProperties($properties); $this->transport->expects($this->once())->method('put')->with('/node/123/properties', $properties)->will($this->returnValue(array('code' => 400))); $this->setExpectedException('Everyman\\Neo4j\\Exception'); $this->client->saveNode($node); }
public function testSaveNode_Failure_NodeNotInCache() { $nodeId = 123; $node = new Node($this->client); $node->useLazyLoad(false)->setId($nodeId); $this->transport->expects($this->once())->method('put')->with('/node/123/properties', array())->will($this->returnValue(array('code' => 400))); try { $this->client->saveNode($node); $this->fail(); } catch (Exception $e) { $this->assertFalse($this->cache->get("node-{$nodeId}")); } }
/** * Fill a node with data * * @param Node $node * @param array $data * @return Node */ public function populateNode(Node $node, $data) { $node->useLazyLoad(false); $node->setProperties($data['data']); return $node; }