mirror of
https://github.com/louislam/uptime-kuma.git
synced 2025-08-08 06:29:57 +08:00
[wip] more test
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
// eslint-disable-next-line no-unused-vars
|
||||
const { Page } = require("puppeteer");
|
||||
const { sleep } = require("../src/util");
|
||||
|
||||
/**
|
||||
* Set back the correct data type for page object
|
||||
@@ -15,11 +16,13 @@ afterAll(() => {
|
||||
|
||||
});
|
||||
|
||||
const baseURL = "http://127.0.0.1:3002";
|
||||
|
||||
describe("Init", () => {
|
||||
const title = "Uptime Kuma";
|
||||
|
||||
beforeAll(async () => {
|
||||
await page.goto("http://127.0.0.1:3002");
|
||||
await page.goto(baseURL);
|
||||
});
|
||||
|
||||
it(`should be titled "${title}"`, async () => {
|
||||
@@ -35,32 +38,56 @@ describe("Init", () => {
|
||||
await page.type("#floatingPassword", "admin123");
|
||||
await page.type("#repeat", "admin123");
|
||||
await page.click(".btn-primary[type=submit]");
|
||||
await page.waitFor(3000);
|
||||
await sleep(3000);
|
||||
|
||||
// Go to /setup again
|
||||
await page.goto("http://127.0.0.1:3002/setup");
|
||||
await page.waitFor(3000);
|
||||
await page.goto(baseURL + "/setup");
|
||||
await sleep(3000);
|
||||
const pathname = await page.evaluate(() => location.pathname);
|
||||
expect(pathname).toEqual("/dashboard");
|
||||
|
||||
// Go to /
|
||||
await page.goto("http://127.0.0.1:3002");
|
||||
expect(pathname).toEqual("/dashboard");
|
||||
await page.goto(baseURL);
|
||||
expect(pathname).toEqual("/dashboard");
|
||||
});
|
||||
|
||||
describe("Init", () => {
|
||||
describe("Settings", () => {
|
||||
beforeAll(async () => {
|
||||
await page.goto(baseURL + "/settings");
|
||||
});
|
||||
|
||||
});
|
||||
});
|
||||
|
||||
describe("Status Page", () => {
|
||||
const title = "Uptime Kuma";
|
||||
beforeAll(async () => {
|
||||
await page.goto("http://127.0.0.1:3002/status");
|
||||
});
|
||||
it(`should be titled "${title}"`, async () => {
|
||||
await expect(page.title()).resolves.toMatch(title);
|
||||
it("Change Language", async () => {
|
||||
await page.select("#language", "zh-HK");
|
||||
let languageTitle = await page.evaluate(() => document.querySelector("[for=language]").innerText);
|
||||
expect(languageTitle).toMatch("語言");
|
||||
|
||||
await page.select("#language", "en");
|
||||
languageTitle = await page.evaluate(() => document.querySelector("[for=language]").innerText);
|
||||
expect(languageTitle).toMatch("Language");
|
||||
});
|
||||
|
||||
it("Change Theme", async () => {
|
||||
// Light
|
||||
await page.click(".btn[for=btncheck1]");
|
||||
await page.waitForSelector("div.light", {
|
||||
timeout: 2000
|
||||
});
|
||||
|
||||
await page.click(".btn[for=btncheck2]");
|
||||
await page.waitForSelector("div.dark", {
|
||||
timeout: 2000
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
describe("Status Page", () => {
|
||||
const title = "Uptime Kuma";
|
||||
beforeAll(async () => {
|
||||
await page.goto(baseURL + "/status");
|
||||
});
|
||||
it(`should be titled "${title}"`, async () => {
|
||||
await expect(page.title()).resolves.toMatch(title);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
|
Reference in New Issue
Block a user