summaryrefslogtreecommitdiff
path: root/www/wiki/extensions/SemanticMediaWiki/tests/phpunit/Unit/Query/ResultPrinters/FeedExportPrinterTest.php
diff options
context:
space:
mode:
Diffstat (limited to 'www/wiki/extensions/SemanticMediaWiki/tests/phpunit/Unit/Query/ResultPrinters/FeedExportPrinterTest.php')
-rw-r--r--www/wiki/extensions/SemanticMediaWiki/tests/phpunit/Unit/Query/ResultPrinters/FeedExportPrinterTest.php72
1 files changed, 72 insertions, 0 deletions
diff --git a/www/wiki/extensions/SemanticMediaWiki/tests/phpunit/Unit/Query/ResultPrinters/FeedExportPrinterTest.php b/www/wiki/extensions/SemanticMediaWiki/tests/phpunit/Unit/Query/ResultPrinters/FeedExportPrinterTest.php
new file mode 100644
index 00000000..d8a1fe3f
--- /dev/null
+++ b/www/wiki/extensions/SemanticMediaWiki/tests/phpunit/Unit/Query/ResultPrinters/FeedExportPrinterTest.php
@@ -0,0 +1,72 @@
+<?php
+
+namespace SMW\Tests\Query\ResultPrinters;
+
+use ReflectionClass;
+use SMW\Query\ResultPrinters\FeedExportPrinter;
+
+/**
+ * @covers \SMW\Query\ResultPrinters\FeedExportPrinter
+ *
+ * @license GNU GPL v2+
+ * @since 1.9
+ *
+ * @author mwjames
+ */
+class FeedExportPrinterTest extends \PHPUnit_Framework_TestCase {
+
+ public function testCanConstruct() {
+
+ $this->assertInstanceOf(
+ FeedExportPrinter::class,
+ new FeedExportPrinter( 'feed' )
+ );
+ }
+
+ /**
+ * @dataProvider textDataProvider
+ */
+ public function testFeedItemDescription( $setup, $expected, $message ) {
+
+ $instance = new FeedExportPrinter( 'feed' );
+
+ $reflector = new ReflectionClass( '\SMW\Query\ResultPrinters\FeedExportPrinter' );
+ $method = $reflector->getMethod( 'feedItemDescription' );
+ $method->setAccessible( true );
+
+ $this->assertEquals(
+ $expected['text'],
+ $method->invoke( $instance, $setup['items'], $setup['pageContent'] )
+ );
+ }
+
+ /**
+ * @return array
+ */
+ public function textDataProvider() {
+
+ $provider = [];
+
+ // #0
+ // https://web.archive.org/web/20160802052417/http://www.utexas.edu/learn/html/spchar.html
+ $provider[] = [
+ [
+ 'items' => [],
+ 'pageContent' => 'Semantic MediaWiki Conference, have been announced: it will be held at' .
+ '[http://www.aohostels.com/en/tagungen/tagungen-berlin/ A&O Berlin Hauptbahnhof]' .
+ '&¢©«»—¡¿,åÃãÆç'
+ ],
+ [
+ 'text' => 'Semantic MediaWiki Conference, have been announced: it will be held at' .
+ '[http://www.aohostels.com/en/tagungen/tagungen-berlin/ A&O Berlin Hauptbahnhof]' .
+ '&¢©«»—¡¿,åÃãÆç'
+ ],
+ [ 'info' => 'text encoding including html special characters' ]
+ ];
+
+ return $provider;
+
+ }
+
+
+}