function testOther()
 {
     $wr = new WikiRenderer(new wr3_to_xhtml());
     $source = '<code>foo</code>';
     $expected = '<pre>foo</pre>';
     $result = $wr->render($source);
     $this->assertEqualOrDiff($expected, $result);
     if (!$this->assertEqual(count($wr->errors), 0, "Errors detected by wr ! (%s)")) {
         $this->dump($wr->errors);
     }
     $source = "<code>foo</code>\n__bar__";
     $expected = "<pre>foo</pre>\n<p><strong>bar</strong></p>";
     $result = $wr->render($source);
     $this->assertEqualOrDiff($expected, $result);
     if (!$this->assertEqual(count($wr->errors), 0, "Errors detected by wr ! (%s)")) {
         $this->dump($wr->errors);
     }
     $source = '';
     $expected = '';
     $source = "__bar__\n<code>foo</code>";
     $expected = "<p><strong>bar</strong></p>\n<pre>foo</pre>";
     $result = $wr->render($source);
     $this->assertEqualOrDiff($expected, $result);
     if (!$this->assertEqual(count($wr->errors), 0, "Errors detected by wr ! (%s)")) {
         $this->dump($wr->errors);
     }
 }
 function testSerie()
 {
     include 'dataSeries.php';
     $wr = new WikiRenderer('classicwr_to_xhtml');
     foreach ($list as $k => $t) {
         $res = $wr->render($t[0]);
         $this->assertEquals($t[2], $res);
     }
 }
 function testBalisesInlineSimples()
 {
     $wr = new WikiRenderer(new dokuwiki_to_docbook());
     foreach ($this->listinline as $source => $result) {
         $res = $wr->render($source);
         $this->assertEqualOrDiff($res, $result, "erreur");
         $this->assertEqual(count($wr->errors), 0, "WR returns errors ! " . var_export($wr->errors, true) . " (%s)");
     }
 }
Example #4
0
 function testBalisesInlineComplexes()
 {
     $wr = new WikiRenderer(new trac_to_xhtml());
     foreach ($this->listinline2 as $source => $result) {
         $res = $wr->render($source);
         $this->assertEquals($result[1], $res);
         $this->assertEquals($result[0], count($wr->errors), "Nombre d'erreurs différent");
     }
 }
Example #5
0
function phorum_wikirenderer($data)
{
    static $wikirenderer = null;
    if ($wikirenderer == null) {
        $wikirenderer = new WikiRenderer('classicwr_to_xhtml');
    }
    foreach ($data as $key => $message) {
        if (isset($message["subject"])) {
            $data[$key]["subject"] = htmlspecialchars($message["subject"]);
        }
        if (isset($message["body"])) {
            $data[$key]["body"] = $wikirenderer->render($message["body"]);
        }
        if (isset($message['signature_author']) && trim($message['signature_author']) != '') {
            $data[$key]['signature_author'] = $wikirenderer->render($message['signature_author']);
        }
    }
    return $data;
}
 function testBalisesInlineSimples()
 {
     $wr = new WikiRenderer(new phpwiki_to_dokuwiki());
     $k = 0;
     foreach ($this->listinline as $source => $result) {
         $k++;
         $res = $wr->render($source);
         $this->assertEquals($result, $res, "erreur on {$k} th test");
         $this->assertEquals(0, count($wr->errors), "WR returns errors ! " . var_export($wr->errors, true));
     }
 }
 function testInlineWikiWord()
 {
     $conf = new classicwr_to_xhtml();
     $conf->checkWikiWordFunction = 'wikiword';
     $wr = new WikiRenderer($conf);
     foreach ($this->listinline2 as $source => $result) {
         $res = $wr->render($source);
         $this->assertEquals($result[1], $res);
         $this->assertEquals($result[0], count($wr->errors), "Nombre d'erreurs différents (%s)");
     }
 }
 function testBalisesInlineComplexes()
 {
     $wr = new WikiRenderer(new wr3_to_xhtml());
     foreach ($this->listinline2 as $source => $result) {
         $res = $wr->render($source);
         if (!$this->assertEqual($res, $result[1], "erreur")) {
             $this->sendMessage('test : ' . $source);
             $this->_showDiff($result[1], $res);
         }
         if (!$this->assertEqual(count($wr->errors), $result[0], "Nombre d'erreurs différents (%s)")) {
             $this->dump($wr->errors);
         }
     }
 }
 function testBlock()
 {
     $wr = new WikiRenderer('classicwr_to_xhtml');
     foreach ($this->listblocks as $file => $nberror) {
         $sourceFile = 'datasblocks/' . $file . '.src';
         $resultFile = 'datasblocks/' . $file . '.res';
         $handle = fopen($sourceFile, "r");
         $source = fread($handle, filesize($sourceFile));
         fclose($handle);
         $handle = fopen($resultFile, "r");
         $result = fread($handle, filesize($resultFile));
         fclose($handle);
         $res = $wr->render($source);
         $this->assertEquals($result, $res);
         $this->assertEquals($nberror, count($wr->errors), "Erreurs détéctées par wr ! (%s)");
     }
 }
 function testBlock2()
 {
     $wr = new WikiRenderer(new wr3_to_docbook());
     foreach ($this->listblocks2 as $file => $nberror) {
         $sourceFile = 'datasblocks/' . $file . '.src';
         $resultFile = 'datasblocks/' . $file . '.res';
         $handle = fopen($sourceFile, "r");
         $source = fread($handle, filesize($sourceFile));
         fclose($handle);
         $handle = fopen($resultFile, "r");
         $result = fread($handle, filesize($resultFile));
         fclose($handle);
         $res = $wr->render($source);
         $this->assertEqualOrDiff($res, $result, "error on {$file}");
         if (!$this->assertEqual(count($wr->errors), $nberror, "Errors detected by wr ! (%s)")) {
             $this->dump($wr->errors);
         }
     }
 }
