Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(20)

Side by Side Diff: packages/charted/test.disabled/time/time_test.dart

Issue 1400473008: Roll Observatory packages and add a roll script (Closed) Base URL: git@github.com:dart-lang/observatory_pub_packages.git@master
Patch Set: Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 /*
2 * Copyright 2014 Google Inc. All rights reserved.
3 *
4 * Use of this source code is governed by a BSD-style
5 * license that can be found in the LICENSE file or at
6 * https://developers.google.com/open-source/licenses/bsd
7 */
8
9 library charted.test.time;
10
11 import 'package:charted/time/time.dart';
12 import 'package:unittest/unittest.dart';
13
14 timeTests() {
15 List granularity = [
16 ['second', Time.second],
17 ['minute', Time.minute],
18 ['hour', Time.hour],
19 ['day', Time.day],
20 ['week', Time.week],
21 ['month', Time.month],
22 ['year', Time.year],
23 ];
24
25 DateTime date = new DateTime(2014, 7, 21, 0, 32, 30, 345);
26 List mockDate = [
27 /* Second */
28 [new DateTime(2014, 7, 21, 0, 32, 30), // floor
29 new DateTime(2014, 7, 21, 0, 32, 31), // ceil
30 new DateTime(2014, 7, 21, 0, 32, 30), // round
31 new DateTime(2014, 7, 21, 0, 32, 31, 345) // offset 1
32 ],
33 /* Minute */
34 [new DateTime(2014, 7, 21, 0, 32), // floor
35 new DateTime(2014, 7, 21, 0, 33), // ceil
36 new DateTime(2014, 7, 21, 0, 33), // round
37 new DateTime(2014, 7, 21, 0, 33, 30, 345) // offset 1
38 ],
39 /* Hour */
40 [new DateTime(2014, 7, 21, 0), // floor
41 new DateTime(2014, 7, 21, 1), // ceil
42 new DateTime(2014, 7, 21, 1), // round
43 new DateTime(2014, 7, 21, 1, 32, 30, 345) // offset 1
44 ],
45 /* Day */
46 [new DateTime(2014, 7, 21), // floor
47 new DateTime(2014, 7, 22), // ceil
48 new DateTime(2014, 7, 21), // round
49 new DateTime(2014, 7, 22, 0, 32, 30, 345) // offset 1
50 ],
51 /* Week */
52 [new DateTime(2014, 7, 21), // floor
53 new DateTime(2014, 7, 28), // ceil
54 new DateTime(2014, 7, 21), // round
55 new DateTime(2014, 7, 28, 0, 32, 30, 345) // offset 1
56 ],
57 /* Month */
58 [new DateTime(2014, 7), // floor
59 new DateTime(2014, 8), // ceil
60 new DateTime(2014, 8), // round
61 new DateTime(2014, 8, 21, 0, 32, 30, 345) // offset 1
62 ],
63 /* Year */
64 [new DateTime(2014), // floor
65 new DateTime(2015), // ceil
66 new DateTime(2015), // round
67 new DateTime(2015, 7, 21, 0, 32, 30, 345) // offset 1
68 ],
69 ];
70
71 for (var i = 0; i < granularity.length; i++) {
72 test('Time.${granularity[i][0]} returns a [TimeInterval] '
73 'with ${granularity[i][0]} granularity', () {
74 expect(granularity[i][1].floor(date)
75 .compareTo(mockDate[i][0]), equals(0));
76 expect(granularity[i][1].ceil(date)
77 .compareTo(mockDate[i][1]), equals(0));
78 expect(granularity[i][1].round(date)
79 .compareTo(mockDate[i][2]), equals(0));
80 expect(granularity[i][1].offset(date, 1)
81 .compareTo(mockDate[i][3]), equals(0));
82 });
83 }
84
85 test('Time.second.range returns a list of [DateTime] nicely stepped', () {
86 List range = Time.second.range(
87 new DateTime(2014, 1, 1, 0, 0, 0, 123),
88 new DateTime(2014, 1, 1, 0, 0, 20), 5);
89 expect(range.length, equals(3));
90 expect(range[0].compareTo(new DateTime(2014, 1, 1, 0, 0, 5)), equals(0));
91 expect(range[1].compareTo(new DateTime(2014, 1, 1, 0, 0, 10)), equals(0));
92 expect(range[2].compareTo(new DateTime(2014, 1, 1, 0, 0, 15)), equals(0));
93 });
94
95 test('Time.minute.range returns a list of [DateTime] nicely stepped', () {
96 List range = Time.minute.range(
97 new DateTime(2014, 1, 1, 0, 4, 10),
98 new DateTime(2014, 1, 1, 0, 10, 20), 2);
99 expect(range.length, equals(3));
100 expect(range[0].compareTo(new DateTime(2014, 1, 1, 0, 6)), equals(0));
101 expect(range[1].compareTo(new DateTime(2014, 1, 1, 0, 8)), equals(0));
102 expect(range[2].compareTo(new DateTime(2014, 1, 1, 0, 10)), equals(0));
103 });
104
105 test('Time.hour.range returns a list of [DateTime] nicely stepped', () {
106 List range = Time.hour.range(
107 new DateTime(2014, 1, 1, 20, 15),
108 new DateTime(2014, 1, 2, 2, 10, 20), 2);
109 expect(range.length, equals(3));
110 expect(range[0].compareTo(new DateTime(2014, 1, 1, 22)), equals(0));
111 expect(range[1].compareTo(new DateTime(2014, 1, 2, 0)), equals(0));
112 expect(range[2].compareTo(new DateTime(2014, 1, 2, 2)), equals(0));
113 });
114
115 test('Time.day.range returns a list of [DateTime] nicely stepped', () {
116 List range = Time.day.range(
117 new DateTime(2014, 1, 20, 10),
118 new DateTime(2014, 1, 29, 15), 3);
119 expect(range.length, equals(3));
120 expect(range[0].compareTo(new DateTime(2014, 1, 22)), equals(0));
121 expect(range[1].compareTo(new DateTime(2014, 1, 25)), equals(0));
122 expect(range[2].compareTo(new DateTime(2014, 1, 28)), equals(0));
123 });
124
125 test('Time.week.range returns a list of [DateTime] nicely stepped', () {
126 List range = Time.week.range(
127 new DateTime(2013, 12, 31, 10),
128 new DateTime(2014, 1, 29, 15), 1);
129 expect(range.length, equals(4));
130 expect(range[0].compareTo(new DateTime(2014, 1, 4)), equals(0));
131 expect(range[1].compareTo(new DateTime(2014, 1, 11)), equals(0));
132 expect(range[2].compareTo(new DateTime(2014, 1, 18)), equals(0));
133 expect(range[3].compareTo(new DateTime(2014, 1, 25)), equals(0));
134 });
135
136 test('Time.month.range returns a list of [DateTime] nicely stepped', () {
137 List range = Time.month.range(
138 new DateTime(2013, 12, 31, 10),
139 new DateTime(2014, 5, 29, 15), 2);
140 expect(range.length, equals(3));
141 expect(range[0].compareTo(new DateTime(2014, 1, 1)), equals(0));
142 expect(range[1].compareTo(new DateTime(2014, 3, 1)), equals(0));
143 expect(range[2].compareTo(new DateTime(2014, 5, 1)), equals(0));
144 });
145
146 test('Time.year.range returns a list of [DateTime] nicely stepped', () {
147 List range = Time.year.range(
148 new DateTime(2013, 12, 31, 10),
149 new DateTime(2018, 5, 29, 15), 2);
150 expect(range.length, equals(3));
151 expect(range[0].compareTo(new DateTime(2014, 1, 1)), equals(0));
152 expect(range[1].compareTo(new DateTime(2016, 1, 1)), equals(0));
153 expect(range[2].compareTo(new DateTime(2018, 1, 1)), equals(0));
154 });
155 }
OLDNEW
« no previous file with comments | « packages/charted/test.disabled/test_in_browser.html ('k') | packages/charted/test.disabled/transition/transition_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698