{ public function __construct() { } public function translate($subject, $parameters = array()) { return sprintf('translation[%s]', $subject); } } $t = new lime_test(17); $dom = new DomDocument('1.0', 'utf-8'); $dom->validateOnParse = true; // ->getRenderer() $t->diag('->getRenderer()'); $w = new sfWidgetFormChoice(array('choices' => array())); $t->is(get_class($w->getRenderer()), 'sfWidgetFormSelect', '->getRenderer() guesses the renderer class to use'); $w->setOption('multiple', true); $t->is(get_class($w->getRenderer()), 'sfWidgetFormSelect', '->getRenderer() guesses the renderer class to use'); $w->setOption('expanded', true); $t->is(get_class($w->getRenderer()), 'sfWidgetFormSelectCheckbox', '->getRenderer() guesses the renderer class to use'); $w->setOption('multiple', false); $t->is(get_class($w->getRenderer()), 'sfWidgetFormSelectRadio', '->getRenderer() guesses the renderer class to use'); class MyWidget extends sfWidgetFormChoice { public function render($name, $value = null, $attributes = array(), $errors = array()) { return null; } public function getJavaScripts() { return array('/path/to/a/file.js');