[ Index ]

PHP Cross Reference of Drupal 6 (yi-drupal)

title

Body

[close]

/sites/all/libraries/jquery.ui/tests/unit/datepicker/ -> datepicker_events.js (source)

   1  /*

   2   * datepicker_events.js

   3   */
   4  (function($) {
   5  
   6  module("datepicker: events");
   7  
   8  var selectedThis = null;
   9  var selectedDate = null;
  10  var selectedInst = null;
  11  
  12  function callback(date, inst) {
  13      selectedThis = this;
  14      selectedDate = date;
  15      selectedInst = inst;
  16  }
  17  
  18  function callback2(year, month, inst) {
  19      selectedThis = this;
  20      selectedDate = year + '/' + month;
  21      selectedInst = inst;
  22  }
  23  
  24  test('events', function() {
  25      var inp = init('#inp', {onSelect: callback});
  26      var date = new Date();
  27      // onSelect

  28      inp.val('').datepicker('show').
  29          simulate('keydown', {keyCode: $.simulate.VK_ENTER});
  30      equals(selectedThis, inp[0], 'Callback selected this');
  31      equals(selectedInst, $.data(inp[0], PROP_NAME), 'Callback selected inst');
  32      equals(selectedDate, $.datepicker.formatDate('mm/dd/yy', date),
  33          'Callback selected date');
  34      inp.val('').datepicker('show').
  35          simulate('keydown', {ctrlKey: true, keyCode: $.simulate.VK_DOWN}).
  36          simulate('keydown', {keyCode: $.simulate.VK_ENTER});
  37      date.setDate(date.getDate() + 7);
  38      equals(selectedDate, $.datepicker.formatDate('mm/dd/yy', date),
  39          'Callback selected date - ctrl+down');
  40      inp.val('').datepicker('show').
  41          simulate('keydown', {keyCode: $.simulate.VK_ESC});
  42      equals(selectedDate, $.datepicker.formatDate('mm/dd/yy', date),
  43          'Callback selected date - esc');
  44      // onChangeMonthYear

  45      inp.datepicker('option', {onChangeMonthYear: callback2, onSelect: null}).
  46          val('').datepicker('show');
  47      var newMonthYear = function(date) {
  48          return date.getFullYear() + '/' + (date.getMonth() + 1);
  49      };
  50      date = new Date();
  51      date.setDate(1);
  52      inp.simulate('keydown', {keyCode: $.simulate.VK_PGUP});
  53      date.setMonth(date.getMonth() - 1);
  54      equals(selectedThis, inp[0], 'Callback change month/year this');
  55      equals(selectedInst, $.data(inp[0], PROP_NAME), 'Callback change month/year inst');
  56      equals(selectedDate, newMonthYear(date),
  57          'Callback change month/year date - pgup');
  58      inp.simulate('keydown', {keyCode: $.simulate.VK_PGDN});
  59      date.setMonth(date.getMonth() + 1);
  60      equals(selectedDate, newMonthYear(date),
  61          'Callback change month/year date - pgdn');
  62      inp.simulate('keydown', {ctrlKey: true, keyCode: $.simulate.VK_PGUP});
  63      date.setFullYear(date.getFullYear() - 1);
  64      equals(selectedDate, newMonthYear(date),
  65          'Callback change month/year date - ctrl+pgup');
  66      inp.simulate('keydown', {ctrlKey: true, keyCode: $.simulate.VK_HOME});
  67      date.setFullYear(date.getFullYear() + 1);
  68      equals(selectedDate, newMonthYear(date),
  69          'Callback change month/year date - ctrl+home');
  70      inp.simulate('keydown', {ctrlKey: true, keyCode: $.simulate.VK_PGDN});
  71      date.setFullYear(date.getFullYear() + 1);
  72      equals(selectedDate, newMonthYear(date),
  73          'Callback change month/year date - ctrl+pgdn');
  74      inp.datepicker('setDate', new Date(2007, 1 - 1, 26));
  75      equals(selectedDate, '2007/1', 'Callback change month/year date - setDate');
  76      selectedDate = null;
  77      inp.datepicker('setDate', new Date(2007, 1 - 1, 12));
  78      ok(selectedDate == null, 'Callback change month/year date - setDate no change');
  79      // onChangeMonthYear step by 2

  80      inp.datepicker('option', {stepMonths: 2}).
  81          datepicker('hide').val('').datepicker('show').
  82          simulate('keydown', {keyCode: $.simulate.VK_PGUP});
  83      date.setMonth(date.getMonth() - 14);
  84      equals(selectedDate, newMonthYear(date),
  85          'Callback change month/year by 2 date - pgup');
  86      inp.simulate('keydown', {ctrlKey: true, keyCode: $.simulate.VK_PGUP});
  87      date.setMonth(date.getMonth() - 12);
  88      equals(selectedDate, newMonthYear(date),
  89          'Callback change month/year by 2 date - ctrl+pgup');
  90      inp.simulate('keydown', {keyCode: $.simulate.VK_PGDN});
  91      date.setMonth(date.getMonth() + 2);
  92      equals(selectedDate, newMonthYear(date),
  93          'Callback change month/year by 2 date - pgdn');
  94      inp.simulate('keydown', {ctrlKey: true, keyCode: $.simulate.VK_PGDN});
  95      date.setMonth(date.getMonth() + 12);
  96      equals(selectedDate, newMonthYear(date),
  97          'Callback change month/year by 2 date - ctrl+pgdn');
  98      // onClose

  99      inp.datepicker('option', {onClose: callback, onChangeMonthYear: null, stepMonths: 1}).
 100          val('').datepicker('show').
 101          simulate('keydown', {keyCode: $.simulate.VK_ESC});
 102      equals(selectedThis, inp[0], 'Callback close this');
 103      equals(selectedInst, $.data(inp[0], PROP_NAME), 'Callback close inst');
 104      equals(selectedDate, '', 'Callback close date - esc');
 105      inp.val('').datepicker('show').
 106          simulate('keydown', {keyCode: $.simulate.VK_ENTER});
 107      equals(selectedDate, $.datepicker.formatDate('mm/dd/yy', new Date()),
 108          'Callback close date - enter');
 109      inp.val('02/04/2008').datepicker('show').
 110          simulate('keydown', {keyCode: $.simulate.VK_ESC});
 111      equals(selectedDate, '02/04/2008', 'Callback close date - preset');
 112      inp.val('02/04/2008').datepicker('show').
 113          simulate('keydown', {ctrlKey: true, keyCode: $.simulate.VK_END});
 114      equals(selectedDate, '', 'Callback close date - ctrl+end');
 115  });
 116  
 117  })(jQuery);


Generated: Mon Jul 9 18:01:44 2012 Cross-referenced by PHPXref 0.7