@@ -152,5 +152,48 @@ describe('datetimepicker', function() {
152
152
expect ( util . _detectSupport ( 'acdf' ) . iso8601 ) . toBe ( false ) ;
153
153
} ) ;
154
154
} ) ;
155
+
156
+ describe ( 'selectLocalTimezone' , function ( ) {
157
+ var timepicker ,
158
+ timezoneOffset ,
159
+ defaultTimezoneOffset ;
160
+
161
+ beforeEach ( function ( ) {
162
+ timepicker = {
163
+ timezone_select : affix ( 'select' )
164
+ } ;
165
+ var now = new Date ( ) ;
166
+ timezoneOffset = String ( - now . getTimezoneOffset ( ) ) ;
167
+ defaultTimezoneOffset = String ( timezoneOffset - 60 ) ;
168
+ timepicker . timezone_select . affix ( 'option' ) . text ( defaultTimezoneOffset ) ;
169
+ timepicker . timezone_select . affix ( 'option' ) . text ( timezoneOffset ) ;
170
+ timepicker . timezone_select . affix ( 'option' ) . text ( timezoneOffset + 60 ) ;
171
+
172
+ } ) ;
173
+
174
+ it ( 'should do nothing for a falsey timepicker' , function ( ) {
175
+ util . _selectLocalTimezone ( undefined ) ;
176
+
177
+ expect ( timepicker . timezone_select . val ( ) ) . toBe ( defaultTimezoneOffset ) ;
178
+ } ) ;
179
+
180
+ it ( 'should do nothing for a timepicker with a falsey timezone_select' , function ( ) {
181
+ util . _selectLocalTimezone ( { } ) ;
182
+
183
+ expect ( timepicker . timezone_select . val ( ) ) . toBe ( defaultTimezoneOffset ) ;
184
+ } ) ;
185
+
186
+ it ( 'should select the current timezone with a valid timezone_select and no date' , function ( ) {
187
+ util . _selectLocalTimezone ( timepicker ) ;
188
+
189
+ expect ( timepicker . timezone_select . val ( ) ) . toBe ( timezoneOffset ) ;
190
+ } ) ;
191
+
192
+ it ( 'should select the current timezone with a valid timezone_select and a date' , function ( ) {
193
+ util . _selectLocalTimezone ( timepicker , new Date ( ) ) ;
194
+
195
+ expect ( timepicker . timezone_select . val ( ) ) . toBe ( timezoneOffset ) ;
196
+ } ) ;
197
+ } ) ;
155
198
} ) ;
156
199
} ) ;
0 commit comments