diff options
Diffstat (limited to 'www/wiki/extensions/SemanticMediaWiki/tests/qunit/smw/data/ext.smw.dataItem.number.test.js')
-rw-r--r-- | www/wiki/extensions/SemanticMediaWiki/tests/qunit/smw/data/ext.smw.dataItem.number.test.js | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/www/wiki/extensions/SemanticMediaWiki/tests/qunit/smw/data/ext.smw.dataItem.number.test.js b/www/wiki/extensions/SemanticMediaWiki/tests/qunit/smw/data/ext.smw.dataItem.number.test.js new file mode 100644 index 00000000..fe21d062 --- /dev/null +++ b/www/wiki/extensions/SemanticMediaWiki/tests/qunit/smw/data/ext.smw.dataItem.number.test.js @@ -0,0 +1,73 @@ +/** + * QUnit tests + * + * @since 1.9 + * + * @file + * @ingroup SMW + * + * @licence GNU GPL v2 or later + * @author mwjames + */ +( function ( $, mw, smw ) { + 'use strict'; + + QUnit.module( 'ext.smw.dataItem.number', QUnit.newMwEnvironment() ); + + var pass = 'Passes because '; + + // Data provider + var testCases = [ + { test: [ 1 ], expected: [ 1 ] }, + { test: [ 0.0001 ], expected: [ 0.0001 ] }, + { test: [ 1000 ], expected: [ 1000 ] } + ]; + + /** + * Test accessibility + * + * @since: 1.9 + */ + QUnit.test( 'instance', function ( assert ) { + assert.expect( 2 ); + + var result = new smw.dataItem.number( 3 ); + assert.ok( result instanceof Object, pass + 'the smw.dataItem.number instance was accessible' ); + + assert.throws( function() { + new smw.dataItem.number( 'foo' ); + }, pass + 'an error was raised due to wrong type' ); + + } ); + + /** + * Test type + * + * @since: 1.9 + */ + QUnit.test( 'getDIType', function ( assert ) { + assert.expect( 1 ); + + var result = new smw.dataItem.number( 3 ); + assert.equal( result.getDIType(), '_num', pass + 'returned _num' ); + + } ); + + /** + * Test getNumber + * + * @since: 1.9 + */ + QUnit.test( 'getNumber', function ( assert ) { + assert.expect( 3 ); + + var result; + + $.map( testCases, function ( testCase ) { + result = new smw.dataItem.number( testCase.test[0] ); + assert.equal( result.getNumber(), testCase.expected[0] , pass + 'returned ' + testCase.expected[0] ); + } ); + + } ); + +}( jQuery, mediaWiki, semanticMediaWiki ) ); |