Update js test with new log JSON
This commit is contained in:
parent
7b7c5f932e
commit
66e3e23812
4 changed files with 1025 additions and 5634 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
|
@ -56,7 +56,6 @@ pytest_report.xml
|
||||||
.coverage.picamera
|
.coverage.picamera
|
||||||
.coverage.main
|
.coverage.main
|
||||||
picamera_test_hashes.json
|
picamera_test_hashes.json
|
||||||
webapp/src/tests/fixtures/*
|
|
||||||
|
|
||||||
# Translations
|
# Translations
|
||||||
*.mo
|
*.mo
|
||||||
|
|
|
||||||
1018
webapp/src/tests/fixtures/realLog.json
vendored
Normal file
1018
webapp/src/tests/fixtures/realLog.json
vendored
Normal file
File diff suppressed because it is too large
Load diff
5618
webapp/src/tests/fixtures/realLog.txt
vendored
5618
webapp/src/tests/fixtures/realLog.txt
vendored
File diff suppressed because it is too large
Load diff
|
|
@ -3,8 +3,7 @@ import { describe, it, expect, vi, beforeEach } from "vitest";
|
||||||
import { createTestingPinia } from "@pinia/testing";
|
import { createTestingPinia } from "@pinia/testing";
|
||||||
import { setActivePinia } from "pinia";
|
import { setActivePinia } from "pinia";
|
||||||
import axios from "axios";
|
import axios from "axios";
|
||||||
import fs from "fs";
|
import realLogs from "../fixtures/realLog.json";
|
||||||
import path from "path";
|
|
||||||
import LoggingContent from "../../components/tabContentComponents/loggingContent.vue";
|
import LoggingContent from "../../components/tabContentComponents/loggingContent.vue";
|
||||||
|
|
||||||
// Mock Axios
|
// Mock Axios
|
||||||
|
|
@ -33,12 +32,10 @@ describe("Test LoggingContent.vue", () => {
|
||||||
let wrapper;
|
let wrapper;
|
||||||
|
|
||||||
// Define path to a real log file and read it
|
// Define path to a real log file and read it
|
||||||
const logFilePath = path.resolve(__dirname, "../fixtures/realLog.txt");
|
const mockLogData = realLogs;
|
||||||
const mockLogData = fs.readFileSync(logFilePath, "utf-8");
|
|
||||||
|
|
||||||
// Things to do before each test
|
// Things to do before each test
|
||||||
beforeEach(async () => {
|
beforeEach(async () => {
|
||||||
vi.useFakeTimers();
|
|
||||||
// Reset mocks before each test
|
// Reset mocks before each test
|
||||||
vi.resetAllMocks();
|
vi.resetAllMocks();
|
||||||
|
|
||||||
|
|
@ -69,8 +66,6 @@ describe("Test LoggingContent.vue", () => {
|
||||||
});
|
});
|
||||||
// flush so we avoid leaving uncompleted processes running on background
|
// flush so we avoid leaving uncompleted processes running on background
|
||||||
await flushPromises();
|
await flushPromises();
|
||||||
vi.advanceTimersByTime(1000);
|
|
||||||
vi.useRealTimers();
|
|
||||||
});
|
});
|
||||||
|
|
||||||
// Tear down wrapper, unmount testing component
|
// Tear down wrapper, unmount testing component
|
||||||
|
|
@ -107,14 +102,11 @@ describe("Test LoggingContent.vue", () => {
|
||||||
|
|
||||||
// Verify the logs have correct file length
|
// Verify the logs have correct file length
|
||||||
// Helps validate formatting, etc
|
// Helps validate formatting, etc
|
||||||
expect(wrapper.vm.logs.length).toBe(5491);
|
expect(wrapper.vm.logs.length).toBe(113);
|
||||||
|
|
||||||
// Check the most recent log
|
// Check the most recent log
|
||||||
expect(wrapper.vm.logs[0].level).toBe("INFO");
|
expect(wrapper.vm.logs[0].level).toBe("INFO");
|
||||||
|
expect(wrapper.vm.logs[0].logger).toContain("smart_scan");
|
||||||
// Check if the multi-line file has real first connection information
|
|
||||||
expect(wrapper.vm.logs[0].message).toContain("uvicorn");
|
|
||||||
expect(wrapper.vm.logs[0].summary).toContain("http://0.0.0.0:5000");
|
|
||||||
});
|
});
|
||||||
|
|
||||||
// Test 3: Filter logging file information
|
// Test 3: Filter logging file information
|
||||||
|
|
@ -124,19 +116,19 @@ describe("Test LoggingContent.vue", () => {
|
||||||
// Set filter to WARNING wait and compare expected length
|
// Set filter to WARNING wait and compare expected length
|
||||||
wrapper.vm.filterLevel = "WARNING";
|
wrapper.vm.filterLevel = "WARNING";
|
||||||
await wrapper.vm.$nextTick();
|
await wrapper.vm.$nextTick();
|
||||||
expect(wrapper.vm.filteredItems.length).toBe(1449);
|
expect(wrapper.vm.filteredItems.length).toBe(5);
|
||||||
expect(wrapper.vm.filteredItems[0].level).toBe("WARNING");
|
expect(wrapper.vm.filteredItems[0].level).toBe("WARNING");
|
||||||
|
|
||||||
// Set filter to INFO wait and compare expected length
|
// Set filter to INFO wait and compare expected length
|
||||||
wrapper.vm.filterLevel = "INFO";
|
wrapper.vm.filterLevel = "INFO";
|
||||||
await wrapper.vm.$nextTick();
|
await wrapper.vm.$nextTick();
|
||||||
expect(wrapper.vm.filteredItems.length).toBe(5491);
|
expect(wrapper.vm.filteredItems.length).toBe(113);
|
||||||
expect(wrapper.vm.filteredItems[0].level).toBe("INFO");
|
expect(wrapper.vm.filteredItems[0].level).toBe("INFO");
|
||||||
|
|
||||||
// Set filter to ERROR wait and compare expected length
|
// Set filter to ERROR wait and compare expected length
|
||||||
wrapper.vm.filterLevel = "ERROR";
|
wrapper.vm.filterLevel = "ERROR";
|
||||||
await wrapper.vm.$nextTick();
|
await wrapper.vm.$nextTick();
|
||||||
expect(wrapper.vm.filteredItems.length).toBe(7);
|
expect(wrapper.vm.filteredItems.length).toBe(1);
|
||||||
expect(wrapper.vm.filteredItems[0].level).toBe("ERROR");
|
expect(wrapper.vm.filteredItems[0].level).toBe("ERROR");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue