public function testFindAndRemove()
{
$d11 = $this->collection->createDocument(array('param1' => 1, 'param2' => 1))->save();
$d12 = $this->collection->createDocument(array('param1' => 1, 'param2' => 2))->save();
$d21 = $this->collection->createDocument(array('param1' => 2, 'param2' => 1))->save();
$d22 = $this->collection->createDocument(array('param1' => 2, 'param2' => 2))->save();
$document = $this->collection->find()->where('param1', 1)->sort(array('param2' => 1))->findAndRemove();
$this->assertNotEmpty($document);
$this->assertEquals(array('param1' => 1, 'param2' => 1, '_id' => $d11->getId()), $document->toArray());
$this->assertEquals(3, count($this->collection));
}