Example #11
0
 function testBlock()
 {
     $wr = new WikiRenderer(new trac_to_xhtml());
     foreach ($this->listblocks as $file => $nberror) {
         $sourceFile = 'datasblocks/' . $file . '.src';
         $resultFile = 'datasblocks/' . $file . '.res';
         $handle = fopen($sourceFile, "r");
         $source = fread($handle, filesize($sourceFile));
         fclose($handle);
         $handle = fopen($resultFile, "r");
         $result = fread($handle, filesize($resultFile));
         fclose($handle);
         $res = $wr->render($source);
         if ($file == 'wr3_footnote') {
             $conf =& $wr->getConfig();
             $res = str_replace('-' . $conf->footnotesId . '-', '-XXX-', $res);
         }
         $this->assertEquals($result, $res, "erreur sur {$file}");
         $this->assertEquals($nberror, count($wr->errors), "Errors detected by wr");
     }
 }
 function testBlockFiles()
 {
     $wr = new WikiRenderer(new dokuwiki_to_xhtml());
     foreach ($this->listblocks as $file => $nberror) {
         $sourceFile = 'datasblocks/doku_xhtml_' . $file . '.src';
         $resultFile = 'datasblocks/doku_xhtml_' . $file . '.res';
         $handle = fopen($sourceFile, "r");
         $source = fread($handle, filesize($sourceFile));
         fclose($handle);
         $handle = fopen($resultFile, "r");
         $result = fread($handle, filesize($resultFile));
         fclose($handle);
         $res = $wr->render($source);
         if ($file == 'general') {
             $conf =& $wr->getConfig();
             $res = str_replace('-' . $conf->footnotesId . '-', '-XXX-', $res);
         }
         $this->assertEqualOrDiff($res, $result, "error on {$file}");
         if (!$this->assertEqual(count($wr->errors), $nberror, "Errors detected by wr ! (%s)")) {
             $this->dump($wr->errors);
         }
     }
 }
Example #13
0
<?php

/**
 * Tests unitaires
 *
 * @package wikirenderer
 * @subpackage tests
 * @author Laurent Jouanneau
 * @copyright 2003-2006 Laurent Jouanneau
 */
header('ContentType: text/plain');
require_once 'wikirenderer/WikiRenderer.lib.php';
include 'dataSeries.php';
function getMicroTime()
{
    list($micro, $time) = explode(' ', microtime());
    return $micro + $time;
}
$start = getMicroTime();
$wr = new WikiRenderer('classicwr_to_xhtml');
foreach ($list as $k => $t) {
    $res = $wr->render($t[0]);
}
$stop = getMicroTime();
echo "time=" . intval(($stop - $start) * 1000) / 1000;
Example #14
0
<label>Transformation en :
<?php 
showRuleList();
?>
</label>
<input type="button" value="editer un exemple" onclick="exemple()" />
<br />
<input type="submit" value="Valider et voir la transformation" />
</fieldset>
</form>

<?php 
if ($texte != '') {
    $ctr = new WikiRenderer($rule);
    echo '<h2 id="resultats">Source du resultat:</h2>';
    $texte = $ctr->render($texte);
    if ($ctr->errors) {
        echo '<p style="color:red;">Il y a ';
        if (count($ctr->errors) > 1) {
            echo 'des erreurs wiki aux lignes : ', implode(',', array_keys($ctr->errors)), '</p>';
        } else {
            list($num, $l) = each($ctr->errors);
            echo 'une erreur wiki à la ligne ', $num, '</p>';
        }
    }
    $texte2 = htmlspecialchars($texte);
    echo '<pre style="overflow:auto">';
    echo $texte2;
    echo '</pre>', "\n\n";
}
require 'footer.inc.php';
<html>
<html><head><title>plop</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

