public function testCreateLoadDeleteLoad()
{
if ($this->client->getTransport()->getProtocolVersion() < 26) {
// $this->markTestSkipped( 'Record Create/Update Unpredictable Behaviour' );
}
$recOrig = ['alloggio' => 'case', 'lavoro' => 'mercato', 'vacanza' => 'mare'];
$rec = new Record();
$rec->setOData($recOrig);
$rec->setOClass('V');
$result = $this->client->execute('recordCreate', ['cluster_id' => 9, 'record' => $rec]);
$this->assertInstanceOf('\\PhpOrient\\Protocols\\Binary\\Data\\Record', $result);
$this->assertEquals('#9:0', (string) $result->getRid());
$this->assertEquals('9', $result->getRid()->cluster);
$this->assertEquals('0', $result->getRid()->position);
$load = $this->client->execute('recordLoad', ['rid' => $result->getRid()]);
$this->assertInstanceOf('\\PhpOrient\\Protocols\\Binary\\Data\\Record', $load[0]);
$this->assertEquals((string) $result->getRid(), (string) $load[0]->getRid());
$this->assertEquals((string) $result, (string) $load[0]);
$delete = $this->client->execute('recordDelete', ['rid' => $load[0]->getRid()]);
$this->assertTrue($delete);
//try load again, this should be empty
$reLoad = $this->client->execute('recordLoad', ['rid' => $result->getRid()]);
$this->assertEmpty($reLoad);
$result = $this->client->execute('DataClusterCount', ['ids' => 9]);
$this->assertEmpty($result);
}