コード例 #1
0
ファイル: FacadeTest.php プロジェクト: rhukster/Shortcode
 public function testFacade()
 {
     $handlers = new HandlerContainer();
     $handlers->add('name', function (ShortcodeInterface $s) {
         return $s->getName();
     })->add('content', function (ShortcodeInterface $s) {
         return $s->getContent();
     })->addAlias('c', 'content')->addAlias('n', 'name');
     $facade = ShortcodeFacade::create($handlers, new CommonSyntax());
     $this->assertSame('n', $facade->process('[n]'));
     $this->assertSame('c', $facade->process('[c]c[/c]'));
     $shortcodes = $facade->parse('[b]');
     $this->assertInstanceOf('Thunder\\Shortcode\\Shortcode\\ShortcodeInterface', $shortcodes[0]);
     $s = new Shortcode('c', array(), null);
     $this->assertSame('[c /]', $facade->serializeToText($s));
     $this->assertSame('c', $facade->unserializeFromText('[c]')->getName());
     $json = '{"name":"c","parameters":[],"content":null,"bbCode":null}';
     $this->assertSame($json, $facade->serializeToJson($s));
     $this->assertSame('c', $facade->unserializeFromJson($json)->getName());
 }
コード例 #2
0
ファイル: Post.php プロジェクト: jjiko/blog
 /**
  * Process the shortcodes
  *
  * @param string $content the content
  * @return string
  */
 public function stripShortcodes($content)
 {
     $facade = new ShortcodeFacade();
     foreach (self::$shortcodes as $tag => $func) {
         $facade->addHandler($tag, $func);
     }
     return $facade->process($content);
 }
コード例 #3
0
ファイル: BbcodeFormatter.php プロジェクト: eoko/zf-console
 /**
  * @param string $content
  * @return string
  */
 public function format($content = '')
 {
     return $this->formatter->process($content);
 }
コード例 #4
0
 public function testInvalidUnserializationFormatException()
 {
     $this->setExpectedException('InvalidArgumentException');
     $facade = new ShortcodeFacade();
     $facade->unserialize('[c]', 'invalid');
 }