summaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorAndrey Panteleyev <insonifi@gmail.com>2015-06-26 20:21:59 +0300
committerAndrey Panteleyev <insonifi@gmail.com>2015-06-26 20:21:59 +0300
commit101ba95e8571a50b509a287d6dc623430e631cb0 (patch)
treec38d402e4df6cabb7cf7444815191b2710b13ff4 /test
parent47dbb0f8adb6a1f77bb4806ffb651c4e96849914 (diff)
downloadjQuery-Timepicker-Addon-101ba95e8571a50b509a287d6dc623430e631cb0.zip
jQuery-Timepicker-Addon-101ba95e8571a50b509a287d6dc623430e631cb0.tar.gz
jQuery-Timepicker-Addon-101ba95e8571a50b509a287d6dc623430e631cb0.tar.bz2
Allow direct time input from widget
Diffstat (limited to 'test')
-rw-r--r--test/jquery-ui-timepicker-addon_spec.js54
1 files changed, 54 insertions, 0 deletions
diff --git a/test/jquery-ui-timepicker-addon_spec.js b/test/jquery-ui-timepicker-addon_spec.js
index b5d8507..454b857 100644
--- a/test/jquery-ui-timepicker-addon_spec.js
+++ b/test/jquery-ui-timepicker-addon_spec.js
@@ -696,4 +696,58 @@ describe('datetimepicker', function() {
expect(inputFocusSpy).not.toHaveBeenCalled();
});
});
+
+ describe('timeInput', function () {
+ var $input;
+ beforeEach(function () {
+ $input = affix('input');
+ });
+ describe('option', function () {
+ it('just display, input disabled', function () {
+ $input.datetimepicker();
+ $input.trigger('focus');
+ var $timeInput = $('.ui_tpicker_time_input');
+ expect($timeInput.attr('disabled')).toBe('disabled');
+ });
+
+ it('allow type new time', function () {
+ $input.datetimepicker({timeInput: true});
+ $input.trigger('focus');
+ var $timeInput = $('.ui_tpicker_time_input');
+ expect($timeInput.attr('disabled')).toBeUndefined();
+ });
+ });
+
+ describe('behavior', function () {
+ beforeEach(function () {
+ $input.datetimepicker({timeInput: true});
+ $input.trigger('focus');
+ });
+ it('should update timepicker time', function () {
+ var inputTime = '12:34';
+ var inst = $.datepicker._getInst($input.get(0));
+ var tp_inst = $.datepicker._get(inst, 'timepicker');
+ var $timeInput = inst.dpDiv.find('.ui_tpicker_time_input');
+
+ $timeInput.val(inputTime).trigger('change');
+ expect(tp_inst.formattedTime).toEqual(inputTime);
+ });
+ it('revert to previous time value if input is invalid', function () {
+ var invalidTime = '123:456';
+ var inst = $.datepicker._getInst($input.get(0));
+ var tp_inst = $.datepicker._get(inst, 'timepicker');
+ var $timeInput = inst.dpDiv.find('.ui_tpicker_time_input');
+
+ var previousTimeString = tp_inst.formattedTime;
+ $timeInput.val(invalidTime).trigger('change');
+ expect(tp_inst.formattedTime).toEqual(previousTimeString);
+ });
+ });
+
+ afterEach(function () {
+ var $widget = $input.datepicker('widget');
+ $input.datepicker('destroy');
+ $widget.remove();
+ });
+ });
});