http://www.mediawiki.org/wiki/Special:Code/MediaWiki/96059
Revision: 96059
Author: inez
Date: 2011-09-01 22:58:21 +0000 (Thu, 01 Sep 2011)
Log Message:
-----------
Add unit tests for es.ContentSeries.lookup method
Modified Paths:
--------------
trunk/parsers/wikidom/tests/synth/index.html
trunk/parsers/wikidom/tests/synth/test.js
Modified: trunk/parsers/wikidom/tests/synth/index.html
===================================================================
--- trunk/parsers/wikidom/tests/synth/index.html 2011-09-01 22:56:27 UTC
(rev 96058)
+++ trunk/parsers/wikidom/tests/synth/index.html 2011-09-01 22:58:21 UTC
(rev 96059)
@@ -14,6 +14,7 @@
<script src="../../lib/synth/bases/es.EventEmitter.js"></script>
<script src="../../lib/synth/bases/es.Container.js"></script>
<script
src="../../lib/synth/bases/es.ContainerItem.js"></script>
+ <script
src="../../lib/synth/bases/es.ContentSeries.js"></script>
<script src="../../lib/jquery.js"></script>
<script src="../../lib/qunit.js"></script>
<script src="test.js"></script>
Modified: trunk/parsers/wikidom/tests/synth/test.js
===================================================================
--- trunk/parsers/wikidom/tests/synth/test.js 2011-09-01 22:56:27 UTC (rev
96058)
+++ trunk/parsers/wikidom/tests/synth/test.js 2011-09-01 22:58:21 UTC (rev
96059)
@@ -156,3 +156,56 @@
// TODO: Events for appending, prepending, inserting and removing
} );
+
+
+test( 'ContentSeries', function() {
+
+ var Stub = function( size ) {
+ this.size = size;
+ };
+
+ Stub.prototype.getLength = function() {
+ return this.size;
+ };
+
+ strictEqual(
+ ( new Stub( 0 ) ).getLength(),
+ 0,
+ 'Stub.getLength() returns value that it was initialized with'
+ );
+
+ var a = new Stub( 0 ),
+ b = new Stub( 1 ),
+ c = new Stub( 2 ),
+ d = new Stub( 3 ),
+ e = new Stub( 4 ),
+ contentSeries = new es.ContentSeries( [ a, b, c, d, e ] ),
+ tests = [
+ { 'input' : -1, 'output' : null },
+ { 'input' : 0, 'output' : a },
+ { 'input' : 1, 'output' : b },
+ { 'input' : 2, 'output' : b },
+ { 'input' : 3, 'output' : c },
+ { 'input' : 4, 'output' : c },
+ { 'input' : 5, 'output' : c },
+ { 'input' : 6, 'output' : d },
+ { 'input' : 7, 'output' : d },
+ { 'input' : 8, 'output' : d },
+ { 'input' : 9, 'output' : d },
+ { 'input' : 10, 'output' : e },
+ { 'input' : 11, 'output' : e },
+ { 'input' : 12, 'output' : e },
+ { 'input' : 13, 'output' : e },
+ { 'input' : 14, 'output' : e },
+ { 'input' : 15, 'output' : null }
+ ];
+
+ for ( var i = 0; i < tests.length; i++ ) {
+ strictEqual(
+ contentSeries.lookup( tests[i].input ),
+ tests[i].output,
+ 'es.ContentSeries.lookup finds the right item or
returns null when out of range'
+ );
+ }
+
+} );
\ No newline at end of file
_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs