mirror of
https://github.com/dart-lang/sdk
synced 2024-11-02 08:20:31 +00:00
a4d799c402
Note that cast_test.dart isn't migrated yet due to #39517. First patch set is just copying the tests over. The second patchset has the actual meaningful changes. Change-Id: I89233f20187b4305a776f865cde09a984423fa4f Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/125920 Commit-Queue: Bob Nystrom <rnystrom@google.com> Reviewed-by: Lasse R.H. Nielsen <lrn@google.com> Auto-Submit: Bob Nystrom <rnystrom@google.com>
56 lines
2.4 KiB
Dart
56 lines
2.4 KiB
Dart
// Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
|
|
// for details. All rights reserved. Use of this source code is governed by a
|
|
// BSD-style license that can be found in the LICENSE file.
|
|
|
|
import "package:expect/expect.dart";
|
|
|
|
check(DateTime expected, String str) {
|
|
DateTime actual = DateTime.parse(str);
|
|
Expect.equals(expected, actual); // Only checks if they are at the same time.
|
|
Expect.equals(expected.isUtc, actual.isUtc);
|
|
}
|
|
|
|
bool get supportsMicroseconds =>
|
|
new DateTime.fromMicrosecondsSinceEpoch(1).microsecondsSinceEpoch == 1;
|
|
|
|
main() {
|
|
check(new DateTime(2012, 02, 27, 13, 27), "2012-02-27 13:27:00");
|
|
if (supportsMicroseconds) {
|
|
check(new DateTime.utc(2012, 02, 27, 13, 27, 0, 123, 456),
|
|
"2012-02-27 13:27:00.1234567891234z");
|
|
check(new DateTime.utc(2012, 02, 27, 13, 27, 0, 123, 456),
|
|
"2012-02-27 13:27:00,1234567891234z");
|
|
} else {
|
|
check(new DateTime.utc(2012, 02, 27, 13, 27, 0, 123, 0),
|
|
"2012-02-27 13:27:00.1234567891234z");
|
|
check(new DateTime.utc(2012, 02, 27, 13, 27, 0, 123, 0),
|
|
"2012-02-27 13:27:00,1234567891234z");
|
|
}
|
|
check(new DateTime(2012, 02, 27, 13, 27), "20120227 13:27:00");
|
|
check(new DateTime(2012, 02, 27, 13, 27), "20120227T132700");
|
|
check(new DateTime(2012, 02, 27), "20120227");
|
|
check(new DateTime(2012, 02, 27), "+20120227");
|
|
check(new DateTime.utc(2012, 02, 27, 14), "2012-02-27T14Z");
|
|
check(new DateTime.utc(-12345, 1, 1), "-123450101 00:00:00 Z");
|
|
check(new DateTime.utc(2012, 02, 27, 14), "2012-02-27T14+00");
|
|
check(new DateTime.utc(2012, 02, 27, 14), "2012-02-27T14+0000");
|
|
check(new DateTime.utc(2012, 02, 27, 14), "2012-02-27T14+00:00");
|
|
check(new DateTime.utc(2012, 02, 27, 14), "2012-02-27T14 +00:00");
|
|
|
|
check(new DateTime.utc(2015, 02, 14, 13, 0, 0, 0), "2015-02-15T00:00+11");
|
|
check(new DateTime.utc(2015, 02, 14, 13, 0, 0, 0), "2015-02-15T00:00:00+11");
|
|
check(
|
|
new DateTime.utc(2015, 02, 14, 13, 0, 0, 0), "2015-02-15T00:00:00+11:00");
|
|
|
|
if (supportsMicroseconds) {
|
|
check(new DateTime.utc(2015, 02, 15, 0, 0, 0, 500, 500),
|
|
"2015-02-15T00:00:00.500500Z");
|
|
check(new DateTime.utc(2015, 02, 15, 0, 0, 0, 511, 500),
|
|
"2015-02-15T00:00:00.511500Z");
|
|
} else {
|
|
check(new DateTime.utc(2015, 02, 15, 0, 0, 0, 501),
|
|
"2015-02-15T00:00:00.501Z");
|
|
check(new DateTime.utc(2015, 02, 15, 0, 0, 0, 512),
|
|
"2015-02-15T00:00:00.512Z");
|
|
}
|
|
}
|