| | 179 | |
| | 180 | test("Date.isLeapYear()", function() { |
| | 181 | var dtm = new Date('01/01/2008'); |
| | 182 | ok( dtm.isLeapYear() == true, 'is a leap year' ); |
| | 183 | dtm = new Date('01/01/2007'); |
| | 184 | ok( dtm.isLeapYear() == false, 'is not a lear' ); |
| | 185 | }); |
| | 186 | |
| | 187 | test("Date.isWeekend()", function() { |
| | 188 | var dtm = new Date('01/07/2007'); |
| | 189 | ok( dtm.isWeekend() == true, 'on a Sunday' ); |
| | 190 | dtm = new Date('01/08/2007'); |
| | 191 | ok( dtm.isWeekend() == false, 'on a Monday' ); |
| | 192 | dtm = new Date('01/09/2007'); |
| | 193 | ok( dtm.isWeekend() == false, 'on a Tuesday' ); |
| | 194 | dtm = new Date('01/10/2007'); |
| | 195 | ok( dtm.isWeekend() == false, 'on a Wednesday' ); |
| | 196 | dtm = new Date('01/11/2007'); |
| | 197 | ok( dtm.isWeekend() == false, 'on a Thursday' ); |
| | 198 | dtm = new Date('01/12/2007'); |
| | 199 | ok( dtm.isWeekend() == false, 'on a Friday' ); |
| | 200 | dtm = new Date('01/06/2007'); |
| | 201 | ok( dtm.isWeekend() == true, 'on a Saturday' ); |
| | 202 | }); |
| | 203 | |
| | 204 | test("Date.isWeekDay()", function() { |
| | 205 | var dtm = new Date('01/07/2007'); |
| | 206 | ok( dtm.isWeekDay() == false, 'on a Sunday' ); |
| | 207 | dtm = new Date('01/08/2007'); |
| | 208 | ok( dtm.isWeekDay() == true, 'on a Monday' ); |
| | 209 | dtm = new Date('01/09/2007'); |
| | 210 | ok( dtm.isWeekDay() == true, 'on a Tuesday' ); |
| | 211 | dtm = new Date('01/10/2007'); |
| | 212 | ok( dtm.isWeekDay() == true, 'on a Wednesday' ); |
| | 213 | dtm = new Date('01/11/2007'); |
| | 214 | ok( dtm.isWeekDay() == true, 'on a Thursday' ); |
| | 215 | dtm = new Date('01/12/2007'); |
| | 216 | ok( dtm.isWeekDay() == true, 'on a Friday' ); |
| | 217 | dtm = new Date('01/06/2007'); |
| | 218 | ok( dtm.isWeekDay() == false, 'on a Saturday' ); |
| | 219 | }); |
| | 220 | |
| | 221 | test("Date.getDaysInMonth()", function() { |
| | 222 | var dtm = new Date('01/01/2007'); |
| | 223 | ok( dtm.getDaysInMonth() == 31, 'in January'); |
| | 224 | dtm = new Date('02/01/2007'); |
| | 225 | ok( dtm.getDaysInMonth() == 28, 'in February'); |
| | 226 | dtm = new Date('02/01/2008'); |
| | 227 | ok( dtm.getDaysInMonth() == 29, 'in February on a leap year'); |
| | 228 | dtm = new Date('03/01/2007'); |
| | 229 | ok( dtm.getDaysInMonth() == 31, 'in March'); |
| | 230 | dtm = new Date('04/01/2007'); |
| | 231 | ok( dtm.getDaysInMonth() == 30, 'in April'); |
| | 232 | dtm = new Date('05/01/2007'); |
| | 233 | ok( dtm.getDaysInMonth() == 31, 'in May'); |
| | 234 | dtm = new Date('06/01/2007'); |
| | 235 | ok( dtm.getDaysInMonth() == 30, 'in June'); |
| | 236 | dtm = new Date('07/01/2007'); |
| | 237 | ok( dtm.getDaysInMonth() == 31, 'in July'); |
| | 238 | dtm = new Date('08/01/2007'); |
| | 239 | ok( dtm.getDaysInMonth() == 31, 'in August'); |
| | 240 | dtm = new Date('09/01/2007'); |
| | 241 | ok( dtm.getDaysInMonth() == 30, 'in September'); |
| | 242 | dtm = new Date('10/01/2007'); |
| | 243 | ok( dtm.getDaysInMonth() == 31, 'in October'); |
| | 244 | dtm = new Date('11/01/2007'); |
| | 245 | ok( dtm.getDaysInMonth() == 30, 'in November'); |
| | 246 | dtm = new Date('12/01/2007'); |
| | 247 | ok( dtm.getDaysInMonth() == 31, 'in December'); |
| | 248 | }); |
| | 249 | |
| | 250 | test("Date.getDayName()", function() { |
| | 251 | var dtm = new Date('01/07/2007'); |
| | 252 | ok( dtm.getDayName() == 'Sunday', 'on a Sunday' ); |
| | 253 | dtm = new Date('01/08/2007'); |
| | 254 | ok( dtm.getDayName() == 'Monday', 'on a Monday' ); |
| | 255 | dtm = new Date('01/09/2007'); |
| | 256 | ok( dtm.getDayName() == 'Tuesday', 'on a Tuesday' ); |
| | 257 | dtm = new Date('01/10/2007'); |
| | 258 | ok( dtm.getDayName() == 'Wednesday', 'on a Wednesday' ); |
| | 259 | dtm = new Date('01/11/2007'); |
| | 260 | ok( dtm.getDayName() == 'Thursday', 'on a Thursday' ); |
| | 261 | dtm = new Date('01/12/2007'); |
| | 262 | ok( dtm.getDayName() == 'Friday', 'on a Friday' ); |
| | 263 | dtm = new Date('01/06/2007'); |
| | 264 | ok( dtm.getDayName() == 'Saturday', 'on a Saturday' ); |
| | 265 | |
| | 266 | dtm = new Date('01/07/2007'); |
| | 267 | ok( dtm.getDayName(true) == 'Sun', 'on a Sunday abbreviated' ); |
| | 268 | dtm = new Date('01/08/2007'); |
| | 269 | ok( dtm.getDayName(true) == 'Mon', 'on a Monday abbreviated' ); |
| | 270 | dtm = new Date('01/09/2007'); |
| | 271 | ok( dtm.getDayName(true) == 'Tue', 'on a Tuesday abbreviated' ); |
| | 272 | dtm = new Date('01/10/2007'); |
| | 273 | ok( dtm.getDayName(true) == 'Wed', 'on a Wednesday abbreviated' ); |
| | 274 | dtm = new Date('01/11/2007'); |
| | 275 | ok( dtm.getDayName(true) == 'Thu', 'on a Thursday abbreviated' ); |
| | 276 | dtm = new Date('01/12/2007'); |
| | 277 | ok( dtm.getDayName(true) == 'Fri', 'on a Friday abbreviated' ); |
| | 278 | dtm = new Date('01/06/2007'); |
| | 279 | ok( dtm.getDayName(true) == 'Sat', 'on a Saturday abbreviated' ); |
| | 280 | }); |
| | 281 | |
| | 282 | test("Date.getMonthName()", function() { |
| | 283 | var dtm = new Date('01/01/2007'); |
| | 284 | ok( dtm.getMonthName() == 'January', 'in January'); |
| | 285 | dtm = new Date('02/01/2007'); |
| | 286 | ok( dtm.getMonthName() == 'February', 'in February'); |
| | 287 | dtm = new Date('03/01/2007'); |
| | 288 | ok( dtm.getMonthName() == 'March', 'in March'); |
| | 289 | dtm = new Date('04/01/2007'); |
| | 290 | ok( dtm.getMonthName() == 'April', 'in April'); |
| | 291 | dtm = new Date('05/01/2007'); |
| | 292 | ok( dtm.getMonthName() == 'May', 'in May'); |
| | 293 | dtm = new Date('06/01/2007'); |
| | 294 | ok( dtm.getMonthName() == 'June', 'in June'); |
| | 295 | dtm = new Date('07/01/2007'); |
| | 296 | ok( dtm.getMonthName() == 'July', 'in July'); |
| | 297 | dtm = new Date('08/01/2007'); |
| | 298 | ok( dtm.getMonthName() == 'August', 'in August'); |
| | 299 | dtm = new Date('09/01/2007'); |
| | 300 | ok( dtm.getMonthName() == 'September', 'in September'); |
| | 301 | dtm = new Date('10/01/2007'); |
| | 302 | ok( dtm.getMonthName() == 'October', 'in October'); |
| | 303 | dtm = new Date('11/01/2007'); |
| | 304 | ok( dtm.getMonthName() == 'November', 'in November'); |
| | 305 | dtm = new Date('12/01/2007'); |
| | 306 | ok( dtm.getMonthName() == 'December', 'in December'); |
| | 307 | |
| | 308 | dtm = new Date('01/01/2007'); |
| | 309 | ok( dtm.getMonthName(true) == 'Jan', 'in January'); |
| | 310 | dtm = new Date('02/01/2007'); |
| | 311 | ok( dtm.getMonthName(true) == 'Feb', 'in February'); |
| | 312 | dtm = new Date('03/01/2007'); |
| | 313 | ok( dtm.getMonthName(true) == 'Mar', 'in March'); |
| | 314 | dtm = new Date('04/01/2007'); |
| | 315 | ok( dtm.getMonthName(true) == 'Apr', 'in April'); |
| | 316 | dtm = new Date('05/01/2007'); |
| | 317 | ok( dtm.getMonthName(true) == 'May', 'in May'); |
| | 318 | dtm = new Date('06/01/2007'); |
| | 319 | ok( dtm.getMonthName(true) == 'Jun', 'in June'); |
| | 320 | dtm = new Date('07/01/2007'); |
| | 321 | ok( dtm.getMonthName(true) == 'Jul', 'in July'); |
| | 322 | dtm = new Date('08/01/2007'); |
| | 323 | ok( dtm.getMonthName(true) == 'Aug', 'in August'); |
| | 324 | dtm = new Date('09/01/2007'); |
| | 325 | ok( dtm.getMonthName(true) == 'Sep', 'in September'); |
| | 326 | dtm = new Date('10/01/2007'); |
| | 327 | ok( dtm.getMonthName(true) == 'Oct', 'in October'); |
| | 328 | dtm = new Date('11/01/2007'); |
| | 329 | ok( dtm.getMonthName(true) == 'Nov', 'in November'); |
| | 330 | dtm = new Date('12/01/2007'); |
| | 331 | ok( dtm.getMonthName(true) == 'Dec', 'in December'); |
| | 332 | }); |
| | 333 | |
| | 334 | test("Date.getDayOfYear()", function() { |
| | 335 | var dtm = new Date('01/01/2007'); |
| | 336 | ok( dtm.getDayOfYear() == 0, 'First day of the year' ); |
| | 337 | dtm = new Date('12/31/2007'); |
| | 338 | ok( dtm.getDayOfYear() == 364, 'Last day of the year' ); |
| | 339 | }); |
| | 340 | |
| | 341 | test("Date.getWeekOfYear()", function() { |
| | 342 | var dtm = new Date('01/01/2007'); |
| | 343 | ok( dtm.getWeekOfYear() == 0, 'First week of the year' ); |
| | 344 | dtm = new Date('12/31/2007'); |
| | 345 | ok( dtm.getWeekOfYear() == 52, 'Last week of the year' ); |
| | 346 | }); |
| | 347 | |
| | 348 | test("Date.setDayOfYear()", function() { |
| | 349 | var dtm = new Date('01/01/2007'); |
| | 350 | ok( dtm.setDayOfYear(365).getDayOfYear() == 364, 'Last day of the year' ); |
| | 351 | dtm = new Date('12/31/2007'); |
| | 352 | ok( dtm.setDayOfYear(1).getDayOfYear() == 0, 'First day of the year' ); |
| | 353 | }); |
| | 354 | |
| | 355 | test("Date.addYears()", function() { |
| | 356 | var dtm = new Date('01/01/2007'); |
| | 357 | dtm.addYears(1); |
| | 358 | ok( dtm.getFullYear() == 2008, 'Add one year' ); |
| | 359 | dtm.addYears(-1); |
| | 360 | ok( dtm.getFullYear() == 2007, 'Subtract one year' ); |
| | 361 | }); |
| | 362 | |
| | 363 | test("Date.addMonths()", function() { |
| | 364 | var dtm = new Date('01/01/2007'); |
| | 365 | dtm.addMonths(1); |
| | 366 | ok( dtm.getMonthName() == 'February', 'Add one month' ); |
| | 367 | dtm.addMonths(-1); |
| | 368 | ok( dtm.getMonthName() == 'January', 'Subtract one month' ); |
| | 369 | }); |
| | 370 | |
| | 371 | test("Date.addDays()", function() { |
| | 372 | var dtm = new Date('01/01/2007'); |
| | 373 | dtm.addDays(1); |
| | 374 | ok( dtm.getDayName() == 'Tuesday', 'Add one day' ); |
| | 375 | dtm.addDays(-1); |
| | 376 | ok( dtm.getDayName() == 'Monday', 'Subtract one day' ); |
| | 377 | }); |
| | 378 | |
| | 379 | test("Date.addHours()", function() { |
| | 380 | var dtm = new Date('01/01/2007'); |
| | 381 | dtm.addHours(24); |
| | 382 | ok( dtm.getDayName() == 'Tuesday', 'Add 24 hours' ); |
| | 383 | dtm.addHours(-24); |
| | 384 | ok( dtm.getDayName() == 'Monday', 'Subtract 24 hours' ); |
| | 385 | }); |
| | 386 | |
| | 387 | test("Date.addMinutes()", function() { |
| | 388 | var dtm = new Date('01/01/2007'); |
| | 389 | dtm.addMinutes(1440); |
| | 390 | ok( dtm.getDayName() == 'Tuesday', 'Add 1440 minutes' ); |
| | 391 | dtm.addMinutes(-1440); |
| | 392 | ok( dtm.getDayName() == 'Monday', 'Subtract 1440 minutes' ); |
| | 393 | }); |
| | 394 | |
| | 395 | test("Date.addSeconds()", function() { |
| | 396 | var dtm = new Date('01/01/2007'); |
| | 397 | dtm.addSeconds(86400); |
| | 398 | ok( dtm.getDayName() == 'Tuesday', 'Add 86400 seconds' ); |
| | 399 | dtm.addSeconds(-86400); |
| | 400 | ok( dtm.getDayName() == 'Monday', 'Subtract 86400 seconds' ); |
| | 401 | }); |
| | 402 | |