Commit 5e1ba7ee authored by Bas de Nooijer's avatar Bas de Nooijer

Added tests for Solarium_Query_Select

parent a4d959a2
...@@ -32,59 +32,173 @@ ...@@ -32,59 +32,173 @@
class Solarium_Query_SelectTest extends PHPUnit_Framework_TestCase class Solarium_Query_SelectTest extends PHPUnit_Framework_TestCase
{ {
public function testDummy() protected $_query;
public function setUp()
{ {
$this->assertEquals(1,1); $this->_query = new Solarium_Query_Select;
} }
/** public function testSetAndGetStart()
TODO testDefaultOptions {
$this->_query->setStart(234);
TODO testInitOptions $this->assertEquals(234, $this->_query->getQuery());
}
TODO testSetQueryWithEmptyQuery
TODO testSetQueryTrim
TODO testSetStartWithInvalidValues
TODO testSetAndGetStart
TODO testSetRowsWithInvalidValues public function testSetAndGetQueryWithTrim()
{
$this->_query->setQuery(' *:* ');
$this->assertEquals('*:*', $this->_query->getStart());
}
TODO testSetAndGetRows public function testSetAndGetResultClass()
{
$this->_query->setResultClass('MyResult');
$this->assertEquals('MyResult', $this->_query->getResultClass());
}
TODO testAddFieldWithInvalidValues public function testSetAndGetDocumentClass()
{
$this->_query->setDocumentClass('MyDocument');
$this->assertEquals('MyDocument', $this->_query->getDocumentClass());
}
TODO testAddField public function testSetAndGetRows()
{
$this->_query->setRows(100);
$this->assertEquals(100, $this->_query->getRows());
}
TODO testAddFieldsCommaSeparated public function testAddField()
{
$expectedFields = $this->_query->getFields();
$expectedFields[] = 'newfield';
$this->assertEquals($expectedFields, $this->_query->addField('newfield'));
}
TODO testAddFieldsArray public function testClearFields()
{
$this->_query->addField('newfield');
$this->_query->clearFields();
$this->assertEquals(array(), $this->_query->getFields());
}
TODO testRemoveField public function testAddFields()
{
$fields = array('field1','field2');
TODO testClearFields $this->_query->clearFields();
$this->_query->addFields($fields);
$this->assertEquals($fields, $this->_query->getFields());
}
TODO testSetFields public function testAddFieldsAsStringWithTrim()
{
$this->_query->clearFields();
$this->_query->addFields('field1, field2');
$this->assertEquals(array('field1','field2'), $this->_query->getFields());
}
TODO testAddSortFieldEmptyValue public function testRemoveField()
{
$this->_query->clearFields();
$this->_query->addFields(array('field1','field2'));
$this->_query->removeField('field1');
$this->assertEquals(array('field2'), $this->_query->getFields());
}
TODO testAddSortFieldInvalidOrder public function testSetFields()
{
$this->_query->clearFields();
$this->_query->addFields(array('field1','field2'));
$this->_query->setFields(array('field3','field4'));
$this->assertEquals(array('field3','field4'), $this->_query->getFields());
}
TODO testAddSortField public function testAddSortField()
{
$this->_query->addSortField('field1', Solarium_Query_Select::SORT_DESC);
$this->assertEquals(
array('field1' => Solarium_Query_Select::SORT_DESC),
$this->_query->getSortFields()
);
}
TODO testAddSortFields public function testAddSortFields()
{
$sortFields = array(
'field1' => Solarium_Query_Select::SORT_DESC,
'field2' => Solarium_Query_Select::SORT_ASC
);
$this->_query->addSortFields($sortFields);
$this->assertEquals(
$sortFields,
$this->_query->getSortFields()
);
}
TODO testRemoveSortField public function testRemoveSortField()
{
$sortFields = array(
'field1' => Solarium_Query_Select::SORT_DESC,
'field2' => Solarium_Query_Select::SORT_ASC
);
$this->_query->addSortFields($sortFields);
$this->_query->removeSortField('field1');
$this->assertEquals(
array('field2' => Solarium_Query_Select::SORT_ASC),
$this->_query->getSortFields()
);
}
TODO testRemoveInvalidSortField public function testRemoveInvalidSortField()
{
$sortFields = array(
'field1' => Solarium_Query_Select::SORT_DESC,
'field2' => Solarium_Query_Select::SORT_ASC
);
$this->_query->addSortFields($sortFields);
$this->_query->removeSortField('invalidfield'); //continue silently
$this->assertEquals(
$sortFields,
$this->_query->getSortFields()
);
}
TODO testClearSortFields public function testClearSortFields()
{
$sortFields = array(
'field1' => Solarium_Query_Select::SORT_DESC,
'field2' => Solarium_Query_Select::SORT_ASC
);
$this->_query->addSortFields($sortFields);
$this->_query->clearSortFields();
$this->assertEquals(
array(),
$this->_query->getSortFields()
);
}
TODO testSetSortFields public function testSetSortFields()
{
$sortFields = array(
'field1' => Solarium_Query_Select::SORT_DESC,
'field2' => Solarium_Query_Select::SORT_ASC
);
$this->_query->addSortFields($sortFields);
$this->_query->setSortFields(array('field3' => Solarium_Query_Select::SORT_ASC));
$this->assertEquals(
array('field3' => Solarium_Query_Select::SORT_ASC),
$this->_query->getSortFields()
);
}
TODO testAddFilterQueryEmptyInput /**
TODO testAddFilterQuery TODO testAddFilterQuery
...@@ -102,12 +216,5 @@ class Solarium_Query_SelectTest extends PHPUnit_Framework_TestCase ...@@ -102,12 +216,5 @@ class Solarium_Query_SelectTest extends PHPUnit_Framework_TestCase
TODO testSetFilterQueries TODO testSetFilterQueries
TODO testSetAndGetResultClass
TODO testSetAndGetDocumentClass
TODO testCustomResultClass
TODO testCustomDocumentClass
*/ */
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment