diff options
Diffstat (limited to 'www/wiki/extensions/SemanticMediaWiki/tests/qunit/smw/data/ext.smw.dataItem.time.test.js')
-rw-r--r-- | www/wiki/extensions/SemanticMediaWiki/tests/qunit/smw/data/ext.smw.dataItem.time.test.js | 131 |
1 files changed, 131 insertions, 0 deletions
diff --git a/www/wiki/extensions/SemanticMediaWiki/tests/qunit/smw/data/ext.smw.dataItem.time.test.js b/www/wiki/extensions/SemanticMediaWiki/tests/qunit/smw/data/ext.smw.dataItem.time.test.js new file mode 100644 index 00000000..cf0f0aed --- /dev/null +++ b/www/wiki/extensions/SemanticMediaWiki/tests/qunit/smw/data/ext.smw.dataItem.time.test.js @@ -0,0 +1,131 @@ +/** + * 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.time', QUnit.newMwEnvironment() ); + + var pass = 'Passes because '; + + /** + * Test accessibility + * + * @since: 1.9 + */ + QUnit.test( 'instance', function ( assert ) { + assert.expect( 1 ); + + var result = new smw.dataItem.time( '1362200400' ); + assert.ok( result instanceof Object, pass + 'the smw.dataItem.time instance was accessible' ); + + } ); + + /** + * Test type + * + * @since: 1.9 + */ + QUnit.test( 'getDIType', function ( assert ) { + assert.expect( 1 ); + + var result = new smw.dataItem.time( '1362200400' ); + assert.equal( result.getDIType(), '_dat', pass + 'returned _dat' ); + + } ); + + /** + * Test getUri + * + * @since: 1.9 + */ + QUnit.test( 'getMwTimestamp', function ( assert ) { + assert.expect( 2 ); + + var result; + + result = new smw.dataItem.time( '1362200400' ); + assert.equal( result.getMwTimestamp(), '1362200400', pass + 'returned a MW timestamp' ); + + result = new smw.dataItem.time( 1362200400 ); + assert.equal( result.getMwTimestamp(), '1362200400', pass + 'returned a MW timestamp' ); + + } ); + + /** + * Test getDate + * + * @since: 1.9 + */ + QUnit.test( 'getDate', function ( assert ) { + assert.expect( 1 ); + + var result; + + result = new smw.dataItem.time( '1362200400' ); + assert.ok( result.getDate() instanceof Date, pass + 'returned a JavaScript Date instance' ); + + } ); + + /** + * Test getISO8601Date + * + * @since: 1.9 + */ + QUnit.test( 'getISO8601Date', function ( assert ) { + assert.expect( 1 ); + + var result; + + result = new smw.dataItem.time( '1362200400' ); + assert.equal( result.getISO8601Date(), '2013-03-02T05:00:00.000Z', pass + 'returned a ISO string date/time' ); + + } ); + + /** + * Test getTimeString + * + * @since: 1.9 + */ + QUnit.test( 'getTimeString', function ( assert ) { + assert.expect( 1 ); + + var result; + + result = new smw.dataItem.time( '1362200400' ); + assert.equal( result.getTimeString(), '05:00:00', pass + 'returned a time string' ); + + } ); + + /** + * Test getMediaWikiDate + * + * @since: 1.9 + */ + QUnit.test( 'getMediaWikiDate', function ( assert ) { + assert.expect( 1 ); + + var result; + + // Use as helper to fetch language dep. month name + var monthNames = []; + $.map ( mw.config.get( 'wgMonthNames' ), function( index ) { + if( index !== '' ){ + monthNames.push( index ); + } + } ); + + result = new smw.dataItem.time( '1362200400' ); + assert.equal( result.getMediaWikiDate(), '2 ' + monthNames[2] + ' 2013 05:00:00', pass + 'returned a MW date and time formatted string' ); + + } ); + +}( jQuery, mediaWiki, semanticMediaWiki ) );
\ No newline at end of file |