</style>
</head>
<body>
<?php 
define('WR_DIR', realpath(dirname(__FILE__) . '/wikirenderer/') . '/');
require_once 'wikirenderer/WikiRenderer.lib.php';
require_once WR_DIR . 'rules/dokuwiki_to_xhtml.php';
$wr = new WikiRenderer(new dokuwiki_to_xhtml());
$sourceFile = 'datasblocks/pw_dk_1.res';
$source = file_get_contents($sourceFile);
echo $wr->render($source);
?>
</body>
</html>
Example #16
0
function Render($strWikiContent)
{
    global $k_aConfig, $k_aLangConfig;
    if ($strWikiContent == '') {
        $strWikiContent = $k_aLangConfig['NoWikiContent'];
    }
    // On utilise le fichier de formatage de la langue s'il existe
    $strFileFormat = $k_aConfig['LanguagePath'] . '/format.php';
    $formatter = null;
    if (file_exists($strFileFormat)) {
        require_once dirname(__FILE__) . '/../' . $strFileFormat;
        if (class_exists('CLanguageFormat')) {
            $formatter = new CLanguageFormat();
        }
    }
    // Modification du contenu wiki par la langue
    if (is_a($formatter, 'CLanguageFormat')) {
        $strWikiContent = $formatter->FormatWiki($strWikiContent);
    }
    // Instanciation de la lib de rendu et rendu wiki
    switch ($k_aConfig['Renderer']) {
        case 'WikiRenderer':
            require_once dirname(__FILE__) . '/WikiRenderer/WikiRenderer.lib.php';
            require_once dirname(__FILE__) . '/WikiRenderer/rules/chu_to_xhtml.php';
            $Renderer = new WikiRenderer('chu_to_xhtml');
            $strHtmlContent = $Renderer->render($strWikiContent);
            break;
        case 'wiki2xhtml':
            require_once dirname(__FILE__) . '/wiki2xhtml/class.wiki2xhtml.chu.php';
            $Renderer = new wiki2xhtmlChu();
            $strHtmlContent = $Renderer->transform($strWikiContent);
            break;
        default:
            Error('Erreur dans le fichier de configuration : Aucun renderer ou mauvais renderer spécifié. Seulement WikiRenderer ou wiki2xhtml sont autorisés.');
            break;
    }
    // Sans PathInfo, il faut mettre un ? devant les liens vers les pages internes
    if ($k_aConfig['UsePathInfo'] != 'true') {
        $strHtmlContent = preg_replace('/href="([^"]*)"/', 'href="?\\1"', $strHtmlContent);
        $strHtmlContent = preg_replace('/href="\\?(\\.\\..*)"/', 'href="\\1"', $strHtmlContent);
        $strHtmlContent = preg_replace('/href="\\?(\\/.*)"/', 'href="\\1"', $strHtmlContent);
        $strHtmlContent = preg_replace('/href="\\?([a-zA-Z]+:.*)"/', 'href="\\1"', $strHtmlContent);
        $strHtmlContent = preg_replace('/href="\\?(#.*)"/', 'href="\\1"', $strHtmlContent);
    }
    if ($k_aConfig['SmileyPath'] != '') {
        require_once dirname(__FILE__) . '/smiley-replacer.php';
        MakeImageSmileys($strHtmlContent);
    }
    // Modification du contenu HTML par la langue
    if (is_a($formatter, 'CLanguageFormat')) {
        $strHtmlContent = $formatter->FormatHtml($strHtmlContent);
    }
    return $strHtmlContent;
}
 function testBlockFiles()
 {
     $wr = new WikiRenderer(new phpwiki_to_dokuwiki());
     foreach ($this->listblocks as $file => $nberror) {
         $sourceFile = 'datasblocks/pw_dk_' . $file . '.src';
         $resultFile = 'datasblocks/pw_dk_' . $file . '.res';
         $source = file_get_contents($sourceFile);
         $result = file_get_contents($resultFile);
         $res = $wr->render($source);
         $this->assertEquals($result, $res, "error on {$file}");
         $this->assertEquals($nberror, count($wr->errors), "Errors detected by wr");
     }
 }
 function testBlockFiles()
 {
     $wr = new WikiRenderer(new phpwiki_to_dokuwiki());
     foreach ($this->listblocks as $file => $nberror) {
         $sourceFile = 'datasblocks/pw_dk_' . $file . '.src';
         $resultFile = 'datasblocks/pw_dk_' . $file . '.res';
         $source = file_get_contents($sourceFile);
         $result = file_get_contents($resultFile);
         $res = $wr->render($source);
         $this->assertEqualOrDiff($result, $res, "error on {$file}");
         echo '<!--' . $res . '-->';
         if (!$this->assertEqual(count($wr->errors), $nberror, "Errors detected by wr ! (%s)")) {
             $this->dump($wr->errors);
         }
     }
 }