aboutsummaryrefslogtreecommitdiffhomepage
path: root/public/bower_components/bootstrap-datepicker/tests/suites/data-api.js
blob: a751f57111b44159d4d2c7c360704292f4a75dc9 (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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
module('DATA-API');

test('DATA-API: data-provide="datepicker" on input; focus', function(){
    var input = $('<input data-provide="datepicker" />')
                .appendTo('#qunit-fixture');
    input.focus();
    ok(input.data('datepicker'), 'datepicker is initialized by "focus" event');
});

test('DATA-API: data-provide="datepicker" on input; click', function(){
    var input = $('<input data-provide="datepicker" />')
                .appendTo('#qunit-fixture');
    input.click();
    ok(input.data('datepicker'), 'datepicker is initialized by "focus" event');
});

test('DATA-API: data-provide="datepicker" on component', function(){
    var html, comp;

    html = '<div class="input-append date" data-provide="datepicker">'+
                '<input><span class="add-on"><i class="icon-th"></i></span>'+
            '</div>';

    comp = $(html).appendTo('#qunit-fixture');
    comp.find('input').focus();
    ok(comp.data('datepicker'), 'append component initialized by "focus" event on input');
    comp.remove();

    comp = $(html).appendTo('#qunit-fixture');
    comp.find('input').click();
    ok(comp.data('datepicker'), 'append component initialized by "click" event on input');
    comp.remove();

    comp = $(html).appendTo('#qunit-fixture');
    comp.find('.add-on').focus();
    ok(comp.data('datepicker'), 'append component initialized by "focus" event on add-on');
    comp.remove();

    comp = $(html).appendTo('#qunit-fixture');
    comp.find('.add-on').click();
    ok(comp.data('datepicker'), 'append component initialized by "click" event on add-on');
    comp.remove();


    html = '<div class="input-prepend date" data-provide="datepicker">'+
                '<span class="add-on"><i class="icon-th"></i></span><input>'+
            '</div>';

    comp = $(html).prependTo('#qunit-fixture');
    comp.find('input').focus();
    ok(comp.data('datepicker'), 'prepend component initialized by "focus" event on input');
    comp.remove();

    comp = $(html).prependTo('#qunit-fixture');
    comp.find('input').click();
    ok(comp.data('datepicker'), 'prepend component initialized by "click" event on input');
    comp.remove();

    comp = $(html).prependTo('#qunit-fixture');
    comp.find('.add-on').focus();
    ok(comp.data('datepicker'), 'prepend component initialized by "focus" event on add-on');
    comp.remove();

    comp = $(html).prependTo('#qunit-fixture');
    comp.find('.add-on').click();
    ok(comp.data('datepicker'), 'prepend component initialized by "click" event on add-on');
    comp.remove();
});

test('DATA-API: data-provide="datepicker" on button', function(){
    var html, comp;

    html = '<button data-provide="datepicker">';

    comp = $(html).appendTo('#qunit-fixture');
    comp.focus();
    ok(comp.data('datepicker'), 'button initialized by "focus" event on input');
    comp.remove();

    comp = $(html).appendTo('#qunit-fixture');
    comp.click();
    ok(comp.data('datepicker'), 'button initialized by "click" event on input');
    comp.remove();
});

test('DATA-API: data-provide="datepicker" on rangepicker', function(){
    var html, comp;

    html = '<div class="input-daterange" data-provide="datepicker">'+
                '<input class="datepicker">'+
                '<span class="add-on">to</span>'+
                '<input class="datepicker">'+
            '</div>';

    comp = $(html).appendTo('#qunit-fixture');
    comp.find('input:first').focus();
    ok(comp.data('datepicker'), 'range initialized by "focus" event on first input');
    comp.remove();

    comp = $(html).appendTo('#qunit-fixture');
    comp.find('input:first').click();
    ok(comp.data('datepicker'), 'range initialized by "click" event on first input');
    comp.remove();

    comp = $(html).appendTo('#qunit-fixture');
    comp.find('input:last').focus();
    ok(comp.data('datepicker'), 'range initialized by "focus" event on last input');
    comp.remove();

    comp = $(html).appendTo('#qunit-fixture');
    comp.find('input:last').click();
    ok(comp.data('datepicker'), 'range initialized by "click" event on last input');
    comp.remove();
});