aboutsummaryrefslogtreecommitdiffhomepage
path: root/public/bower_components/bootstrap-datepicker/tests/suites/mouse_navigation/2011.js
blob: 9aa4628016973dc1819ff5a5a731afeb57e7e41a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
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
});