next-button.js 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. /*
  2. TODO:
  3. - quick test for when button is clicked
  4. SEE ALSO:
  5. - visibleRange, dateAlignment, dateIncrement
  6. */
  7. describe('next button', function() {
  8. pushOptions({
  9. defaultView: 'agendaWeek',
  10. defaultDate: '2017-06-08'
  11. });
  12. describe('when there is no validRange', function() {
  13. it('is enabled', function() {
  14. initCalendar();
  15. ToolbarUtils.expectButtonEnabled('next', true);
  16. });
  17. });
  18. describe('when next date range is completely within validRange', function() {
  19. pushOptions({
  20. validRange: { end: '2018-06-10' },
  21. dateIncrement: { years: 1 } // next range is 2018-06-03 - 2018-06-10
  22. });
  23. it('is enabled', function() {
  24. initCalendar();
  25. ToolbarUtils.expectButtonEnabled('next', true);
  26. });
  27. });
  28. describe('when next date range is partially outside validRange', function() {
  29. pushOptions({
  30. validRange: { end: '2018-06-05' },
  31. dateIncrement: { years: 1 } // next range is 2018-06-03 - 2018-06-10
  32. });
  33. it('is enabled', function() {
  34. initCalendar();
  35. ToolbarUtils.expectButtonEnabled('next', true);
  36. });
  37. });
  38. describe('when next date range is completely beyond validRange', function() {
  39. pushOptions({
  40. validRange: { end: '2018-06-03' },
  41. dateIncrement: { years: 1 } // next range is 2018-06-03 - 2018-06-10
  42. });
  43. it('is disabled', function() {
  44. initCalendar();
  45. ToolbarUtils.expectButtonEnabled('next', false);
  46. });
  47. });
  48. describe('when day after current day is a hidden day', function() {
  49. pushOptions({
  50. defaultDate: '2017-03-31',
  51. defaultView: 'basicDay',
  52. weekends: false,
  53. dateIncrement: { years: 1 } // next range is 2018-06-03 - 2018-06-10
  54. });
  55. it('is enabled', function() {
  56. initCalendar();
  57. ToolbarUtils.expectButtonEnabled('next', true);
  58. });
  59. });
  60. describe('when defaultDate is constrained forward to validRange and next week is valid', function() {
  61. pushOptions({
  62. defaultDate: '2017-07-17',
  63. defaultView: 'agendaWeek',
  64. validRange: { start: '2036-05-03', end: '2036-06-01' }
  65. });
  66. it('is enabled', function() {
  67. initCalendar();
  68. ToolbarUtils.expectButtonEnabled('next', true);
  69. });
  70. });
  71. });