|
|
@ -90,6 +90,16 @@ class BTBTest extends PHPUnit_Framework_TestCase { |
|
|
|
$this->assertEquals('<a class="bibanchor" name=""></a>',$first_entry->anchor()); |
|
|
|
} |
|
|
|
|
|
|
|
function extract_css_classes($str) { |
|
|
|
$xml = new SimpleXMLElement($str); |
|
|
|
$css_classes = array(); |
|
|
|
foreach($xml->xpath('//node()/@class') as $v) { |
|
|
|
$css_classes[] = $v->__toString(); |
|
|
|
}; |
|
|
|
sort($css_classes); |
|
|
|
return $css_classes; |
|
|
|
} |
|
|
|
|
|
|
|
function test_bibentry_to_html_article() { |
|
|
|
$btb = $this->createDB(); |
|
|
|
$first_entry=$btb->getEntryByKey('aKeyA'); |
|
|
@ -99,21 +109,28 @@ class BTBTest extends PHPUnit_Framework_TestCase { |
|
|
|
|
|
|
|
// default style
|
|
|
|
bibtexbrowser_configure('BIBLIOGRAPHYSTYLE','DefaultBibliographyStyle'); |
|
|
|
$this->assertEquals("An Article (Foo Bar and Jane Doe), In New Results, volume 5, 2009. [bibtex]",strip_tags($first_entry->toHTML())); |
|
|
|
$this->assertEquals('<span itemscope="" itemtype="http://schema.org/ScholarlyArticle"><span class="bibtitle" itemprop="name">An Article</span> (<span class="bibauthor"><span itemprop="author" itemtype="http://schema.org/Person">Foo Bar</span> and <span itemprop="author" itemtype="http://schema.org/Person">Jane Doe</span></span>), <span class="bibbooktitle">In <span itemprop="isPartOf">New Results</span></span>, volume 5, <span itemprop="datePublished">2009</span>.<span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.atitle=An+Article&rft.jtitle=New+Results&rft.volume=5&rft.issue=&rft.pub=&rfr_id=info%3Asid%2F%3A&rft.date=2009&rft.au=Foo+Bar&rft.au=Jane+Doe"></span></span> <span class="bibmenu"><a class="biburl" title="aKeyA" href="bibtexbrowser.php?key=aKeyA&bib=inline">[bibtex]</a></span>',$first_entry->toHTML()); |
|
|
|
bibtexbrowser_configure('BIBTEXBROWSER_LINK_STYLE','nothing'); |
|
|
|
$this->assertEquals("An Article (Foo Bar and Jane Doe), In New Results, volume 5, 2009. ",strip_tags($first_entry->toHTML())); |
|
|
|
$this->assertEquals('<span itemscope="" itemtype="http://schema.org/ScholarlyArticle"><span class="bibtitle" itemprop="name">An Article</span> (<span class="bibauthor"><span itemprop="author" itemtype="http://schema.org/Person">Foo Bar</span> and <span itemprop="author" itemtype="http://schema.org/Person">Jane Doe</span></span>), <span class="bibbooktitle">In <span itemprop="isPartOf">New Results</span></span>, volume 5, <span itemprop="datePublished">2009</span>.<span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.atitle=An+Article&rft.jtitle=New+Results&rft.volume=5&rft.issue=&rft.pub=&rfr_id=info%3Asid%2F%3A&rft.date=2009&rft.au=Foo+Bar&rft.au=Jane+Doe"></span></span> ',$first_entry->toHTML()); |
|
|
|
|
|
|
|
// listing the CSS classes
|
|
|
|
$css_classes_before = $this->extract_css_classes($first_entry->toHTML()); |
|
|
|
|
|
|
|
// IEEE style
|
|
|
|
bibtexbrowser_configure('BIBLIOGRAPHYSTYLE','JanosBibliographyStyle'); |
|
|
|
$this->assertEquals("Foo Bar and Jane Doe, \"An Article\", In New Results, vol. 5, pp. 1-2, 2009.\n [bibtex]",strip_tags($first_entry->toHTML())); |
|
|
|
$this->assertEquals("Foo Bar and Jane Doe, \"An Article\", In New Results, vol. 5, pp. 1-2, 2009.\n ",strip_tags($first_entry->toHTML())); |
|
|
|
$css_classes_after = $this->extract_css_classes($first_entry->toHTML()); |
|
|
|
// contract: make sure the Janos style and default style use the same CSS classes
|
|
|
|
$this->assertEquals($css_classes_before, $css_classes_after); |
|
|
|
|
|
|
|
// Vancouver style
|
|
|
|
bibtexbrowser_configure('BIBLIOGRAPHYSTYLE','VancouverBibliographyStyle'); |
|
|
|
$this->assertEquals("Foo Bar and Jane Doe. An Article. New Results. 2009;5:1-2.\n [bibtex]",strip_tags($first_entry->toHTML())); |
|
|
|
$this->assertEquals("Foo Bar and Jane Doe. An Article. New Results. 2009;5:1-2.\n ",strip_tags($first_entry->toHTML())); |
|
|
|
|
|
|
|
// changing the target
|
|
|
|
bibtexbrowser_configure('BIBLIOGRAPHYSTYLE','DefaultBibliographyStyle'); |
|
|
|
bibtexbrowser_configure('BIBTEXBROWSER_LINKS_TARGET','_top'); |
|
|
|
$this->assertEquals('<span itemscope="" itemtype="http://schema.org/ScholarlyArticle"><span class="bibtitle" itemprop="name">An Article</span> (<span class="bibauthor"><span itemprop="author" itemtype="http://schema.org/Person">Foo Bar</span> and <span itemprop="author" itemtype="http://schema.org/Person">Jane Doe</span></span>), <span class="bibbooktitle">In <span itemprop="isPartOf">New Results</span></span>, volume 5, <span itemprop="datePublished">2009</span>.<span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.atitle=An+Article&rft.jtitle=New+Results&rft.volume=5&rft.issue=&rft.pub=&rfr_id=info%3Asid%2F%3A&rft.date=2009&rft.au=Foo+Bar&rft.au=Jane+Doe"></span></span> <span class="bibmenu"><a target="_top" class="biburl" title="aKeyA" href="bibtexbrowser.php?key=aKeyA&bib=inline">[bibtex]</a></span>',$first_entry->toHTML()); |
|
|
|
$this->assertEquals('<span itemscope="" itemtype="http://schema.org/ScholarlyArticle"><span class="bibtitle" itemprop="name">An Article</span> (<span class="bibauthor"><span itemprop="author" itemtype="http://schema.org/Person">Foo Bar</span> and <span itemprop="author" itemtype="http://schema.org/Person">Jane Doe</span></span>), <span class="bibbooktitle">In <span itemprop="isPartOf">New Results</span></span>, volume 5, <span itemprop="datePublished">2009</span>.<span class="Z3988" title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.atitle=An+Article&rft.jtitle=New+Results&rft.volume=5&rft.issue=&rft.pub=&rfr_id=info%3Asid%2F%3A&rft.date=2009&rft.au=Foo+Bar&rft.au=Jane+Doe"></span></span> ',$first_entry->toHTML()); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|