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

Side by Side Diff: packages/charted/test.disabled/scale/time_scale_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 part of charted.test.scale;
10
11 testTimeScale() {
12 List mockTimes = [
13 // 0: differ in milliseconds
14 new DateTime(2014, 1, 3, 0, 2, 3, 0),
15 new DateTime(2014, 1, 3, 0, 2, 3, 125),
16 new DateTime(2014, 1, 3, 0, 2, 3, 890),
17 // 3: differ in seconds:
18 new DateTime(2014, 1, 3, 0, 2, 3),
19 new DateTime(2014, 1, 3, 0, 2, 4),
20 new DateTime(2014, 1, 3, 0, 2, 10, 10),
21 // 6: differ in minutes:
22 new DateTime(2014, 1, 3, 0, 3, 4),
23 new DateTime(2014, 1, 3, 0, 5, 30),
24 new DateTime(2014, 1, 3, 0, 20, 31, 23),
25 // 9: differ in hours:
26 new DateTime(2014, 1, 3, 1, 2, 13),
27 new DateTime(2014, 1, 3, 5, 25, 3),
28 new DateTime(2014, 1, 3, 23, 45, 43, 100),
29 // 12: differ in days:
30 new DateTime(2014, 1, 5, 2, 1, 23, 200),
31 new DateTime(2014, 1, 14, 10, 0, 3, 25),
32 new DateTime(2014, 1, 30, 20, 32, 33),
33 // 15: differ in months:
34 new DateTime(2014, 2, 13, 3, 48, 53),
35 new DateTime(2014, 6, 8, 6, 25, 13),
36 new DateTime(2014, 12, 20, 20, 17, 3, 400),
37 // 18: differ in years:
38 new DateTime(2015, 3, 8, 23, 23, 6),
39 new DateTime(2017, 8, 23, 1, 10, 4, 100),
40 new DateTime(2044, 1, 5, 0, 9, 8, 100),
41 ];
42
43
44 test('TimeScale.nice() extends domain boundary elements to nice values', () {
45 TimeScale timeScale = new TimeScale();
46 timeScale.domain = [mockTimes[0], mockTimes[8]];
47 timeScale.nice();
48 expect(timeScale.domain, orderedEquals([
49 new DateTime(2014, 1, 3, 0, 2).millisecondsSinceEpoch,
50 new DateTime(2014, 1, 3, 0, 21).millisecondsSinceEpoch
51 ]));
52 timeScale.domain = [mockTimes[1], mockTimes[10]];
53 timeScale.nice();
54 expect(timeScale.domain, orderedEquals([
55 new DateTime(2014, 1, 3).millisecondsSinceEpoch,
56 new DateTime(2014, 1, 3, 5, 30).millisecondsSinceEpoch
57 ]));
58 timeScale.domain = [mockTimes[13], mockTimes[19]];
59 timeScale.nice(5);
60 expect(timeScale.domain, orderedEquals([
61 new DateTime(2014, 1).millisecondsSinceEpoch,
62 new DateTime(2018, 1).millisecondsSinceEpoch
63 ]));
64 });
65
66 test('TimeScale.niceInterval() extends domain to nice values', () {
67 TimeScale timeScale = new TimeScale();
68 timeScale.domain = [mockTimes[2], mockTimes[11]];
69 timeScale.niceInterval(1, 3);
70 expect(timeScale.domain, orderedEquals([
71 new DateTime(2014, 1, 3).millisecondsSinceEpoch,
72 new DateTime(2014, 1, 4).millisecondsSinceEpoch
73 ]));
74 timeScale.domain = [mockTimes[5], mockTimes[6]];
75 timeScale.niceInterval(5, 2);
76 expect(timeScale.domain, orderedEquals([
77 new DateTime(2014, 1, 3, 0, 2).millisecondsSinceEpoch,
78 new DateTime(2014, 1, 3, 0, 3, 15).millisecondsSinceEpoch
79 ]));
80 timeScale.domain = [mockTimes[14], mockTimes[18]];
81 timeScale.niceInterval(16, 3);
82 expect(timeScale.domain, orderedEquals([
83 new DateTime(2014, 1, 1).millisecondsSinceEpoch,
84 new DateTime(2015, 4, 1).millisecondsSinceEpoch
85 ]));
86 });
87
88 test('TimeScale.ticks() returns correct tick values', () {
89 TimeScale timeScale = new TimeScale();
90 timeScale.domain = [mockTimes[3], mockTimes[9]];
91 expect(timeScale.ticks(3), orderedEquals([
92 new DateTime(2014, 1, 3, 0, 15),
93 new DateTime(2014, 1, 3, 0, 30),
94 new DateTime(2014, 1, 3, 0, 45),
95 new DateTime(2014, 1, 3, 1, 0)
96 ]));
97 timeScale.domain = [mockTimes[4], mockTimes[15]];
98 expect(timeScale.ticks(5), orderedEquals([
99 new DateTime(2014, 1, 7),
100 new DateTime(2014, 1, 14),
101 new DateTime(2014, 1, 21),
102 new DateTime(2014, 1, 28),
103 new DateTime(2014, 2, 4),
104 new DateTime(2014, 2, 11)
105 ]));
106 timeScale.domain = [mockTimes[7], mockTimes[19]];
107 expect(timeScale.ticks(3), orderedEquals([
108 new DateTime(2015, 1, 1),
109 new DateTime(2016, 1, 1),
110 new DateTime(2017, 1, 1)
111 ]));
112 });
113
114 test('TimeScale.ticksInterval() returns correct tick values', () {
115 TimeScale timeScale = new TimeScale();
116 timeScale.domain = [mockTimes[0], mockTimes[12]];
117 expect(timeScale.ticksInterval(3, 2), orderedEquals([
118 new DateTime(2014, 1, 3, 12),
119 new DateTime(2014, 1, 4),
120 new DateTime(2014, 1, 4, 12),
121 new DateTime(2014, 1, 5)
122 ]));
123 timeScale.domain = [mockTimes[16], mockTimes[17]];
124 expect(timeScale.ticksInterval(7, 10), orderedEquals([
125 new DateTime(2014, 7, 1),
126 new DateTime(2014, 8, 1),
127 new DateTime(2014, 9, 1),
128 new DateTime(2014, 10, 1),
129 new DateTime(2014, 11, 1),
130 new DateTime(2014, 12, 1)
131 ]));
132 timeScale.domain = [mockTimes[13], mockTimes[20]];
133 expect(timeScale.ticksInterval(2, 5), orderedEquals([
134 new DateTime(2020, 1, 1),
135 new DateTime(2040, 1, 1)
136 ]));
137 });
138
139 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698