diff options
author | Marvin Borner | 2018-07-13 19:06:45 +0200 |
---|---|---|
committer | Marvin Borner | 2018-07-13 19:06:45 +0200 |
commit | 6fcfb7c04d32e1c8b26a312295bf7ac3ec2d2ad7 (patch) | |
tree | dbc87ef16fa01d5d99116de283592b8fe5e02944 /public/bower_components/bootstrap-datepicker/tests/suites/mouse_navigation | |
parent | dfd839f27146df0ad0494e11734fc7d310c70ebf (diff) |
Fixed many permissions and began admin interface
Diffstat (limited to 'public/bower_components/bootstrap-datepicker/tests/suites/mouse_navigation')
3 files changed, 365 insertions, 0 deletions
diff --git a/public/bower_components/bootstrap-datepicker/tests/suites/mouse_navigation/2011.js b/public/bower_components/bootstrap-datepicker/tests/suites/mouse_navigation/2011.js new file mode 100644 index 0000000..9aa4628 --- /dev/null +++ b/public/bower_components/bootstrap-datepicker/tests/suites/mouse_navigation/2011.js @@ -0,0 +1,66 @@ +module('Mouse Navigation 2011', { + setup: function(){ + /* + Tests start with picker on March 31, 2011. + */ + this.input = $('<input type="text" value="31-03-2011">') + .appendTo('#qunit-fixture') + .datepicker({format: "dd-mm-yyyy"}) + .focus(); // Activate for visibility checks + this.dp = this.input.data('datepicker'); + this.picker = this.dp.picker; + }, + teardown: function(){ + this.picker.remove(); + } +}); + +test('Selecting date from previous month while in January changes month and year displayed', function(){ + var target; + + this.input.val('01-01-2011'); + this.dp.update(); + datesEqual(this.dp.viewDate, UTCDate(2011, 0, 1)); + datesEqual(this.dp.dates.get(-1), UTCDate(2011, 0, 1)); + + // Rendered correctly + equal(this.dp.viewMode, 0); + target = this.picker.find('.datepicker-days tbody td:first'); + equal(target.text(), '26'); // Should be Dec 26 + equal(this.picker.find('.datepicker-days thead th.datepicker-switch').text(), 'January 2011'); + + // Updated internally on click + target.click(); + equal(this.picker.find('.datepicker-days thead th.datepicker-switch').text(), 'December 2010'); + datesEqual(this.dp.viewDate, UTCDate(2010, 11, 26)); + datesEqual(this.dp.dates.get(-1), UTCDate(2010, 11, 26)); + + // Re-rendered on click + target = this.picker.find('.datepicker-days tbody td:first'); + equal(target.text(), '28'); // Should be Nov 28 +}); + +test('Selecting date from next month while in December changes month and year displayed', function(){ + var target; + + this.input.val('01-12-2010'); + this.dp.update(); + datesEqual(this.dp.viewDate, UTCDate(2010, 11, 1)); + datesEqual(this.dp.dates.get(-1), UTCDate(2010, 11, 1)); + + // Rendered correctly + equal(this.dp.viewMode, 0); + target = this.picker.find('.datepicker-days tbody td:last'); + equal(target.text(), '8'); // Should be Jan 8 + equal(this.picker.find('.datepicker-days thead th.datepicker-switch').text(), 'December 2010'); + + // Updated internally on click + target.click(); + equal(this.picker.find('.datepicker-days thead th.datepicker-switch').text(), 'January 2011'); + datesEqual(this.dp.viewDate, UTCDate(2011, 0, 8)); + datesEqual(this.dp.dates.get(-1), UTCDate(2011, 0, 8)); + + // Re-rendered on click + target = this.picker.find('.datepicker-days tbody td:first'); + equal(target.text(), '26'); // Should be Dec 26 +}); diff --git a/public/bower_components/bootstrap-datepicker/tests/suites/mouse_navigation/2012.js b/public/bower_components/bootstrap-datepicker/tests/suites/mouse_navigation/2012.js new file mode 100644 index 0000000..071df9b --- /dev/null +++ b/public/bower_components/bootstrap-datepicker/tests/suites/mouse_navigation/2012.js @@ -0,0 +1,266 @@ +module('Mouse Navigation 2012', { + setup: function(){ + /* + Tests start with picker on March 31, 2012. Fun facts: + + * February 1, 2012 was on a Wednesday + * February 29, 2012 was on a Wednesday + * March 1, 2012 was on a Thursday + * March 31, 2012 was on a Saturday + */ + this.input = $('<input type="text" value="31-03-2012">') + .appendTo('#qunit-fixture') + .datepicker({format: "dd-mm-yyyy"}) + .focus(); // Activate for visibility checks + this.dp = this.input.data('datepicker'); + this.picker = this.dp.picker; + }, + teardown: function(){ + this.picker.remove(); + } +}); + +test('Selecting date resets viewDate and date', function(){ + var target; + + // Rendered correctly + equal(this.dp.viewMode, 0); + target = this.picker.find('.datepicker-days tbody td:nth(7)'); + equal(target.text(), '4'); // Should be Mar 4 + + // Updated internally on click + target.click(); + datesEqual(this.dp.viewDate, UTCDate(2012, 2, 4)); + datesEqual(this.dp.dates.get(-1), UTCDate(2012, 2, 4)); + + // Re-rendered on click + target = this.picker.find('.datepicker-days tbody td:first'); + equal(target.text(), '26'); // Should be Feb 29 +}); + +test('Navigating next/prev by month', function(){ + var target; + + equal(this.dp.viewMode, 0); + target = this.picker.find('.datepicker-days thead th.prev'); + ok(target.is(':visible'), 'Month:prev nav is visible'); + + // Updated internally on click + target.click(); + // Should handle month-length changes gracefully + datesEqual(this.dp.viewDate, UTCDate(2012, 1, 29)); + datesEqual(this.dp.dates.get(-1), UTCDate(2012, 2, 31)); + + // Re-rendered on click + target = this.picker.find('.datepicker-days tbody td:first'); + equal(target.text(), '29'); // Should be Jan 29 + + target = this.picker.find('.datepicker-days thead th.next'); + ok(target.is(':visible'), 'Month:next nav is visible'); + + // Updated internally on click + target.click().click(); + // Graceful moonth-end handling carries over + datesEqual(this.dp.viewDate, UTCDate(2012, 3, 29)); + datesEqual(this.dp.dates.get(-1), UTCDate(2012, 2, 31)); + + // Re-rendered on click + target = this.picker.find('.datepicker-days tbody td:first'); + equal(target.text(), '25'); // Should be Mar 25 + // (includes "old" days at start of month, even if that's all the first week-row consists of) +}); + +test('Navigating to/from year view', function(){ + var target; + + equal(this.dp.viewMode, 0); + target = this.picker.find('.datepicker-days thead th.datepicker-switch'); + ok(target.is(':visible'), 'View switcher is visible'); + + target.click(); + ok(this.picker.find('.datepicker-months').is(':visible'), 'Month picker is visible'); + equal(this.dp.viewMode, 1); + // Not modified when switching modes + datesEqual(this.dp.viewDate, UTCDate(2012, 2, 31)); + datesEqual(this.dp.dates.get(-1), UTCDate(2012, 2, 31)); + + // Change months to test internal state + target = this.picker.find('.datepicker-months tbody span:contains(Apr)'); + target.click(); + equal(this.dp.viewMode, 0); + // Only viewDate modified + datesEqual(this.dp.viewDate, UTCDate(2012, 3, 1)); // Apr 30 + datesEqual(this.dp.dates.get(-1), UTCDate(2012, 2, 31)); +}); + +test('Navigating to/from decade view', function(){ + var target; + + equal(this.dp.viewMode, 0); + target = this.picker.find('.datepicker-days thead th.datepicker-switch'); + ok(target.is(':visible'), 'View switcher is visible'); + + target.click(); + ok(this.picker.find('.datepicker-months').is(':visible'), 'Month picker is visible'); + equal(this.dp.viewMode, 1); + // Not modified when switching modes + datesEqual(this.dp.viewDate, UTCDate(2012, 2, 31)); + datesEqual(this.dp.dates.get(-1), UTCDate(2012, 2, 31)); + + target = this.picker.find('.datepicker-months thead th.datepicker-switch'); + ok(target.is(':visible'), 'View switcher is visible'); + + target.click(); + ok(this.picker.find('.datepicker-years').is(':visible'), 'Year picker is visible'); + equal(this.dp.viewMode, 2); + // Not modified when switching modes + datesEqual(this.dp.viewDate, UTCDate(2012, 2, 31)); + datesEqual(this.dp.dates.get(-1), UTCDate(2012, 2, 31)); + + // Change years to test internal state changes + target = this.picker.find('.datepicker-years tbody span:contains(2011)'); + target.click(); + equal(this.dp.viewMode, 1); + // Only viewDate modified + datesEqual(this.dp.viewDate, UTCDate(2011, 2, 1)); + datesEqual(this.dp.dates.get(-1), UTCDate(2012, 2, 31)); + + target = this.picker.find('.datepicker-months tbody span:contains(Apr)'); + target.click(); + equal(this.dp.viewMode, 0); + // Only viewDate modified + datesEqual(this.dp.viewDate, UTCDate(2011, 3, 1)); + datesEqual(this.dp.dates.get(-1), UTCDate(2012, 2, 31)); +}); + +test('Navigating prev/next in year view', function(){ + var target; + + equal(this.dp.viewMode, 0); + target = this.picker.find('.datepicker-days thead th.datepicker-switch'); + ok(target.is(':visible'), 'View switcher is visible'); + + target.click(); + ok(this.picker.find('.datepicker-months').is(':visible'), 'Month picker is visible'); + equal(this.dp.viewMode, 1); + equal(this.picker.find('.datepicker-months thead th.datepicker-switch').text(), '2012'); + // Not modified when switching modes + datesEqual(this.dp.viewDate, UTCDate(2012, 2, 31)); + datesEqual(this.dp.dates.get(-1), UTCDate(2012, 2, 31)); + + // Go to next year (2013) + target = this.picker.find('.datepicker-months thead th.next'); + target.click(); + equal(this.picker.find('.datepicker-months thead th.datepicker-switch').text(), '2013'); + // Only viewDate modified + datesEqual(this.dp.viewDate, UTCDate(2013, 2, 31)); + datesEqual(this.dp.dates.get(-1), UTCDate(2012, 2, 31)); + + // Go to prev year (x2 == 2011) + target = this.picker.find('.datepicker-months thead th.prev'); + target.click().click(); + equal(this.picker.find('.datepicker-months thead th.datepicker-switch').text(), '2011'); + // Only viewDate modified + datesEqual(this.dp.viewDate, UTCDate(2011, 2, 31)); + datesEqual(this.dp.dates.get(-1), UTCDate(2012, 2, 31)); +}); + +test('Navigating prev/next in decade view', function(){ + var target; + + equal(this.dp.viewMode, 0); + target = this.picker.find('.datepicker-days thead th.datepicker-switch'); + ok(target.is(':visible'), 'View switcher is visible'); + + target.click(); + ok(this.picker.find('.datepicker-months').is(':visible'), 'Month picker is visible'); + equal(this.dp.viewMode, 1); + // Not modified when switching modes + datesEqual(this.dp.viewDate, UTCDate(2012, 2, 31)); + datesEqual(this.dp.dates.get(-1), UTCDate(2012, 2, 31)); + + target = this.picker.find('.datepicker-months thead th.datepicker-switch'); + ok(target.is(':visible'), 'View switcher is visible'); + + target.click(); + ok(this.picker.find('.datepicker-years').is(':visible'), 'Year picker is visible'); + equal(this.dp.viewMode, 2); + equal(this.picker.find('.datepicker-years thead th.datepicker-switch').text(), '2010-2019'); + // Not modified when switching modes + datesEqual(this.dp.viewDate, UTCDate(2012, 2, 31)); + datesEqual(this.dp.dates.get(-1), UTCDate(2012, 2, 31)); + + // Go to next decade (2020-29) + target = this.picker.find('.datepicker-years thead th.next'); + target.click(); + equal(this.picker.find('.datepicker-years thead th.datepicker-switch').text(), '2020-2029'); + // Only viewDate modified + datesEqual(this.dp.viewDate, UTCDate(2022, 2, 31)); + datesEqual(this.dp.dates.get(-1), UTCDate(2012, 2, 31)); + + // Go to prev year (x2 == 2000-09) + target = this.picker.find('.datepicker-years thead th.prev'); + target.click().click(); + equal(this.picker.find('.datepicker-years thead th.datepicker-switch').text(), '2000-2009'); + // Only viewDate modified + datesEqual(this.dp.viewDate, UTCDate(2002, 2, 31)); + datesEqual(this.dp.dates.get(-1), UTCDate(2012, 2, 31)); +}); + +test('Selecting date from previous month resets viewDate and date, changing month displayed', function(){ + var target; + + // Rendered correctly + equal(this.dp.viewMode, 0); + target = this.picker.find('.datepicker-days tbody td:first'); + equal(target.text(), '26'); // Should be Feb 26 + equal(this.picker.find('.datepicker-days thead th.datepicker-switch').text(), 'March 2012'); + + // Updated internally on click + target.click(); + equal(this.picker.find('.datepicker-days thead th.datepicker-switch').text(), 'February 2012'); + datesEqual(this.dp.viewDate, UTCDate(2012, 1, 26)); + datesEqual(this.dp.dates.get(-1), UTCDate(2012, 1, 26)); + + // Re-rendered on click + target = this.picker.find('.datepicker-days tbody td:first'); + equal(target.text(), '29'); // Should be Jan 29 +}); + +test('Selecting date from next month resets viewDate and date, changing month displayed', function(){ + var target; + + this.input.val('01-04-2012'); + this.dp.update(); + + // Rendered correctly + equal(this.dp.viewMode, 0); + target = this.picker.find('.datepicker-days tbody td:last'); + equal(target.text(), '5'); // Should be May 5 + equal(this.picker.find('.datepicker-days thead th.datepicker-switch').text(), 'April 2012'); + + // Updated internally on click + target.click(); + equal(this.picker.find('.datepicker-days thead th.datepicker-switch').text(), 'May 2012'); + datesEqual(this.dp.viewDate, UTCDate(2012, 4, 5)); + datesEqual(this.dp.dates.get(-1), UTCDate(2012, 4, 5)); + + // Re-rendered on click + target = this.picker.find('.datepicker-days tbody td:first'); + equal(target.text(), '29'); // Should be Apr 29 +}); + +test('Selecting today from next month', patch_date(function(Date){ + var target; + this.dp.o.todayHighlight = true; + Date.now = new Date(2012, 2, 3); // Mar 3 + this.input.val('01-02-2012'); // Feb 1 + this.dp.update(); + + // Click the today button + target = this.picker.find('.datepicker-days tbody td.today'); + equal(target.text(), '3'); // Should be Mar 3 + target.click(); + + datesEqual(this.dp.viewDate, UTCDate(2012, 2, 3)); +})); diff --git a/public/bower_components/bootstrap-datepicker/tests/suites/mouse_navigation/all.js b/public/bower_components/bootstrap-datepicker/tests/suites/mouse_navigation/all.js new file mode 100644 index 0000000..5f1436e --- /dev/null +++ b/public/bower_components/bootstrap-datepicker/tests/suites/mouse_navigation/all.js @@ -0,0 +1,33 @@ +module('Mouse Navigation (All)', { + setup: function(){ + this.input = $('<input type="text">') + .appendTo('#qunit-fixture') + .datepicker({format: "dd-mm-yyyy"}) + .focus(); // Activate for visibility checks + this.dp = this.input.data('datepicker'); + this.picker = this.dp.picker; + }, + teardown: function(){ + this.picker.remove(); + } +}); + +test('Clicking datepicker does not hide datepicker', function(){ + ok(this.picker.is(':visible'), 'Picker is visible'); + this.picker.trigger('mousedown'); + ok(this.picker.is(':visible'), 'Picker is still visible'); +}); + +test('Clicking outside datepicker hides datepicker', function(){ + var $otherelement = $('<div />'); + $('body').append($otherelement); + + ok(this.picker.is(':visible'), 'Picker is visible'); + this.input.trigger('click'); + ok(this.picker.is(':visible'), 'Picker is still visible'); + + $otherelement.trigger('mousedown'); + ok(this.picker.is(':not(:visible)'), 'Picker is hidden'); + + $otherelement.remove(); +}); |