UnitTC: Additional unit testcases have been added
[platform/framework/web/web-ui-fw.git] / tests / additional-unit-tests / gallery / gallery-tests.js
1 /*
2  * Unit Test: gallery
3  *
4  * Minkyu Kang <mk7.kang@samsung.com>
5  */
6 /*jslint browser: true*/
7 /*global $, jQuery, test, equal, ok*/
8 $( document ).ready( function ( ) {
9         module("gallery");
10
11         var unit_gallery = function ( widget, count ) {
12                 var imagesldier,
13                         refresh = function ( widget ) {
14                                 widget.gallery("refresh", "1");
15                                 return widget.find(".ui-gallery-bg");
16                         },
17                         imageWrapperDiv = widget.find(".ui-gallery-bg"),
18                         imageCount = widget.find(".ui-gallery-bg img"),
19                         index = widget.jqmData("index"),
20                         alignment = widget.jqmData("vertical-align"),
21                         gallery,
22                         temp_img;
23
24                 /* Create */
25                 widget.gallery( );
26
27                 gallery = widget.find(".ui-gallery-bg");
28                 ok( gallery, "Create");
29
30                 /* Initialize */
31                 equal( gallery.length, count, "Initialize");
32
33                 /*Initail image count*/
34                 equal( imageCount.length, 3, "Makrup : image tag count");
35                 equal( imageWrapperDiv.length, count, "Markup : wrapper div count");
36
37                 /* current image*/
38                 equal( index , 3, "Property: data-index");
39
40                 /* vartical alignment image*/
41                 equal( alignment , "middle", "Property: data-vertical-align");
42
43                 /*Current Image Check*/
44                 temp_img = widget.find('.ui-gallery-bg:eq(' + index + ' ) img');
45                 equal( temp_img.attr("src") , "04.jpg", "Current Image Check");
46
47                 /* API: length */
48                 equal( widget.gallery("length"), count, "API: length");
49
50                 /* API: del */
51                 widget.gallery("remove", count - 1 );
52                 gallery = refresh( widget );
53                 equal( gallery.length, count - 1, "API: del");
54
55                 /* API: add */
56                 widget.gallery("add", "06.jpg");
57                 gallery = refresh( widget );
58                 equal( gallery.length, count , "API: add");
59
60                 /* vartical alignment image*/
61                 widget.jqmData("vertical-align", 'top') ;
62                 gallery = refresh( widget );
63                 alignment = widget.jqmData("vertical-align") ;
64                 equal( alignment , "top", "Property change: data-vertical-align");
65
66                 /* vartical alignment image*/
67                 widget.jqmData("vertical-align", 'bottom') ;
68                 gallery = refresh( widget );
69                 alignment = widget.jqmData("vertical-align") ;
70                 equal( alignment , "bottom", "Property change: data-vertical-align");
71
72                 /* API: length */
73                 equal( widget.gallery("value"), 1, "API: value");
74
75                 /* API: del */
76                 widget.gallery("remove", -1 );
77                 gallery = refresh( widget );
78                 equal( gallery.length, count , "API: remove with invalid index");
79                 widget.gallery("remove", 1 );
80                 gallery = refresh( widget );
81                 count-- ;
82                 equal( gallery.length, count , "API: remove with index less then current index");
83
84                 widget.gallery("remove", 3 );
85                 gallery = refresh( widget );
86                 count-- ;
87                 equal( gallery.length, count , "API: remove with index greater then current index");
88
89                 widget.gallery("remove", 2 );
90                 gallery = refresh( widget );
91                 count-- ;
92                 equal( gallery.length, count, "API: remove with current index");
93
94                 /* API: empty */
95                 widget.gallery("empty");
96                 gallery = refresh( widget );
97                 equal( gallery.length, 0, "API: empty");
98                 count = 0 ;
99
100                 /* API: add */
101                 widget.gallery("add", "06.jpg");
102                 widget.gallery("add", "07.jpg");
103                 widget.gallery("add", "08.jpg");
104                 count = 3;
105                 gallery = refresh( widget );
106                 equal( gallery.length, count , "API: add");
107                 widget.gallery("remove", 1 );
108                 gallery = refresh( widget );
109                 count-- ;
110                 equal( gallery.length, count, "API: remove with current index");
111                 widget.gallery("remove", 0 );
112                 gallery = refresh( widget );
113                 count-- ;
114                 equal( gallery.length, count, "API: remove with current index");
115
116                 widget.gallery("hide");
117                 gallery = refresh( widget );
118                 equal( gallery.find('ui-gallery-bg').attr('style'), undefined , "API: hide");
119                 widget.gallery("show");
120                 gallery = refresh( widget );
121                 equal( gallery.find('ui-gallery-bg').attr('style'), undefined , "API: show");
122         };
123
124         test("gallery", function ( ) {
125                 $('#gallery-page-test').page( );
126                 unit_gallery( $("#gallery"), 5 );
127         } );
128
129         test("Gallery Dynamic", function ( ) {
130
131                 var markup = '<div data-role="gallery"id="gallery2"data-index="3"data-vertical-align="middle">' +
132                                                                 '<img src="01.jpg"/>' +
133                                                                 '<img src="02.jpg"/>' +
134                                                                 '<img src="03.jpg"/>' +
135                                                                 '<img src="04.jpg"/>' +
136                                                         '</div>';
137                 $('#gallery-page-test-dynamic').page( );
138                 $('#gallery-page-test-dynamic').find(":jqmData(role=content)").append( markup ) ;
139                 $('#gallery-page-test-dynamic').find(":jqmData(role=content)").trigger('create') ;
140                 unit_gallery( $("#gallery2"), 5 );
141
142         } );
143
144 } );