public function testMongoConditionalOperators()
{
$conditions = array('key' => array('<' => 10));
$expected = array('key' => array('$lt' => 10));
$result = $this->_db->conditions($conditions, null);
$this->assertEqual($expected, $result);
$conditions = array('key' => array('<=' => 10));
$expected = array('key' => array('$lte' => 10));
$result = $this->_db->conditions($conditions, null);
$this->assertEqual($expected, $result);
$conditions = array('key' => array('>' => 10));
$expected = array('key' => array('$gt' => 10));
$result = $this->_db->conditions($conditions, null);
$this->assertEqual($expected, $result);
$conditions = array('key' => array('>=' => 10));
$expected = array('key' => array('$gte' => 10));
$result = $this->_db->conditions($conditions, null);
$this->assertEqual($expected, $result);
$conditions = array('key' => array('!=' => 10));
$expected = array('key' => array('$ne' => 10));
$result = $this->_db->conditions($conditions, null);
$this->assertEqual($expected, $result);
$conditions = array('key' => array('<>' => 10));
$expected = array('key' => array('$ne' => 10));
$result = $this->_db->conditions($conditions, null);
$this->assertEqual($expected, $result);
$conditions = array('key' => array('!=' => array(10, 20, 30)));
$expected = array('key' => array('$nin' => array(10, 20, 30)));
$result = $this->_db->conditions($conditions, null);
$this->assertEqual($expected, $result);
$conditions = array('key' => array('<>' => array(10, 20, 30)));
$expected = array('key' => array('$nin' => array(10, 20, 30)));
$result = $this->_db->conditions($conditions, null);
$this->assertEqual($expected, $result);
$conditions = array('key' => array('like' => '/regex/i'));
$result = $this->_db->conditions($conditions, null);
$expected = array('key' => new MongoRegex('/regex/i'));
$this->assertEqual($expected, $result);
}