@@ -55,3 +55,70 @@ describe('Check sidebar configurations', function() {
55
55
expect ( sidebar . _closeButtons . length ) . toBe ( 1 ) ;
56
56
} ) ;
57
57
} ) ;
58
+
59
+ describe ( 'Check sidebar API' , function ( ) {
60
+ var map , sidebar ;
61
+
62
+ beforeEach ( function ( ) {
63
+ document . body . innerHTML =
64
+ '<div id="sidebar" class="sidebar collapsed">' +
65
+ ' <div class="sidebar-tabs">' +
66
+ ' <ul>' +
67
+ ' <li><a href="#home">Home</a></li>' +
68
+ ' </ul>' +
69
+ ' </div>' +
70
+ ' <div class="sidebar-content">' +
71
+ ' <div class="sidebar-pane">' +
72
+ ' <span class="sidebar-close"></span>' +
73
+ ' </div>' +
74
+ ' </div>' +
75
+ '</div>' +
76
+ '<div id="map" class="sidebar-map"></div>' ;
77
+ map = new ol . Map ( {
78
+ target : 'map' ,
79
+ layers : [
80
+ new ol . layer . Tile ( {
81
+ source : new ol . source . OSM ( )
82
+ } )
83
+ ] ,
84
+ view : new ol . View ( {
85
+ center : ol . proj . transform ( [ 7 , 51.2 ] , 'EPSG:4326' , 'EPSG:3857' ) ,
86
+ zoom : 4
87
+ } )
88
+ } ) ;
89
+ sidebar = new ol . control . Sidebar ( { element : 'sidebar' } ) ;
90
+ } ) ;
91
+
92
+ test ( 'Sidebar control gets added to map' , function ( ) {
93
+ var numControlsBefore = map . getControls ( ) . getArray ( ) . length ;
94
+ map . addControl ( sidebar ) ;
95
+ var numControlsAfter = map . getControls ( ) . getArray ( ) . length ;
96
+
97
+ expect ( numControlsAfter - numControlsBefore ) . toBe ( 1 ) ;
98
+ } ) ;
99
+
100
+ test ( 'Sidebar is not collapsed when opened' , function ( ) {
101
+ map . addControl ( sidebar ) ;
102
+ sidebar . open ( ) ;
103
+ var sidebarDivClass = document . getElementById ( 'sidebar' ) . getAttribute ( 'class' ) ;
104
+
105
+ expect ( sidebarDivClass ) . not . toContain ( 'collapsed' ) ;
106
+ } ) ;
107
+
108
+ test ( 'Sidebar is collapsed after being closed' , function ( ) {
109
+ map . addControl ( sidebar ) ;
110
+ var sidebarDivClass = document . getElementById ( 'sidebar' ) . getAttribute ( 'class' ) ;
111
+
112
+ expect ( sidebarDivClass ) . toContain ( 'collapsed' ) ;
113
+
114
+ sidebar . open ( ) ;
115
+
116
+ sidebarDivClass = document . getElementById ( 'sidebar' ) . getAttribute ( 'class' ) ;
117
+ expect ( sidebarDivClass ) . not . toContain ( 'collapsed' ) ;
118
+
119
+ sidebar . close ( ) ;
120
+
121
+ sidebarDivClass = document . getElementById ( 'sidebar' ) . getAttribute ( 'class' ) ;
122
+ expect ( sidebarDivClass ) . toContain ( 'collapsed' ) ;
123
+ } ) ;
124
+ } ) ;
0 commit comments