From 2db99b1d6be13fe2bcd79ef0787d9898676d2b1c Mon Sep 17 00:00:00 2001 From: guerler Date: Thu, 14 Jan 2016 15:37:26 -0500 Subject: [PATCH] Add test cases --- test/qunit/tests/ui_tests.html | 11 ++++++ test/qunit/tests/ui_tests.js | 71 ++++++++++++++++++++++++++++++++++ 2 files changed, 82 insertions(+) create mode 100644 test/qunit/tests/ui_tests.html create mode 100644 test/qunit/tests/ui_tests.js diff --git a/test/qunit/tests/ui_tests.html b/test/qunit/tests/ui_tests.html new file mode 100644 index 00000000000..c0add87b60c --- /dev/null +++ b/test/qunit/tests/ui_tests.html @@ -0,0 +1,11 @@ + + + + + + + + + + diff --git a/test/qunit/tests/ui_tests.js b/test/qunit/tests/ui_tests.js new file mode 100644 index 00000000000..a921e0f069d --- /dev/null +++ b/test/qunit/tests/ui_tests.js @@ -0,0 +1,71 @@ +/* global define, QUnit, module, test, ok, equal, deepEqual, notEqual */ +define([ 'test-app', 'mvc/ui/ui-misc' +], function( testApp, Ui ){ + 'use strict'; + module( 'Ui test', {} ); + + test( 'label', function() { + var label = new Ui.Label({ + title : '_title' + }); + $( 'body' ).prepend( label.$el ); + ok( label.$el.html() === '_title', 'Correct title' ); + label.model.set( 'title', '_new_title' ); + ok( label.$el.html() === '_new_title', 'Correct new title' ); + } ); + + test( 'input', function() { + var input = new Ui.Input(); + $( 'body' ).prepend( input.$el ); + ok( input.tagName === 'input', 'Created input.' ); + ok( input.value() === undefined, 'Input empty.' ); + input.model.set( 'value', '_value' ); + ok( input.$el.val() === '_value', 'Input empty.' ); + ok( !input.$el.hasClass( '_cls' ), 'Has no custom class.' ); + input.model.set( 'cls', '_cls' ); + ok( input.$el.hasClass( '_cls' ), 'Has custom class.' ); + ok( !input.$el.attr( 'placeholder' ), 'Has no placeholder' ); + input.model.set( 'placeholder', '_placeholder' ); + ok( input.$el.attr( 'placeholder' ) === '_placeholder', 'Has correct placeholder' ); + } ); + + test( 'textarea', function() { + var input = new Ui.Input( { area: true } ); + $( 'body' ).prepend( input.$el ); + ok( input.tagName === 'textarea', 'Created textarea.' ); + ok( input.value() === undefined, 'Input empty.' ); + input.model.set( 'value', '_value' ); + ok( input.value() === '_value', 'Input empty.' ); + ok( !input.$el.hasClass( '_cls' ), 'Has no custom class.' ); + input.model.set( 'cls', '_cls' ); + ok( input.$el.hasClass( '_cls' ), 'Has custom class.' ); + } ); + + test( 'message', function() { + var message = new Ui.Message({ + persistent : true, + message : '_message', + status : 'danger' + }); + $( 'body' ).prepend( message.$el ); + ok( message.$el.hasClass( 'alert-danger' ), 'Alert danger.' ); + message.model.set( 'status', 'info' ); + ok( !message.$el.hasClass( 'alert-danger' ), 'Alert danger (disabled).' ); + ok( message.$el.hasClass( 'alert-info' ), 'Alert info.' ); + ok( message.$el.html() === '_message', 'Correct message.' ); + message.model.set( 'message', '_new_message' ); + ok( message.$el.html() === '_new_message', 'Correct message.' ); + } ); + + test( 'hidden', function() { + var hidden = new Ui.Hidden(); + $( 'body' ).prepend( hidden.$el ); + hidden.model.set( 'info', '_info' ); + ok( hidden.$info.css( 'display', 'block' ), 'Info shown.' ); + ok( hidden.$info.html() === '_info', 'Info text correct.' ); + hidden.model.set( 'info', '' ); + ok( hidden.$info.css( 'display', 'none' ), 'Info hidden.' ); + hidden.model.set( 'value', '_value' ); + ok( hidden.$hidden.val() === '_value', 'Correct value' ); + } ); +}); \ No newline at end of file