Files
notesnook/apps/web/__e2e__/importer.test.js

46 lines
1.2 KiB
JavaScript
Raw Normal View History

2021-12-27 22:09:39 +05:00
const { Page, test, expect } = require("@playwright/test");
const { getTestId, isTestAll, loginUser } = require("./utils");
const path = require("path");
/**
* @type {Page}
*/
var page = null;
global.page = null;
test.beforeEach(async ({ page: _page, baseURL }) => {
global.page = _page;
page = _page;
await page.goto(baseURL);
await page.waitForSelector(getTestId("routeHeader"));
});
if (!isTestAll()) test.skip();
test("login user & import notes", async () => {
await loginUser();
await page.click(getTestId("navitem-settings"));
await page.click(getTestId("settings-importer"));
await page.click(getTestId("settings-importer-import"));
const [fileChooser] = await Promise.all([
page.waitForEvent("filechooser"),
page.click(getTestId("import-dialog-select-files")),
]);
await fileChooser.setFiles(path.join(__dirname, "data", "importer-data.zip"));
await page.click(getTestId("importer-dialog-notes"));
let titles = [];
for (let i = 0; i < 6; ++i) {
const noteId = getTestId(`note-${i}`);
const text = await page.innerText(noteId);
titles.push(text);
}
expect(titles.join("\n")).toMatchSnapshot("importer-notes-titles.txt");
});