| OLD | NEW |
| 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 main() { | 5 main() { |
| 6 Duration d; | 6 Duration d; |
| 7 d = new Duration(days: 1); | 7 d = new Duration(days: 1); |
| 8 Expect.equals(86400000000, d.inMicroseconds); |
| 8 Expect.equals(86400000, d.inMilliseconds); | 9 Expect.equals(86400000, d.inMilliseconds); |
| 9 Expect.equals(86400, d.inSeconds); | 10 Expect.equals(86400, d.inSeconds); |
| 10 Expect.equals(1440, d.inMinutes); | 11 Expect.equals(1440, d.inMinutes); |
| 11 Expect.equals(24, d.inHours); | 12 Expect.equals(24, d.inHours); |
| 12 Expect.equals(1, d.inDays); | 13 Expect.equals(1, d.inDays); |
| 13 d = const Duration(hours: 1); | 14 d = const Duration(hours: 1); |
| 15 Expect.equals(3600000000, d.inMicroseconds); |
| 14 Expect.equals(3600000, d.inMilliseconds); | 16 Expect.equals(3600000, d.inMilliseconds); |
| 15 Expect.equals(3600, d.inSeconds); | 17 Expect.equals(3600, d.inSeconds); |
| 16 Expect.equals(60, d.inMinutes); | 18 Expect.equals(60, d.inMinutes); |
| 17 Expect.equals(1, d.inHours); | 19 Expect.equals(1, d.inHours); |
| 18 Expect.equals(0, d.inDays); | 20 Expect.equals(0, d.inDays); |
| 19 d = new Duration(minutes: 1); | 21 d = new Duration(minutes: 1); |
| 22 Expect.equals(60000000, d.inMicroseconds); |
| 20 Expect.equals(60000, d.inMilliseconds); | 23 Expect.equals(60000, d.inMilliseconds); |
| 21 Expect.equals(60, d.inSeconds); | 24 Expect.equals(60, d.inSeconds); |
| 22 Expect.equals(1, d.inMinutes); | 25 Expect.equals(1, d.inMinutes); |
| 23 Expect.equals(0, d.inHours); | 26 Expect.equals(0, d.inHours); |
| 24 Expect.equals(0, d.inDays); | 27 Expect.equals(0, d.inDays); |
| 25 d = const Duration(seconds: 1); | 28 d = const Duration(seconds: 1); |
| 29 Expect.equals(1000000, d.inMicroseconds); |
| 26 Expect.equals(1000, d.inMilliseconds); | 30 Expect.equals(1000, d.inMilliseconds); |
| 27 Expect.equals(1, d.inSeconds); | 31 Expect.equals(1, d.inSeconds); |
| 28 Expect.equals(0, d.inMinutes); | 32 Expect.equals(0, d.inMinutes); |
| 29 Expect.equals(0, d.inHours); | 33 Expect.equals(0, d.inHours); |
| 30 Expect.equals(0, d.inDays); | 34 Expect.equals(0, d.inDays); |
| 31 d = new Duration(milliseconds: 1); | 35 d = new Duration(milliseconds: 1); |
| 36 Expect.equals(1000, d.inMicroseconds); |
| 32 Expect.equals(1, d.inMilliseconds); | 37 Expect.equals(1, d.inMilliseconds); |
| 33 Expect.equals(0, d.inSeconds); | 38 Expect.equals(0, d.inSeconds); |
| 34 Expect.equals(0, d.inMinutes); | 39 Expect.equals(0, d.inMinutes); |
| 35 Expect.equals(0, d.inHours); | 40 Expect.equals(0, d.inHours); |
| 36 Expect.equals(0, d.inDays); | 41 Expect.equals(0, d.inDays); |
| 42 d = new Duration(microseconds: 1); |
| 43 Expect.equals(1, d.inMicroseconds); |
| 44 Expect.equals(0, d.inMilliseconds); |
| 45 Expect.equals(0, d.inSeconds); |
| 46 Expect.equals(0, d.inMinutes); |
| 47 Expect.equals(0, d.inHours); |
| 48 Expect.equals(0, d.inDays); |
| 37 | 49 |
| 50 d = const Duration(milliseconds: 1, microseconds: 999); |
| 51 Expect.equals(1999, d.inMicroseconds); |
| 52 Expect.equals(1, d.inMilliseconds); |
| 38 d = const Duration(seconds: 1, milliseconds: 999); | 53 d = const Duration(seconds: 1, milliseconds: 999); |
| 39 Expect.equals(1999, d.inMilliseconds); | 54 Expect.equals(1999, d.inMilliseconds); |
| 40 Expect.equals(1, d.inSeconds); | 55 Expect.equals(1, d.inSeconds); |
| 41 d = new Duration(minutes: 1, seconds: 59); | 56 d = new Duration(minutes: 1, seconds: 59); |
| 42 Expect.equals(119, d.inSeconds); | 57 Expect.equals(119, d.inSeconds); |
| 43 Expect.equals(1, d.inMinutes); | 58 Expect.equals(1, d.inMinutes); |
| 44 d = const Duration(hours: 1, minutes: 59); | 59 d = const Duration(hours: 1, minutes: 59); |
| 45 Expect.equals(119, d.inMinutes); | 60 Expect.equals(119, d.inMinutes); |
| 46 Expect.equals(1, d.inHours); | 61 Expect.equals(1, d.inHours); |
| 47 d = new Duration(days: 1, hours:23); | 62 d = new Duration(days: 1, hours:23); |
| 48 Expect.equals(47, d.inHours); | 63 Expect.equals(47, d.inHours); |
| 49 Expect.equals(1, d.inDays); | 64 Expect.equals(1, d.inDays); |
| 50 d = const Duration( | 65 d = const Duration( |
| 51 days: 0, hours: 23, minutes: 59, seconds: 59, milliseconds: 999); | 66 days: 0, hours: 23, minutes: 59, seconds: 59, milliseconds: 999, |
| 67 microseconds: 999); |
| 52 Expect.equals(0, d.inDays); | 68 Expect.equals(0, d.inDays); |
| 53 | 69 |
| 54 d = new Duration(days: -1); | 70 d = new Duration(days: -1); |
| 71 Expect.equals(-86400000000, d.inMicroseconds); |
| 55 Expect.equals(-86400000, d.inMilliseconds); | 72 Expect.equals(-86400000, d.inMilliseconds); |
| 56 Expect.equals(-86400, d.inSeconds); | 73 Expect.equals(-86400, d.inSeconds); |
| 57 Expect.equals(-1440, d.inMinutes); | 74 Expect.equals(-1440, d.inMinutes); |
| 58 Expect.equals(-24, d.inHours); | 75 Expect.equals(-24, d.inHours); |
| 59 Expect.equals(-1, d.inDays); | 76 Expect.equals(-1, d.inDays); |
| 60 d = const Duration(hours: -1); | 77 d = const Duration(hours: -1); |
| 78 Expect.equals(-3600000000, d.inMicroseconds); |
| 61 Expect.equals(-3600000, d.inMilliseconds); | 79 Expect.equals(-3600000, d.inMilliseconds); |
| 62 Expect.equals(-3600, d.inSeconds); | 80 Expect.equals(-3600, d.inSeconds); |
| 63 Expect.equals(-60, d.inMinutes); | 81 Expect.equals(-60, d.inMinutes); |
| 64 Expect.equals(-1, d.inHours); | 82 Expect.equals(-1, d.inHours); |
| 65 Expect.equals(0, d.inDays); | 83 Expect.equals(0, d.inDays); |
| 66 d = new Duration(minutes: -1); | 84 d = new Duration(minutes: -1); |
| 85 Expect.equals(-60000000, d.inMicroseconds); |
| 67 Expect.equals(-60000, d.inMilliseconds); | 86 Expect.equals(-60000, d.inMilliseconds); |
| 68 Expect.equals(-60, d.inSeconds); | 87 Expect.equals(-60, d.inSeconds); |
| 69 Expect.equals(-1, d.inMinutes); | 88 Expect.equals(-1, d.inMinutes); |
| 70 Expect.equals(0, d.inHours); | 89 Expect.equals(0, d.inHours); |
| 71 Expect.equals(0, d.inDays); | 90 Expect.equals(0, d.inDays); |
| 72 d = const Duration(seconds: -1); | 91 d = const Duration(seconds: -1); |
| 92 Expect.equals(-1000000, d.inMicroseconds); |
| 73 Expect.equals(-1000, d.inMilliseconds); | 93 Expect.equals(-1000, d.inMilliseconds); |
| 74 Expect.equals(-1, d.inSeconds); | 94 Expect.equals(-1, d.inSeconds); |
| 75 Expect.equals(0, d.inMinutes); | 95 Expect.equals(0, d.inMinutes); |
| 76 Expect.equals(0, d.inHours); | 96 Expect.equals(0, d.inHours); |
| 77 Expect.equals(0, d.inDays); | 97 Expect.equals(0, d.inDays); |
| 78 d = new Duration(milliseconds: -1); | 98 d = new Duration(milliseconds: -1); |
| 99 Expect.equals(-1000, d.inMicroseconds); |
| 79 Expect.equals(-1, d.inMilliseconds); | 100 Expect.equals(-1, d.inMilliseconds); |
| 80 Expect.equals(0, d.inSeconds); | 101 Expect.equals(0, d.inSeconds); |
| 81 Expect.equals(0, d.inMinutes); | 102 Expect.equals(0, d.inMinutes); |
| 82 Expect.equals(0, d.inHours); | 103 Expect.equals(0, d.inHours); |
| 83 Expect.equals(0, d.inDays); | 104 Expect.equals(0, d.inDays); |
| 105 d = new Duration(microseconds: -1); |
| 106 Expect.equals(-1, d.inMicroseconds); |
| 107 Expect.equals(0, d.inMilliseconds); |
| 108 Expect.equals(0, d.inSeconds); |
| 109 Expect.equals(0, d.inMinutes); |
| 110 Expect.equals(0, d.inHours); |
| 111 Expect.equals(0, d.inDays); |
| 84 | 112 |
| 85 d = const Duration(days: 1, hours: -24); | 113 d = const Duration(days: 1, hours: -24); |
| 86 Expect.equals(0, d.inMilliseconds); | 114 Expect.equals(0, d.inMicroseconds); |
| 87 d = new Duration(hours: 1, minutes: -60); | 115 d = new Duration(hours: 1, minutes: -60); |
| 88 Expect.equals(0, d.inMilliseconds); | 116 Expect.equals(0, d.inMicroseconds); |
| 89 d = const Duration(minutes: 1, seconds: -60); | 117 d = const Duration(minutes: 1, seconds: -60); |
| 90 Expect.equals(0, d.inMilliseconds); | 118 Expect.equals(0, d.inMicroseconds); |
| 91 d = new Duration(seconds: 1, milliseconds: -1000); | 119 d = new Duration(seconds: 1, milliseconds: -1000); |
| 92 Expect.equals(0, d.inMilliseconds); | 120 Expect.equals(0, d.inMicroseconds); |
| 121 d = new Duration(milliseconds: 1, microseconds: -1000); |
| 122 Expect.equals(0, d.inMicroseconds); |
| 93 | 123 |
| 94 d = const Duration(hours: 25); | 124 d = const Duration(hours: 25); |
| 95 Expect.equals(1, d.inDays); | 125 Expect.equals(1, d.inDays); |
| 96 Expect.equals(25, d.inHours); | 126 Expect.equals(25, d.inHours); |
| 97 Expect.equals(1500, d.inMinutes); | 127 Expect.equals(1500, d.inMinutes); |
| 98 Expect.equals(90000, d.inSeconds); | 128 Expect.equals(90000, d.inSeconds); |
| 99 Expect.equals(90000000, d.inMilliseconds); | 129 Expect.equals(90000000, d.inMilliseconds); |
| 130 Expect.equals(90000000000, d.inMicroseconds); |
| 100 d = new Duration(minutes: 61); | 131 d = new Duration(minutes: 61); |
| 101 Expect.equals(0, d.inDays); | 132 Expect.equals(0, d.inDays); |
| 102 Expect.equals(1, d.inHours); | 133 Expect.equals(1, d.inHours); |
| 103 Expect.equals(61, d.inMinutes); | 134 Expect.equals(61, d.inMinutes); |
| 104 Expect.equals(3660, d.inSeconds); | 135 Expect.equals(3660, d.inSeconds); |
| 105 Expect.equals(3660000, d.inMilliseconds); | 136 Expect.equals(3660000, d.inMilliseconds); |
| 137 Expect.equals(3660000000, d.inMicroseconds); |
| 106 d = const Duration(seconds: 61); | 138 d = const Duration(seconds: 61); |
| 107 Expect.equals(0, d.inDays); | 139 Expect.equals(0, d.inDays); |
| 108 Expect.equals(0, d.inHours); | 140 Expect.equals(0, d.inHours); |
| 109 Expect.equals(1, d.inMinutes); | 141 Expect.equals(1, d.inMinutes); |
| 110 Expect.equals(61, d.inSeconds); | 142 Expect.equals(61, d.inSeconds); |
| 111 Expect.equals(61000, d.inMilliseconds); | 143 Expect.equals(61000, d.inMilliseconds); |
| 144 Expect.equals(61000000, d.inMicroseconds); |
| 112 d = new Duration(milliseconds: 1001); | 145 d = new Duration(milliseconds: 1001); |
| 113 Expect.equals(0, d.inDays); | 146 Expect.equals(0, d.inDays); |
| 114 Expect.equals(0, d.inHours); | 147 Expect.equals(0, d.inHours); |
| 115 Expect.equals(0, d.inMinutes); | 148 Expect.equals(0, d.inMinutes); |
| 116 Expect.equals(1, d.inSeconds); | 149 Expect.equals(1, d.inSeconds); |
| 117 Expect.equals(1001, d.inMilliseconds); | 150 Expect.equals(1001, d.inMilliseconds); |
| 151 Expect.equals(1001000, d.inMicroseconds); |
| 152 d = new Duration(microseconds: 1001); |
| 153 Expect.equals(0, d.inDays); |
| 154 Expect.equals(0, d.inHours); |
| 155 Expect.equals(0, d.inMinutes); |
| 156 Expect.equals(0, d.inSeconds); |
| 157 Expect.equals(1, d.inMilliseconds); |
| 158 Expect.equals(1001, d.inMicroseconds); |
| 118 | 159 |
| 119 var d1 = const Duration(milliseconds: 1000); | 160 var d1 = const Duration(milliseconds: 1000); |
| 120 var d2 = const Duration(seconds: 1); | 161 var d2 = const Duration(seconds: 1); |
| 121 Expect.identical(d1, d2); | 162 Expect.identical(d1, d2); |
| 122 | 163 |
| 164 d1 = const Duration(microseconds: 1000); |
| 165 d2 = const Duration(milliseconds: 1); |
| 166 Expect.identical(d1, d2); |
| 167 |
| 123 d1 = new Duration(hours: 1); | 168 d1 = new Duration(hours: 1); |
| 124 d2 = new Duration(hours: -1); | 169 d2 = new Duration(hours: -1); |
| 125 d = d1 + d2; | 170 d = d1 + d2; |
| 126 Expect.equals(0, d.inMilliseconds); | 171 Expect.equals(0, d.inMicroseconds); |
| 127 d = d1 - d2; | 172 d = d1 - d2; |
| 128 Expect.equals(3600000 * 2, d.inMilliseconds); | 173 Expect.equals(3600000000 * 2, d.inMicroseconds); |
| 129 | 174 |
| 130 d2 = new Duration(hours: 1); | 175 d2 = new Duration(hours: 1); |
| 131 d = d1 + d2; | 176 d = d1 + d2; |
| 132 Expect.equals(3600000 * 2, d.inMilliseconds); | 177 Expect.equals(3600000000 * 2, d.inMicroseconds); |
| 133 d = d1 - d2; | 178 d = d1 - d2; |
| 134 Expect.equals(0, d.inMilliseconds); | 179 Expect.equals(0, d.inMicroseconds); |
| 135 | 180 |
| 136 d = d1 * 2; | 181 d = d1 * 2; |
| 137 Expect.equals(3600000 * 2, d.inMilliseconds); | 182 Expect.equals(3600000000 * 2, d.inMicroseconds); |
| 138 d = d1 * -1; | 183 d = d1 * -1; |
| 139 Expect.equals(-3600000, d.inMilliseconds); | 184 Expect.equals(-3600000000, d.inMicroseconds); |
| 140 d = d1 * 0; | 185 d = d1 * 0; |
| 141 Expect.equals(0, d.inMilliseconds); | 186 Expect.equals(0, d.inMicroseconds); |
| 142 | 187 |
| 143 d = d1 ~/ 2; | 188 d = d1 ~/ 2; |
| 144 Expect.equals(1800000, d.inMilliseconds); | 189 Expect.equals(1800000000, d.inMicroseconds); |
| 145 d = d1 ~/ 3600001; | 190 d = d1 ~/ 3600000001; |
| 146 Expect.equals(0, d.inMilliseconds); | 191 Expect.equals(0, d.inMicroseconds); |
| 147 d = d1 ~/ -3600001; | 192 d = d1 ~/ -3600000001; |
| 148 Expect.equals(0, d.inMilliseconds); | 193 Expect.equals(0, d.inMicroseconds); |
| 149 d = d1 ~/ 3599999; | 194 d = d1 ~/ 3599999999; |
| 150 Expect.equals(1, d.inMilliseconds); | 195 Expect.equals(1, d.inMicroseconds); |
| 151 d = d1 ~/ -3599999; | 196 d = d1 ~/ -3599999999; |
| 152 Expect.equals(-1, d.inMilliseconds); | 197 Expect.equals(-1, d.inMicroseconds); |
| 153 d = d1 ~/ -1; | 198 d = d1 ~/ -1; |
| 154 Expect.equals(-3600000, d.inMilliseconds); | 199 Expect.equals(-3600000000, d.inMicroseconds); |
| 155 d = d1 * 0; | 200 d = d1 * 0; |
| 156 Expect.equals(0, d.inMilliseconds); | 201 Expect.equals(0, d.inMicroseconds); |
| 157 Expect.throws(() => d1 ~/ 0, | 202 Expect.throws(() => d1 ~/ 0, |
| 158 (e) => e is IntegerDivisionByZeroException); | 203 (e) => e is IntegerDivisionByZeroException); |
| 159 | 204 |
| 160 d = new Duration(milliseconds: 0); | 205 d = new Duration(microseconds: 0); |
| 161 Expect.isTrue(d < new Duration(milliseconds: 1)); | 206 Expect.isTrue(d < new Duration(microseconds: 1)); |
| 162 Expect.isTrue(d <= new Duration(milliseconds: 1)); | 207 Expect.isTrue(d <= new Duration(microseconds: 1)); |
| 163 Expect.isTrue(d <= d); | 208 Expect.isTrue(d <= d); |
| 164 Expect.isTrue(d > new Duration(milliseconds: -1)); | 209 Expect.isTrue(d > new Duration(microseconds: -1)); |
| 165 Expect.isTrue(d >= new Duration(milliseconds: -1)); | 210 Expect.isTrue(d >= new Duration(microseconds: -1)); |
| 166 Expect.isTrue(d >= d); | 211 Expect.isTrue(d >= d); |
| 212 |
| 213 d = const Duration(days: 1, hours: 3, minutes: 17, seconds: 42, |
| 214 milliseconds: 823, microseconds: 127); |
| 215 Expect.equals("27:17:42.823127", d.toString()); |
| 216 |
| 217 d = const Duration(hours: 1999, minutes: 17, seconds: 42); |
| 218 Expect.equals("1999:17:42.000000", d.toString()); |
| 219 |
| 220 d = const Duration(days: -1, hours: -3, minutes: -17, seconds: -42, |
| 221 milliseconds: -823, microseconds: -127); |
| 222 Expect.equals("-27:17:42.823127", d.toString()); |
| 223 |
| 224 d = const Duration(hours: -1999, minutes: -17, seconds: -42); |
| 225 Expect.equals("-1999:17:42.000000", d.toString()); |
| 167 } | 226 } |
| OLD | NEW |