public function testMultipleChapter()
 {
     $chapters = new Chapters();
     $chapters->addChapter(new Chapter(3450, 'Intro'));
     $chapters->addChapter(new Chapter(13450, 'Later', 'http://example.com', 'http://example.com/foo.jpg'));
     $chapters->setPrinter(new Printer\JSON());
     $chapters_string = (string) $chapters;
     $chapters->setPrinter(new Printer\Nullprinter());
     $this->assertEquals($chapters, Parser\JSON::parse($chapters_string));
 }
 public function testPrinter()
 {
     $expected_print = trim("\n00:00:01.234 Intro <http://example.com>\n00:12:34.000 About us\n01:02:03.000 Later\n");
     $chapters = new Chapters();
     $chapters->addChapter(new Chapter(1234, 'Intro', 'http://example.com'));
     $chapters->addChapter(new Chapter(754000, 'About us'));
     $chapters->addChapter(new Chapter(3723000, 'Later'));
     $chapters->setPrinter(new Printer\Mp4chaps());
     $this->assertEquals($expected_print, (string) $chapters);
 }
    public function testSpecialCharsInTitle()
    {
        $expected_print = trim('
<psc:chapters xmlns:psc="http://podlove.org/simple-chapters" version="1.2">
  <psc:chapter start="00:00:01.234" title="&quot;Intro&quot;"/>
  <psc:chapter start="00:00:01.235" title="T&#xF6;rich\'"/>
</psc:chapters>');
        $chapters = new Chapters();
        $chapters->addChapter(new Chapter(1234, '"Intro"'));
        $chapters->addChapter(new Chapter(1235, 'Törich\''));
        $chapters->setPrinter(new Printer\PSC());
        $this->assertEquals($expected_print, (string) $chapters);
    }
    public function testPrinter()
    {
        $expected_print = json_encode(json_decode('[
	{ "start": "00:00:01.234", "title": "Intro", "href": "http://example.com", "image": "" },
	{ "start": "00:12:34.000", "title": "About us", "href": "", "image": "" },
	{ "start": "01:02:03.000", "title": "Later", "href": "", "image": "http://example.com/foo.jpg" }
]'));
        $chapters = new Chapters();
        $chapters->addChapter(new Chapter(1234, 'Intro', 'http://example.com'));
        $chapters->addChapter(new Chapter(754000, 'About us'));
        $chapters->addChapter(new Chapter(3723000, 'Later', '', 'http://example.com/foo.jpg'));
        $chapters->setPrinter(new Printer\JSON());
        $this->assertEquals($expected_print, (string) $chapters);
    }