merge from 1.6 ( html purifier lib )

git-svn-id: http://xe-core.googlecode.com/svn/branches/1.5.0@10579 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
ovclas 2012-04-20 07:34:00 +00:00
parent 8943ff97f3
commit 7ea7157ce7
813 changed files with 65203 additions and 0 deletions

View file

@ -0,0 +1,24 @@
<?php
/**
* Controller for PHPT that implements the SimpleTest unit-testing interface.
*/
class PHPT_Controller_SimpleTest extends SimpleTestCase
{
protected $_path;
public function __construct($path) {
$this->_path = $path;
parent::__construct($path);
}
public function testPhpt() {
$suite = new PHPT_Suite(array($this->_path));
$phpt_reporter = new PHPT_Reporter_SimpleTest($this->reporter);
$suite->run($phpt_reporter);
}
}
// vim: et sw=4 sts=4

View file

@ -0,0 +1,77 @@
<?php
/**
* Proxies results from PHPT_Reporter to SimpleTest's reporter
*/
class PHPT_Reporter_SimpleTest implements PHPT_Reporter
{
/** SimpleTest reporter to proxy results to */
protected $reporter;
/** @param SimpleTest reporter */
public function __construct($reporter) {
$this->reporter = $reporter;
}
// TODO: Figure out what the proper calls should be, since we've given
// each Suite its own UnitTestCase controller
/**
* Called when the Reporter is started from a PHPT_Suite
* @todo Figure out if Suites can be named
*/
public function onSuiteStart(PHPT_Suite $suite) {
//$this->reporter->paintGroupStart('PHPT Suite', $suite->count());
}
/**
* Called when the Reporter is finished in a PHPT_Suite
*/
public function onSuiteEnd(PHPT_Suite $suite) {
//$this->reporter->paintGroupEnd('PHPT Suite');
}
/**
* Called when a Case is started
*/
public function onCaseStart(PHPT_Case $case) {
//$this->reporter->paintCaseStart($case->name);
}
/**
* Called when a Case ends
*/
public function onCaseEnd(PHPT_Case $case) {
//$this->reporter->paintCaseEnd($case->name);
}
/**
* Called when a Case runs without Exception
*/
public function onCasePass(PHPT_Case $case) {
$this->reporter->paintPass("{$case->name} in {$case->filename}");
}
/**
* Called when a PHPT_Case_VetoException is thrown during a Case's run()
*/
public function onCaseSkip(PHPT_Case $case, PHPT_Case_VetoException $veto) {
$this->reporter->paintSkip($veto->getMessage() . ' [' . $case->filename .']');
}
/**
* Called when any Exception other than a PHPT_Case_VetoException is encountered
* during a Case's run()
*/
public function onCaseFail(PHPT_Case $case, PHPT_Case_FailureException $failure) {
$this->reporter->paintFail($failure->getReason());
}
public function onParserError(Exception $exception) {
$this->reporter->paintException($exception);
}
}
// vim: et sw=4 sts=4

View file

@ -0,0 +1,36 @@
<?php
class PHPT_Section_PRESKIPIF implements PHPT_Section_RunnableBefore
{
private $_data = null;
private $_runner_factory = null;
public function __construct($data)
{
$this->_data = $data;
$this->_runner_factory = new PHPT_CodeRunner_Factory();
}
public function run(PHPT_Case $case)
{
// @todo refactor this code into PHPT_Util class as its used in multiple places
$filename = dirname($case->filename) . '/' . basename($case->filename, '.php') . '.skip.php';
// @todo refactor to PHPT_CodeRunner
file_put_contents($filename, $this->_data);
$runner = $this->_runner_factory->factory($case);
$runner->ini = "";
$response = $runner->run($filename)->output;
unlink($filename);
if (preg_match('/^skip( - (.*))?/', $response, $matches)) {
$message = !empty($matches[2]) ? $matches[2] : '';
throw new PHPT_Case_VetoException($message);
}
}
public function getPriority()
{
return -2;
}
}