2.0_beta sync to rsa
[framework/web/web-ui-fw.git] / tests / unit-tests / searchbar / searchbar-tests.js
1 /*
2  * Unit Test: Searchbar list
3  *
4  * Wongi Lee <wongi11.lee@samsung.com>
5  */
6
7 $( document ).ready( function () {
8
9         module( "Searchbar" );
10
11         // trigger pagecreate
12         $( "#searchbar-unit-test" ).page();
13
14         asyncTest( "Searchbar", function () {
15                 /* Initialize */
16                 var $divSearchbar = $( "div.input-search-bar" ),
17                         $input = $( "input" );
18
19                 equal( $divSearchbar.length, 1, "initialized" );
20                 equal( $divSearchbar.find( "div.ui-input-search" ).length, 1 );
21                 equal( $divSearchbar.find( "div.ui-input-search input.ui-input-text" ).length, 1 );
22                 equal( $divSearchbar.find( "div.ui-input-search a.ui-input-clear" ).hasClass( "ui-input-clear-hidden" ), true );
23                 equal( $divSearchbar.find( "div.ui-input-search div.ui-image-search" ).length, 1 );
24                 equal( $divSearchbar.find( "a.ui-input-cancel" ).hasClass( "ui-btn" ), true );
25                 equal( $divSearchbar.find( "a.ui-input-cancel" ).hasClass( "ui-btn-icon-cancel" ), true );
26                 equal( $("#searchbar-content p").filter( function ( index ) {
27                         return $( this ).css( "display" ) != "none";
28                 } ).length, 30 );
29
30                 /* Public Method */
31                 /* disable */
32                 $( "#searchInput" ).searchbar( "disable" );
33                 equal( $( "div.ui-input-search" ).hasClass( "ui-disabled" ), true, "disable" );
34                 equal( $( "#searchInput" ).attr( "disabled" ), "disabled" );
35
36                 /* enable */
37                 $( "#searchInput" ).searchbar( "enable" );
38                 equal( $( "div.ui-input-search" ).hasClass( "ui-disabled" ), false, "enable" );
39                 equal( $( "#searchInput" ).attr( "disabled" ), undefined );
40
41                 /* Event */
42                 /* Search : Input and trigger change */
43                 $input.focus();
44                 equal( $( "div.ui-image-search" ).css( "display" ), "none", "Input and trigger change" );
45
46                 $input.val( "a" ).trigger( "change" );
47
48                 equal( $("#searchbar-content p").filter( function ( index ) {
49                         return $( this ).css( "display" ) != "none";
50                 } ).length, 24 );
51
52                 $input.val( "ar" ).trigger( "change" );
53                 equal( $("#searchbar-content p").filter( function ( index ) {
54                         return $( this ).css( "display" ) != "none";
55                 } ).length, 10 );
56
57                 $input.val( "are" ).trigger( "change" );
58                 equal( $("#searchbar-content p").filter( function ( index ) {
59                         return $( this ).css( "display" ) != "none";
60                 } ).length, 1 );
61
62                 /* Clear button preesed. */
63                 $( "a.ui-input-clear" ).trigger( "click" );
64                 equal( $("#searchbar-content p").filter( function ( index ) {
65                         return $( this ).css( "display" ) != "none";
66                 } ).length, 30 );
67
68                 equal( $divSearchbar.find( "div.ui-input-search a.ui-input-clear" ).hasClass( "ui-input-clear-hidden" ), true, "Clear button pressed" );
69                 equal( $divSearchbar.find( "a.ui-input-cancel" ).hasClass( "ui-btn" ), true );
70                 equal( $divSearchbar.find( "a.ui-input-cancel" ).hasClass( "ui-btn-icon-cancel" ), true );
71
72                 /* Cancel button pressed. */
73                 $( "a.ui-btn-icon-cancel" ).trigger( "click" );
74                 notEqual( $( "div.ui-image-search" ).css( "display" ), "none" );
75
76                 start();
77         } );
78 } );