// swal() sould add the modal to the DOM + make it visible test("modal shows up", function() { equal($('.sweet-alert').length, 0); swal("Hello world!"); ok($('.sweet-alert').is(':visible')); }); // Clicking the confirm-button should dismiss the modal test("dismiss modal with confirm-button", function(assert) { var done = assert.async(); swal("Dismiss me"); var $modal = $('.sweet-alert'); $modal.find('button.confirm').click(); setTimeout(function() { assert.ok($modal.is(':hidden')); done(); }, 500); }); test("dismiss modal with esc-key", function(assert) { var done = assert.async(); swal("Dismiss me"); var $modal = $('.sweet-alert'); $(document).trigger($.Event('keydown', { keyCode: 27 })); setTimeout(function() { assert.ok($modal.is(':hidden')); done(); }, 500); }); test("modals stays on with esc-key if allowEscapeKey is false", function(assert) { var done = assert.async(); swal({ title: "Dismiss me", allowEscapeKey: false }); var $modal = $('.sweet-alert'); $(document).trigger($.Event('keydown', { keyCode: 27 })); setTimeout(function() { assert.ok($modal.is(':visible')); done(); }, 500); }); /* * Make sure that when using { showCancelButton: true }: * - The cancel-button is visible on the modal * - Clicking on it dismisses the modal */ test("cancel-button works", function(assert) { var done = assert.async(); swal({ title: "Test", showCancelButton: true }); var $modal = $('.sweet-alert'); var $cancelBtn = $modal.find('button.cancel'); ok($cancelBtn.is(':visible')); $cancelBtn.click(); setTimeout(function() { assert.ok($modal.is(':hidden')); done(); }, 500); }); // Clicking the overlay should not dismiss the modal... test("clicking the overlay does not dismiss modal", function(assert) { var done = assert.async(); swal("Test"); var $modal = $('.sweet-alert'); $('.sweet-overlay').click(); setTimeout(function() { assert.ok($modal.is(':visible')); done(); }, 500); }); // ...except if we pass allowOutsideClick: true test("clicking the overlay (with allowOutsideClick option) dismisses modal", function(assert) { var done = assert.async(); swal({ title: "Test", allowOutsideClick: true }); var $modal = $('.sweet-alert'); $('.sweet-overlay').click(); setTimeout(function() { assert.ok($modal.is(':hidden')); done(); }, 500); }); test("timer works", function(assert) { var done = assert.async(); swal({ title: "Timer test", showConfirmButton: false, timer: 500 }); var $modal = $('.sweet-alert'); assert.ok($modal.find('button.cancel, button.confirm').is(':hidden')); setTimeout(function() { assert.ok($modal.is(':hidden')); done(); }, 1000); }); test("prompt functionality works", function() { swal({ title: "Prompt test", type: "input", inputPlaceholder: "Placeholder text" }); var $modal = $('.sweet-alert'); ok($modal.find('fieldset input').is(':visible')); equal($modal.find('fieldset input').attr('placeholder'), "Placeholder text"); });