$driver = 'Null';
}
+ $params['secret'] = $injector->getInstance('Horde_Secret')->setKey('token');
$params['logger'] = $injector->getInstance('Horde_Log_Logger');
$class = 'Horde_Token_' . ucfirst($driver);
/**
* Constructor.
*
- * @param array $params Optional parameters:
+ * @param array $params Required parameters:
+ * <pre>
+ * 'secret' - (string) The secret string used for signing tokens.
+ * </pre>
+ * Optional parameters:
* <pre>
* 'logger' - (Horde_Log_Logger) A logger object.
* </pre>
*/
public function __construct($params)
{
+ if (!isset($params['secret'])) {
+ throw new Horde_Token_Exception('Missing secret parameter.');
+ }
if (isset($params['logger'])) {
$this->_logger = $params['logger'];
unset($params['logger']);
public function testNonces()
{
- $t = new Horde_Token_File();
+ $t = new Horde_Token_File(array('secret' => 'abc'));
$this->assertEquals(6, strlen($t->getNonce()));
}
+ /**
+ * @expectedException Horde_Token_Exception
+ */
+ public function testInvalidConstruction()
+ {
+ $t = new Horde_Token_File();
+ }
+
private function _getTemporaryDirectory()
{
$this->_temp_dir = sys_get_temp_dir() . DIRECTORY_SEPARATOR