tests for jquery.highlightText
authorAntoine Musso <hashar@users.mediawiki.org>
Tue, 16 Aug 2011 08:04:34 +0000 (08:04 +0000)
committerAntoine Musso <hashar@users.mediawiki.org>
Tue, 16 Aug 2011 08:04:34 +0000 (08:04 +0000)
In r90092, wikinaut requested tests for our highlightText jQuery plugin.
Here is a basic framework than almost anyone can enhance :-)

tests/qunit/index.html
tests/qunit/suites/resources/jquery/jquery.highlightText.test.js [new file with mode: 0644]

index e8bb99a..abd4104 100644 (file)
@@ -44,6 +44,7 @@
        <script src="../../resources/jquery/jquery.byteLimit.js"></script>
        <script src="../../resources/jquery/jquery.colorUtil.js"></script>
        <script src="../../resources/jquery/jquery.getAttrs.js"></script>
+       <script src="../../resources/jquery/jquery.highlightText.js"></script>
        <script src="../../resources/jquery/jquery.localize.js"></script>
        <script src="../../resources/jquery/jquery.tabIndex.js"></script>
        <script src="../../resources/jquery/jquery.tablesorter.js"></script>
@@ -71,6 +72,7 @@
        <script src="suites/resources/jquery/jquery.byteLimit.test.js"></script>
        <script src="suites/resources/jquery/jquery.colorUtil.test.js"></script>
        <script src="suites/resources/jquery/jquery.getAttrs.test.js"></script>
+       <script src="suites/resources/jquery/jquery.highlightText.test.js"></script>
        <script src="suites/resources/jquery/jquery.localize.test.js"></script>
        <script src="suites/resources/jquery/jquery.tabIndex.test.js"></script>
        <script src="suites/resources/jquery/jquery.tablesorter.test.js" charset="UTF-8"></script>
diff --git a/tests/qunit/suites/resources/jquery/jquery.highlightText.test.js b/tests/qunit/suites/resources/jquery/jquery.highlightText.test.js
new file mode 100644 (file)
index 0000000..c416a20
--- /dev/null
@@ -0,0 +1,37 @@
+module( 'jquery.highlightText' );
+
+test( '-- Initial check', function() {
+       expect(1);
+       ok( $.fn.highlightText, 'jQuery.fn.highlightText defined' );
+} );
+
+test( 'Check', function() {
+       expect(3);
+       var $fixture;
+   
+       $fixture = $( '<p>Blue Öyster Cult</p>' );
+       $fixture.highlightText( 'Blue' );
+       equal(
+               '<span class="highlight">Blue</span> Öyster Cult',
+               $fixture.html()
+               );
+
+       $fixture = $( '<p>Österreich</p>' );
+       $fixture.highlightText( 'Österreich' );
+       equal(
+               '<span class="highlight">Österreich</span>',
+               $fixture.html()
+               );
+
+       /**
+        * Highlighter broken on punctuation mark.
+        */
+       /**
+       $fixture = $( '<p>So good. To be there</p>' );
+       $fixture.highlightText( 'good' );
+       equal(
+               'So <span class="highlight">good</span>. To be there',
+               $fixture.html()
+               );
+       */
+} );