add dependencies to package.json,

add http-server script to package.json,
add simple e2e test in main.e2e.test.js

Signed-off-by: Arthur Lu <learthurgo@gmail.com>
This commit is contained in:
Arthur Lu 2022-11-16 16:10:31 -08:00
parent 540d6563d8
commit dd7d876f29
3 changed files with 41 additions and 6 deletions

View File

@ -7,7 +7,8 @@
"lint": "eslint '**/*.js'",
"fix-style": "eslint --fix **/*.js",
"lintHTML": "htmlhint '**/*.html'",
"lintCSS": "stylelint '**/*.css'"
"lintCSS": "stylelint '**/*.css'",
"http-server": "http-server source &"
},
"devDependencies": {
"eslint": "^8.27.0",
@ -15,6 +16,8 @@
"mocha": "10",
"mock-local-storage": "^1.1.23",
"stylelint": "14.14.1",
"stylelint-config-standard": "^29.0.0"
"stylelint-config-standard": "^29.0.0",
"puppeteer": "18",
"http-server": ""
}
}

View File

@ -2,11 +2,12 @@ import {strict as assert} from "node:assert";
import {describe, it, beforeEach} from "mocha";
import {saveReviewsToStorage, getReviewsFromStorage} from "./localStorage.js";
describe("test app localStorage interaction", () => {
beforeEach(() => {
localStorage.clear();
});
describe("test app localStorage interaction", () => {
it("get after init", () => {
assert.deepEqual(getReviewsFromStorage(), []);
});

View File

@ -0,0 +1,31 @@
import {strict as assert} from "node:assert";
import {describe, it, beforeEach} from "mocha";
import puppeteer from 'puppeteer-core';
import { exit } from "node:process";
describe("test App end to end", async () => {
let browser;
let page;
beforeEach(async () => {
browser = await puppeteer.launch();
page = await browser.newPage();
try{
await page.goto('http://localhost:8080', {timeout: 1000});
}
catch (error) {
console.log("❌ failed to connect to localhost webserver on port 8080")
exit(1);
}
});
it("page should have correct title", async () => {
assert.strictEqual(await page.title(), "Food Journal");
});
afterEach(async () => {
await page.close();
await browser.close();
});
});