HTMLPurifier_DefinitionCache_Serializer::add PHP Method

add() public method

public add ( HTMLPurifier_Definition $def, HTMLPurifier_Config $config ) : integer | boolean
$def HTMLPurifier_Definition
$config HTMLPurifier_Config
return integer | boolean
    public function add($def, $config)
    {
        if (!$this->checkDefType($def)) {
            return;
        }
        $file = $this->generateFilePath($config);
        if (file_exists($file)) {
            return false;
        }
        if (!$this->_prepareDir($config)) {
            return false;
        }
        return $this->_write($file, serialize($def), $config);
    }

Usage Example

 function testAlternatePath()
 {
     $cache = new HTMLPurifier_DefinitionCache_Serializer('Test');
     $config = $this->generateConfigMock('serial');
     $config->version = '1.0.0';
     $config->setReturnValue('get', 1, array('Test', 'DefinitionRev'));
     $dir = dirname(__FILE__) . '/SerializerTest';
     $config->setReturnValue('get', $dir, array('Cache', 'SerializerPath'));
     $def_original = $this->generateDefinition();
     $cache->add($def_original, $config);
     $this->assertFileExist($dir . '/Test/1.0.0,serial,1.ser');
     unlink($dir . '/Test/1.0.0,serial,1.ser');
     rmdir($dir . '/Test');
 }