jquery-mobile/tests/unit/degradeInputs/degradeInputs.js

43 lines
No EOL
1.3 KiB
JavaScript

/*
* degradeInputs unit tests
*/
(function($){
module('jquery.mobile.slider.js');
test('keepNative elements should not be degraded', function() {
same($('input#not-to-be-degraded').attr("type"), "range");
});
asyncTest('should degrade input type to a different type, as specified in page options', function(){
var degradeInputs = $.mobile.page.prototype.options.degradeInputs;
expect( degradeInputs.length );
// NOTE the initial page is already enhanced (or expected to be) so we load the dialog to enhance it
// and _expect_ that the default page will remain "unreaped". This will break if that assumption changes
$.testHelper.pageSequence([
function() {
$.mobile.changePage( "#dialog" );
},
function() {
$.each(degradeInputs, function( oldType, newType ) {
if (newType === false) {
newType = oldType;
}
$('#page-test-container').html('<input type="' + oldType + '" />').trigger("create");
same($('#page-test-container input').attr("type"), newType, "type attr on page is: " + newType);
$('#dialog-test-container').html('<input type="' + oldType + '" />').trigger("create");
same($('#dialog-test-container input').attr("type"), newType, "type attr on dialog is: " + newType);
});
start();
}
]);
});
})(jQuery);