-->
<script type="text/javascript" src="../tests/to_dom_coords.js"></script>
<script type="text/javascript" src="../tests/resize.js"></script>
+ <script type="text/javascript" src="../tests/TwoDigitYears.js"></script>
<script type="text/javascript" src="../tests/update_options.js"></script>
<script type="text/javascript" src="../tests/update_while_panning.js"></script>
<script type="text/javascript" src="../tests/utils_test.js"></script>
--- /dev/null
+/**
+ * @fileoverview Test to check that years < 100 get the correct ticks.
+ *
+ * @author gmadrid@gmail.com (George Madrid)
+ */
+var TwoDigitYearsTestCase = TestCase("TwoDigitYears");
+
+TwoDigitYearsTestCase.prototype.testTwoDigitYears = function() {
+ var start = new Date(9, 2, 3);
+ var end = new Date(11, 3, 5);
+
+ // Javascript will automatically add 1900 to our years if they are < 100.
+ // Use setFullYear() to get the actual years we desire.
+ start.setFullYear(9);
+ end.setFullYear(11);
+
+ var ticks = Dygraph.getDateAxis(start, end, Dygraph.QUARTERLY, function(x) {
+ return Dygraph.DEFAULT_ATTRS.axes['x'][x];
+ });
+
+ assertEquals([{"v":-61875345600000,"label":"Apr 9"},{"v":-61867483200000,"label":"Jul 9"},{"v":-61859534400000,"label":"Oct 9"},{"v":-61851582000000,"label":"Jan 10"},{"v":-61843809600000,"label":"Apr 10"},{"v":-61835947200000,"label":"Jul 10"},{"v":-61827998400000,"label":"Oct 10"},{"v":-61820046000000,"label":"Jan 11"},{"v":-61812273600000,"label":"Apr 11"}], ticks);
+};
var start_year = new Date(start_time).getFullYear();
var end_year = new Date(end_time).getFullYear();
- var zeropad = Dygraph.zeropad;
for (var i = start_year; i <= end_year; i++) {
if (i % year_mod !== 0) continue;
for (var j = 0; j < months.length; j++) {
- var date_str = i + "/" + zeropad(1 + months[j]) + "/01";
- t = Dygraph.dateStrToMillis(date_str);
+ var dt = new Date(i, months[j], 1);
+ dt.setFullYear(i);
+ t = dt.getTime();
if (t < start_time || t > end_time) continue;
ticks.push({ v:t,
label: formatter(new Date(t), granularity, opts, dg)