/**
  * A utility method for these tests that will evaluate its arguments as bbcode with
  * a fresh parser loaded with only the default bbcodes. It returns the
  * bbcode output, which in most cases should be in the input itself.
  */
 private function defaultBBCodeParse($bbcode)
 {
     $parser = new JBBCode\Parser();
     $parser->addCodeDefinitionSet(new JBBCode\DefaultCodeDefinitionSet());
     $parser->parse($bbcode);
     return $parser->getAsBBCode();
 }
Exemple #2
1
 /**
  * Test over nesting.
  */
 public function testOverNesting()
 {
     $parser = new JBBCode\Parser();
     $parser->addCodeDefinitionSet(new JBBCode\DefaultCodeDefinitionSet());
     $parser->addBBCode('quote', '<blockquote>{param}</blockquote>', false, true, 2);
     $bbcode = '[quote][quote][quote]wut[/quote] huh?[/quote] i don\'t know[/quote]';
     $parser->parse($bbcode);
     $expectedBbcode = '[quote][quote] huh?[/quote] i don\'t know[/quote]';
     $expectedHtml = '<blockquote><blockquote> huh?</blockquote> i don\'t know</blockquote>';
     $this->assertEquals($expectedBbcode, $parser->getAsBBCode());
     $this->assertEquals($expectedHtml, $parser->getAsHtml());
 }
Exemple #3
0
 /**
  * Tests that when a tag is not closed within an unparseable tag,
  * the BBCode output does not automatically close that tag (because
  * the contents were not parsed).
  */
 public function testUnclosedTag()
 {
     $parser = new JBBCode\Parser();
     $parser->addCodeDefinitionSet(new JBBCode\DefaultCodeDefinitionSet());
     $parser->addBBCode('verbatim', '{param}', false, false);
     $parser->parse('[verbatim]i wonder [b]what will happen[/verbatim]');
     $this->assertEquals('i wonder [b]what will happen', $parser->getAsHtml());
     $this->assertEquals('[verbatim]i wonder [b]what will happen[/verbatim]', $parser->getAsBBCode());
 }
<?php

require_once "/path/to/jbbcode/Parser.php";
$parser = new JBBCode\Parser();
$parser->addCodeDefinitionSet(new JBBCode\DefaultCodeDefinitionSet());
$text = "The bbcode in here [b]is never closed!";
$parser->parse($text);
print $parser->getAsBBCode();