Skip to content
This repository was archived by the owner on Dec 11, 2022. It is now read-only.

Commit d674dad

Browse files
authored
Merge pull request #62 from doitintl/testing
Add tests for timeshift to BigQueryQuery.
2 parents 5dd6343 + 8f79b7f commit d674dad

File tree

1 file changed

+28
-0
lines changed

1 file changed

+28
-0
lines changed

src/specs/bigquery_query.test.ts

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -130,6 +130,15 @@ describe("BigQueryQuery", () => {
130130
expect(query.buildValueColumn(column)).toBe(
131131
"v as tmpv, v as tmpv, moving_window(v) OVER (PARTITION BY timC ORDER BY timC ROWS undefined PRECEDING) AS a"
132132
);
133+
column = [
134+
{ type: "column", params: ["v"] },
135+
{ type: "alias", params: ["a"] },
136+
{ type: "moving_window", params: ["moving_window"] },
137+
{ type: "timeshift", params: ["zz"] }
138+
];
139+
expect(query.buildValueColumn(column)).toBe(
140+
"v as tmpv, v as tmpv, moving_window(v) OVER (PARTITION BY timC ORDER BY timC ROWS undefined PRECEDING) AS a $__timeShifting(zz)"
141+
);
133142
});
134143

135144
describe("When generating value column SQL with metric column", () => {
@@ -331,4 +340,23 @@ describe("BigQueryQuery", () => {
331340
"TIMESTAMP_SECONDS(DIV(UNIX_SECONDS(my_data), 31536000) * 31536000)"
332341
);
333342
});
343+
344+
describe("getUnixSecondsFromString", () => {
345+
expect(BigQueryQuery.getUnixSecondsFromString("1s")).toBe("1");
346+
expect(BigQueryQuery.getUnixSecondsFromString("1min")).toBe("60");
347+
expect(BigQueryQuery.getUnixSecondsFromString("1h")).toBe("3600");
348+
expect(BigQueryQuery.getUnixSecondsFromString("1d")).toBe("86400");
349+
expect(BigQueryQuery.getUnixSecondsFromString("1w")).toBe("604800");
350+
expect(BigQueryQuery.getUnixSecondsFromString("1m")).toBe("2629743");
351+
expect(BigQueryQuery.getUnixSecondsFromString("1y")).toBe("31536000");
352+
expect(BigQueryQuery.getUnixSecondsFromString("1z")).toBe("0");
353+
});
354+
355+
describe("replaceTimeShift", () => {
356+
expect(BigQueryQuery.replaceTimeShift("$__timeShifting(1d)")).toBe("");
357+
});
358+
describe("getTimeShift", () => {
359+
expect(BigQueryQuery.getTimeShift("$__timeShifting(1d)")).toBe("1d");
360+
expect(BigQueryQuery.getTimeShift("$__timeShifting(1d")).toBe(null);
361+
});
334362
});

0 commit comments

Comments
 (0)