From 4daccddab5ee8ef094ac8920b40453afa711381c Mon Sep 17 00:00:00 2001 From: Amir Raminfar Date: Sun, 11 Apr 2021 14:02:56 -0700 Subject: [PATCH] Adds more js tests --- assets/components/LogEventSource.spec.js | 36 ++++++++++++++++++++++-- 1 file changed, 33 insertions(+), 3 deletions(-) diff --git a/assets/components/LogEventSource.spec.js b/assets/components/LogEventSource.spec.js index 69919503..133244bc 100644 --- a/assets/components/LogEventSource.spec.js +++ b/assets/components/LogEventSource.spec.js @@ -27,13 +27,13 @@ describe("", () => { debounce.mockClear(); }); - function createLogEventSource(searchFilter = null) { + function createLogEventSource({ hourStyle = "auto", searchFilter = null } = {}) { const localVue = createLocalVue(); localVue.use(Vuex); localVue.component("log-viewer", LogViewer); - const state = { searchFilter, settings: { size: "medium", showTimestamp: true, hourStyle: "auto" } }; + const state = { searchFilter, settings: { size: "medium", showTimestamp: true, hourStyle } }; const store = new Vuex.Store({ state, @@ -179,8 +179,38 @@ describe("", () => { `); }); + test("should render dates with 12 hour style", async () => { + const wrapper = createLogEventSource({ hourStyle: "12" }); + sources["/api/logs/stream?id=abc"].emitOpen(); + sources["/api/logs/stream?id=abc"].emitMessage({ + data: `2019-06-12T23:55:42.459034602Z foo bar`, + }); + + await wrapper.vm.$nextTick(); + expect(wrapper.find("ul.events")).toMatchInlineSnapshot(` +
    +
  • <test>foo bar</test>
  • +
+ `); + }); + + test("should render dates with 24 hour style", async () => { + const wrapper = createLogEventSource({ hourStyle: "24" }); + sources["/api/logs/stream?id=abc"].emitOpen(); + sources["/api/logs/stream?id=abc"].emitMessage({ + data: `2019-06-12T23:55:42.459034602Z foo bar`, + }); + + await wrapper.vm.$nextTick(); + expect(wrapper.find("ul.events")).toMatchInlineSnapshot(` +
    +
  • <test>foo bar</test>
  • +
+ `); + }); + test("should render messages with filter", async () => { - const wrapper = createLogEventSource("test"); + const wrapper = createLogEventSource({ searchFilter: "test" }); sources["/api/logs/stream?id=abc"].emitOpen(); sources["/api/logs/stream?id=abc"].emitMessage({ data: `2019-06-11T10:55:42.459034602Z Foo bar`,