catch (Exception $e)
{
  $throwException = true;
}
$t->ok($throwException, 'getColumnType() throws an exception when its argument is not the name of a column of the main finder object');

$column = $finder->getColumnType('Title');
$t->isa_ok($column, 'string', 'getColumnType() returns a string representing a sfModelFinder column type');

$t->is($column, sfModelFinderColumn::STRING, 'getColumnType() correctly matches VARCHAR column types to sfModelFinderColumn::STRING');
$column = $finder->getColumnType('CategoryId');
$t->is($column, sfModelFinderColumn::INTEGER, 'getColumnType() correctly matches INTEGER column types to sfModelFinderColumn::INTEGER');

$finder = new sfDoctrineFinder('DCivility');

$column = $finder->getColumnType('IsMan');
$t->is($column, sfModelFinderColumn::BOOLEAN, 'getColumnType() correctly matches BOOLEAN column types to sfModelFinderColumn::BOOLEAN');

/********************************/
/* sfDoctrineFinder::filterBy() */
/********************************/

$t->diag('sfDoctrineFinder::filterBy()');

$finder = new sfDoctrineFinder('DArticle');
$finder->filterBy('Title', 'foo')->find();

$t->is($finder->getLatestQuery(), 'SELECT d.id AS d__id, d.title AS d__title, d.category_id AS d__category_id FROM d_article d WHERE d.title = \'foo\'', 'filterBy() called on a sfModelFinderColumn::STRING column type adds a WHERE ... = condition');

$finder = new sfDoctrineFinder('DArticle');
$finder->filterBy('Title', '*foo*')->find();