public function testPullFromThreeDimensionalArray()
{
$this->collection->delete();
// create document
$doc = $this->collection->createDocument(array('some' => array(array('sub' => array(array('a' => 1), array('b' => 2))), array('sub' => array(array('a' => 3), array('b' => 4))))));
$doc->save();
// pull 1
$doc->pull('some', array('sub.a' => 1));
$doc->save();
$this->assertEquals(array(array('sub' => array(array('a' => 3), array('b' => 4)))), $this->collection->getDocumentDirectly($doc->getId())->some);
// pull 2
$doc->pull('some', array('sub' => array('a' => 3)));
$doc->save();
$this->assertEquals(array(), $this->collection->getDocumentDirectly($doc->getId())->some);
}