Tests: Increase timeouts for acceptance tests

This commit is contained in:
Timo Volkmann 2021-09-28 13:39:27 +02:00
parent d6e81cc0b3
commit 18c8254cea
13 changed files with 230 additions and 230 deletions

View file

@ -13,11 +13,11 @@
"fmt": "eslint --cache --fix src/ *.js .eslintrc.js",
"test": "karma start",
"upgrade": "npm --depth 10 update && npm audit fix",
"acceptance": "testcafe \"chromium:headless --disable-dev-shm-usage\" --skip-js-errors --quarantine-mode --selector-timeout 5000 -S -s tests/screenshots tests/acceptance",
"acceptance-firefox": "testcafe firefox:headless --skip-js-errors --quarantine-mode --selector-timeout 5000 -S -s tests/screenshots tests/acceptance",
"acceptance-private": "testcafe \"chromium:headless --disable-dev-shm-usage\" --skip-js-errors --quarantine-mode --selector-timeout 5000 -S -s tests/screenshots tests/acceptance-private",
"acceptance-private-firefox": "testcafe firefox:headless --skip-js-errors --quarantine-mode --selector-timeout 5000 -S -s tests/screenshots tests/acceptance-private",
"acceptance-local": "testcafe chrome --selector-timeout 5000 -S -s tests/screenshots tests/acceptance",
"acceptance": "testcafe \"chromium:headless --disable-dev-shm-usage\" --skip-js-errors --quarantine-mode --selector-timeout 15000 -S -s tests/screenshots tests/acceptance",
"acceptance-firefox": "testcafe firefox:headless --skip-js-errors --quarantine-mode --selector-timeout 15000 -S -s tests/screenshots tests/acceptance",
"acceptance-private": "testcafe \"chromium:headless --disable-dev-shm-usage\" --skip-js-errors --quarantine-mode --selector-timeout 15000 -S -s tests/screenshots tests/acceptance-private",
"acceptance-private-firefox": "testcafe firefox:headless --skip-js-errors --quarantine-mode --selector-timeout 15000 -S -s tests/screenshots tests/acceptance-private",
"acceptance-local": "testcafe chrome --selector-timeout 15000 -S -s tests/screenshots tests/acceptance",
"gettext-extract": "gettext-extract --output src/locales/translations.pot $(find src -type f \\( -iname \\*.vue -o -iname \\*.js \\) -not -path src/common/vm.js)",
"gettext-compile": "gettext-compile --output src/locales/translations.json src/locales/*.po"
},

View file

@ -8,7 +8,7 @@ const page = new Page();
test.meta("testID", "authentication-000")(
"Time to start instance (will be marked as unstable)",
async (t) => {
await t.wait(5000);
await t.wait(15000);
}
);
@ -33,7 +33,7 @@ test.meta("testID", "authentication-001")("Login and Logout", async (t) => {
.expect(Selector(".input-password input").hasAttribute("type", "password"))
.ok()
.click(Selector(".action-confirm"))
.expect(Selector(".input-search input", { timeout: 7000 }).visible)
.expect(Selector(".input-search input", { timeout: 17000 }).visible)
.ok();
await page.openNav();
await t
@ -105,7 +105,7 @@ test.meta("testID", "authentication-003")("Change password", async (t) => {
await t.expect(Selector(".input-search input").visible).ok();
await page.openNav();
await t
.click(Selector(".nav-settings", { timeout: 7000 }))
.click(Selector(".nav-settings", { timeout: 17000 }))
.click(Selector("#tab-settings-account"))
.typeText(Selector(".input-current-password input"), "photoprism123", { replace: true })
.typeText(Selector(".input-new-password input"), "photoprism", { replace: true })

View file

@ -9,7 +9,7 @@ const page = new Page();
test.meta("testID", "authentication-000")(
"Time to start instance (will be marked as unstable)",
async (t) => {
await t.wait(5000);
await t.wait(15000);
}
);

View file

@ -118,9 +118,9 @@ test.meta("testID", "calendar-004")("Create/delete album during add to album", a
await t
.expect(PhotoCountInAlbum)
.eql(PhotoCountInCalendar)
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 15000 })
.ok()
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 15000 })
.ok();
await page.openNav();
await t.click(Selector(".nav-albums"));
@ -133,9 +133,9 @@ test.meta("testID", "calendar-004")("Create/delete album during add to album", a
await t
.click(Selector(".nav-calendar"))
.click(Selector("a.is-album").withAttribute("data-uid", SecondCalendar))
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 15000 })
.ok()
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 15000 })
.ok();
});

View file

@ -179,7 +179,7 @@ const PhotoCountInAlbum = await Selector("div.is-photo").count;
await t
.expect(PhotoCountInAlbum)
.eql(PhotoCountInFolder)
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 15000 })
.ok();
await page.openNav();
await t.click(Selector(".nav-albums"));
@ -192,7 +192,7 @@ await t.expect(countAlbumsAfterDelete).eql(countAlbums);
await t
.click(Selector(".nav-folders"))
.click(Selector("a.is-album").withAttribute("data-uid", ThirdFolder))
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 15000 })
.ok();
});

View file

@ -27,7 +27,7 @@ test.meta("testID", "labels-001")("Remove/Activate Add/Delete Label from photo",
.expect(PhotoKeywords)
.contains("beacon")
.click(Selector("#tab-labels"))
.click(Selector("button.action-remove"), { timeout: 5000 })
.click(Selector("button.action-remove"), { timeout: 15000 })
.typeText(Selector(".input-label input"), "Test")
.click(Selector("button.p-photo-label-add"))
.click(Selector("#tab-details"));
@ -48,7 +48,7 @@ test.meta("testID", "labels-001")("Remove/Activate Add/Delete Label from photo",
.click(Selector("a.is-label").withAttribute("data-uid", LabelTest))
.click(Selector(".action-title-edit").withAttribute("data-uid", PhotoBeacon))
.click(Selector("#tab-labels"))
.click(Selector(".action-delete"), { timeout: 5000 })
.click(Selector(".action-delete"), { timeout: 15000 })
.click(Selector(".action-on"))
.click(Selector("#tab-details"));
const PhotoKeywordsAfterUndo = await Selector(".input-keywords textarea").value;
@ -72,16 +72,16 @@ test.meta("testID", "labels-002")("Rename Label", async (t) => {
await page.search("zebra");
const LabelZebra = await Selector("a.is-label").nth(0).getAttribute("data-uid");
await t.click(Selector("a.is-label").nth(0));
const FirstPhotoZebra = await Selector("div.is-photo", { timeout: 5000 })
const FirstPhotoZebra = await Selector("div.is-photo", { timeout: 15000 })
.nth(0)
.getAttribute("data-uid");
const SecondPhotoZebra = await Selector("div.is-photo", { timeout: 5000 })
const SecondPhotoZebra = await Selector("div.is-photo", { timeout: 15000 })
.nth(1)
.getAttribute("data-uid");
await page.setFilter("view", "Cards");
await t.click(Selector(".action-title-edit").withAttribute("data-uid", FirstPhotoZebra));
const FirstPhotoTitle = await Selector(".input-title input", { timeout: 5000 }).value;
const FirstPhotoKeywords = await Selector(".input-keywords textarea", { timeout: 5000 }).value;
const FirstPhotoTitle = await Selector(".input-title input", { timeout: 15000 }).value;
const FirstPhotoKeywords = await Selector(".input-keywords textarea", { timeout: 15000 }).value;
await t
.expect(FirstPhotoTitle)
.contains("Zebra")
@ -92,8 +92,8 @@ test.meta("testID", "labels-002")("Rename Label", async (t) => {
.typeText(Selector(".input-rename input"), "Horse", { replace: true })
.pressKey("enter")
.click(Selector("#tab-details"));
const FirstPhotoTitleAfterEdit = await Selector(".input-title input", { timeout: 5000 }).value;
const FirstPhotoKeywordsAfterEdit = await Selector(".input-keywords textarea", { timeout: 5000 })
const FirstPhotoTitleAfterEdit = await Selector(".input-title input", { timeout: 15000 }).value;
const FirstPhotoKeywordsAfterEdit = await Selector(".input-keywords textarea", { timeout: 15000 })
.value;
await t
.expect(FirstPhotoTitleAfterEdit)
@ -153,7 +153,7 @@ test.meta("testID", "labels-003")("Add label to album", async (t) => {
await t
.click(Selector(".nav-albums"))
.click(Selector("a.is-album").withAttribute("data-uid", AlbumUid));
const PhotoCountAfterAdd = await Selector("div.is-photo", { timeout: 5000 }).count;
const PhotoCountAfterAdd = await Selector("div.is-photo", { timeout: 15000 }).count;
await t.expect(PhotoCountAfterAdd).eql(PhotoCount + 6);
await page.selectPhotoFromUID(FirstPhotoLandscape);
await page.selectPhotoFromUID(SecondPhotoLandscape);
@ -162,7 +162,7 @@ test.meta("testID", "labels-003")("Add label to album", async (t) => {
await page.selectPhotoFromUID(FifthPhotoLandscape);
await page.selectPhotoFromUID(SixthPhotoLandscape);
await page.removeSelected();
const PhotoCountAfterDelete = await Selector("div.is-photo", { timeout: 5000 }).count;
const PhotoCountAfterDelete = await Selector("div.is-photo", { timeout: 15000 }).count;
await t.expect(PhotoCountAfterDelete).eql(PhotoCountAfterAdd - 6);
});
@ -170,15 +170,15 @@ test.meta("testID", "labels-004")("Delete label", async (t) => {
await page.openNav();
await t.click(Selector(".nav-labels"));
await page.search("dome");
const LabelDome = await Selector("a.is-label", { timeout: 5000 }).nth(0).getAttribute("data-uid");
const LabelDome = await Selector("a.is-label", { timeout: 15000 }).nth(0).getAttribute("data-uid");
await t.click(Selector("a.is-label").withAttribute("data-uid", LabelDome));
const FirstPhotoDome = await Selector("div.is-photo", { timeout: 5000 })
const FirstPhotoDome = await Selector("div.is-photo", { timeout: 15000 })
.nth(0)
.getAttribute("data-uid");
await page.openNav();
await t.click(".nav-labels");
await page.selectFromUID(LabelDome);
const clipboardCount = await Selector("span.count-clipboard", { timeout: 5000 });
const clipboardCount = await Selector("span.count-clipboard", { timeout: 15000 });
await t.expect(clipboardCount.textContent).eql("1");
await page.deleteSelected();
await page.search("dome");

View file

@ -180,9 +180,9 @@ test.meta("testID", "moments-004")("Create/delete album during add to album", as
await t
.expect(PhotoCountInAlbum)
.eql(PhotoCountInMoment)
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 15000 })
.ok()
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 15000 })
.ok();
await page.openNav();
await t.click(Selector(".nav-albums"));
@ -195,9 +195,9 @@ test.meta("testID", "moments-004")("Create/delete album during add to album", as
await t
.click(Selector(".nav-moments"))
.click(Selector("a.is-album").withAttribute("data-uid", FirstMoment))
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 15000 })
.ok()
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 15000 })
.ok();
});

View file

@ -36,7 +36,7 @@ test.meta("testID", "originals-001")("Add original files to album", async (t) =>
.click(Selector("button").withText("BotanicalGarden"))
.click(Selector('a[href="/library/files/Vacation"]'));
await page.selectPhotoFromUID(KanadaUid);
const clipboardCount = await Selector("span.count-clipboard", { timeout: 5000 });
const clipboardCount = await Selector("span.count-clipboard", { timeout: 15000 });
await t.expect(clipboardCount.textContent).eql("1");
await page.addSelectedToAlbum("KanadaVacation", "album");
await page.openNav();
@ -45,7 +45,7 @@ test.meta("testID", "originals-001")("Add original files to album", async (t) =>
await page.search("KanadaVacation");
const AlbumUid = await Selector("a.is-album").nth(0).getAttribute("data-uid");
await t.click(Selector("a.is-album").nth(0));
const PhotoCountAfterAdd = await Selector("div.is-photo", { timeout: 5000 }).count;
const PhotoCountAfterAdd = await Selector("div.is-photo", { timeout: 15000 }).count;
await t.expect(PhotoCountAfterAdd).eql(2);
await page.openNav();
await t.click(Selector(".nav-albums"));
@ -58,7 +58,7 @@ test.meta("testID", "originals-002")("Download original files", async (t) => {
await t.click(Selector("div.nav-library + div")).click(Selector(".nav-originals"));
const FirstFile = await Selector("div.is-file").nth(0).getAttribute("data-uid");
await page.selectPhotoFromUID(FirstFile);
const clipboardCount = await Selector("span.count-clipboard", { timeout: 5000 });
const clipboardCount = await Selector("span.count-clipboard", { timeout: 15000 });
await t
.expect(clipboardCount.textContent)
.eql("1")

View file

@ -86,12 +86,12 @@ export default class Page {
.expect(Selector("#photo-viewer").visible)
.ok()
.click(Selector('button[title="Select"]'))
.click(Selector(".action-close", { timeout: 4000 }));
.click(Selector(".action-close", { timeout: 14000 }));
}
async toggleSelectNthPhoto(nPhoto) {
await t
.hover(Selector(".is-photo.type-image", { timeout: 4000 }).nth(nPhoto))
.hover(Selector(".is-photo.type-image", { timeout: 14000 }).nth(nPhoto))
.click(Selector(".is-photo.type-image .input-select").nth(nPhoto));
}
@ -101,34 +101,34 @@ export default class Page {
async archiveSelected() {
if (!(await Selector("#t-clipboard button.action-archive").visible)) {
await t.click(Selector("button.action-menu", { timeout: 5000 }));
await t.click(Selector("button.action-menu", { timeout: 15000 }));
}
if (t.browser.platform === "mobile") {
if (!(await Selector("#t-clipboard button.action-archive").visible)) {
await t.click(Selector("button.action-menu", { timeout: 5000 }));
await t.click(Selector("button.action-menu", { timeout: 15000 }));
if (!(await Selector("#t-clipboard button.action-archive").visible)) {
await t.click(Selector("button.action-menu", { timeout: 5000 }));
await t.click(Selector("button.action-menu", { timeout: 15000 }));
}
if (!(await Selector("#t-clipboard button.action-archive").visible)) {
await t.click(Selector("button.action-menu", { timeout: 5000 }));
await t.click(Selector("button.action-menu", { timeout: 15000 }));
}
}
}
await t.click(Selector("#t-clipboard button.action-archive", { timeout: 5000 }));
await t.click(Selector("#t-clipboard button.action-archive", { timeout: 15000 }));
}
async privateSelected() {
await t.click(Selector("button.action-menu", { timeout: 5000 }));
await t.click(Selector("button.action-menu", { timeout: 15000 }));
if (!(await Selector("button.action-private").visible)) {
await t.click(Selector("button.action-menu", { timeout: 5000 }));
await t.click(Selector("button.action-menu", { timeout: 15000 }));
if (!(await Selector("button.action-private").visible)) {
await t.click(Selector("button.action-menu", { timeout: 5000 }));
await t.click(Selector("button.action-menu", { timeout: 15000 }));
}
if (!(await Selector("button.action-private").visible)) {
await t.click(Selector("button.action-menu", { timeout: 5000 }));
await t.click(Selector("button.action-menu", { timeout: 15000 }));
}
}
await t.click(Selector("button.action-private", { timeout: 5000 }));
await t.click(Selector("button.action-private", { timeout: 15000 }));
}
async restoreSelected() {
@ -166,7 +166,7 @@ export default class Page {
await t
.click("#tab-info")
.expect(
Selector(".input-" + type + " input", { timeout: 8000 }).hasAttribute(
Selector(".input-" + type + " input", { timeout: 18000 }).hasAttribute(
"aria-checked",
"true"
)
@ -174,7 +174,7 @@ export default class Page {
.ok()
.click(Selector(".input-" + type + " input"))
.expect(
Selector(".input-" + type + " input", { timeout: 8000 }).hasAttribute(
Selector(".input-" + type + " input", { timeout: 18000 }).hasAttribute(
"aria-checked",
"false"
)
@ -186,7 +186,7 @@ export default class Page {
await t
.click("#tab-info")
.expect(
Selector(".input-" + type + " input", { timeout: 8000 }).hasAttribute(
Selector(".input-" + type + " input", { timeout: 18000 }).hasAttribute(
"aria-checked",
"false"
)
@ -194,7 +194,7 @@ export default class Page {
.ok()
.click(Selector(".input-" + type + " input"))
.expect(
Selector(".input-" + type + " input", { timeout: 8000 }).hasAttribute(
Selector(".input-" + type + " input", { timeout: 18000 }).hasAttribute(
"aria-checked",
"true"
)
@ -212,7 +212,7 @@ export default class Page {
async login(username, password) {
await t
.typeText(Selector(".input-name input"), username, { replace: true, timeout: 5000 })
.typeText(Selector(".input-name input"), username, { replace: true, timeout: 15000 })
.typeText(Selector(".input-password input"), password, { replace: true })
.click(Selector(".action-confirm"));
}
@ -314,10 +314,10 @@ export default class Page {
await t.click(Selector(".nav-browse + div")).click(Selector(".nav-archive"));
await this.selectPhotoFromUID(uid);
await t
.click(Selector("button.action-menu", { timeout: 5000 }))
.click(Selector("button.action-menu", { timeout: 15000 }))
.click(Selector(".remove"))
.click(Selector(".action-confirm"))
.expect(Selector("div").withAttribute("data-uid", uid).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", uid).exists, { timeout: 15000 })
.notOk();
}
@ -491,11 +491,11 @@ export default class Page {
.typeText(Selector(".input-keywords textarea"), keywords)
.typeText(Selector(".input-notes textarea"), notes, { replace: true })
.click(Selector("button.action-approve"));
await t.expect(Selector(".input-latitude input").visible, { timeout: 5000 }).ok();
await t.expect(Selector(".input-latitude input").visible, { timeout: 15000 }).ok();
if (t.browser.platform === "mobile") {
await t.click(Selector("button.action-apply")).click(Selector("button.action-close"));
} else {
await t.click(Selector("button.action-done", { timeout: 5000 }));
await t.click(Selector("button.action-done", { timeout: 15000 }));
}
}
@ -657,7 +657,7 @@ export default class Page {
if (t.browser.platform === "mobile") {
await t.click(Selector("button.action-apply")).click(Selector("button.action-close"));
} else {
await t.click(Selector("button.action-done", { timeout: 5000 }));
await t.click(Selector("button.action-done", { timeout: 15000 }));
}
}
}

View file

@ -24,26 +24,26 @@ test.meta("testID", "photos-005")(
await page.openNav();
await t.click(Selector(".nav-private"));
await t
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 15000 })
.notOk()
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 15000 })
.notOk()
.expect(Selector("div").withAttribute("data-uid", ThirdPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", ThirdPhoto).exists, { timeout: 15000 })
.notOk()
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 15000 })
.notOk()
.expect(Selector("div").withAttribute("data-uid", SecondVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", SecondVideo).exists, { timeout: 15000 })
.notOk()
.expect(Selector("div").withAttribute("data-uid", ThirdVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", ThirdVideo).exists, { timeout: 15000 })
.notOk();
await page.openNav();
await t.click(Selector(".nav-browse"));
await page.selectPhotoFromUID(FirstPhoto);
await page.selectFromUIDInFullscreen(SecondPhoto);
const clipboardCount = await Selector("span.count-clipboard", { timeout: 5000 });
const clipboardCount = await Selector("span.count-clipboard", { timeout: 15000 });
await t.expect(clipboardCount.textContent).eql("2");
await page.privateSelected();
await t.expect(Selector("button.action-menu").exists, { timeout: 5000 }).notOk();
await t.expect(Selector("button.action-menu").exists, { timeout: 15000 }).notOk();
await page.setFilter("view", "List");
await t.click(Selector("button.input-private").withAttribute("data-uid", ThirdPhoto));
if (t.browser.platform === "mobile") {
@ -52,11 +52,11 @@ test.meta("testID", "photos-005")(
await t.click(Selector("button.action-reload"));
}
await t
.expect(Selector("td").withAttribute("data-uid", FirstPhoto).exists, { timeout: 5000 })
.expect(Selector("td").withAttribute("data-uid", FirstPhoto).exists, { timeout: 15000 })
.notOk()
.expect(Selector("td").withAttribute("data-uid", SecondPhoto).exists, { timeout: 5000 })
.expect(Selector("td").withAttribute("data-uid", SecondPhoto).exists, { timeout: 15000 })
.notOk()
.expect(Selector("td").withAttribute("data-uid", ThirdPhoto).exists, { timeout: 5000 })
.expect(Selector("td").withAttribute("data-uid", ThirdPhoto).exists, { timeout: 15000 })
.notOk();
await page.openNav();
await t.click(Selector(".nav-video"));
@ -65,13 +65,13 @@ test.meta("testID", "photos-005")(
await page.setFilter("view", "Card");
await page.selectPhotoFromUID(FirstVideo);
const clipboardCountVideo = await Selector("span.count-clipboard", { timeout: 5000 });
const clipboardCountVideo = await Selector("span.count-clipboard", { timeout: 15000 });
await t
.expect(clipboardCountVideo.textContent)
.eql("1")
.click(Selector("button.action-menu"))
.click(Selector("button.action-private"))
.expect(Selector("button.action-menu").exists, { timeout: 5000 })
.expect(Selector("button.action-menu").exists, { timeout: 15000 })
.notOk();
await page.selectPhotoFromUID(ThirdVideo);
await page.editSelected();
@ -84,25 +84,25 @@ test.meta("testID", "photos-005")(
await t.click(Selector("button.action-reload"));
}
await t
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 15000 })
.notOk()
.expect(Selector("div").withAttribute("data-uid", SecondVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", SecondVideo).exists, { timeout: 15000 })
.notOk()
.expect(Selector("div").withAttribute("data-uid", ThirdVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", ThirdVideo).exists, { timeout: 15000 })
.notOk();
await page.openNav();
await t.click(Selector(".nav-private"));
await t
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 15000 })
.ok()
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 15000 })
.ok()
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 15000 })
.ok()
.expect(Selector("div").withAttribute("data-uid", SecondVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", SecondVideo).exists, { timeout: 15000 })
.ok()
.expect(Selector("div").withAttribute("data-uid", ThirdVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", ThirdVideo).exists, { timeout: 15000 })
.ok();
await page.selectPhotoFromUID(FirstPhoto);
await page.selectPhotoFromUID(SecondPhoto);
@ -124,43 +124,43 @@ test.meta("testID", "photos-005")(
await t.click(Selector("button.action-reload"));
}
await t
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 15000 })
.notOk()
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 15000 })
.notOk()
.expect(Selector("div").withAttribute("data-uid", ThirdPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", ThirdPhoto).exists, { timeout: 15000 })
.notOk()
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 15000 })
.notOk()
.expect(Selector("div").withAttribute("data-uid", SecondVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", SecondVideo).exists, { timeout: 15000 })
.notOk()
.expect(Selector("div").withAttribute("data-uid", ThirdVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", ThirdVideo).exists, { timeout: 15000 })
.notOk();
await page.openNav();
await t.click(Selector(".nav-browse"));
await t
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 15000 })
.ok()
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 15000 })
.ok()
.expect(Selector("div").withAttribute("data-uid", ThirdPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", ThirdPhoto).exists, { timeout: 15000 })
.ok()
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 15000 })
.ok()
.expect(Selector("div").withAttribute("data-uid", SecondVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", SecondVideo).exists, { timeout: 15000 })
.ok()
.expect(Selector("div").withAttribute("data-uid", ThirdVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", ThirdVideo).exists, { timeout: 15000 })
.ok();
await page.openNav();
await t.click(Selector(".nav-video"));
await t
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 15000 })
.ok()
.expect(Selector("div").withAttribute("data-uid", SecondVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", SecondVideo).exists, { timeout: 15000 })
.ok()
.expect(Selector("div").withAttribute("data-uid", ThirdVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", ThirdVideo).exists, { timeout: 15000 })
.ok();
}
);
@ -186,56 +186,56 @@ test.meta("testID", "photos-006")(
await page.openNav();
await t.click(Selector(".nav-archive"));
await t
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 15000 })
.notOk()
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 15000 })
.notOk()
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 15000 })
.notOk()
.expect(Selector("div").withAttribute("data-uid", FirstPrivatePhoto).exists, {
timeout: 5000,
})
.notOk()
.expect(Selector("div").withAttribute("data-uid", FirstReviewPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstReviewPhoto).exists, { timeout: 15000 })
.notOk();
await page.openNav();
await t.click(Selector(".nav-video"));
await page.setFilter("view", "Card");
await page.selectPhotoFromUID(FirstVideo);
const clipboardCountVideo = await Selector("span.count-clipboard", { timeout: 5000 });
const clipboardCountVideo = await Selector("span.count-clipboard", { timeout: 15000 });
await t.expect(clipboardCountVideo.textContent).eql("1");
await page.archiveSelected();
await t.expect(Selector("button.action-menu").exists, { timeout: 5000 }).notOk();
await t.expect(Selector("button.action-menu").exists, { timeout: 15000 }).notOk();
if (t.browser.platform === "mobile") {
await t.eval(() => location.reload());
} else {
await t.click(Selector("button.action-reload"));
}
await t
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 15000 })
.notOk();
await page.openNav();
await t.click(Selector(".nav-browse"));
await page.selectPhotoFromUID(FirstPhoto);
await page.selectPhotoFromUID(SecondPhoto);
const clipboardCountPhotos = await Selector("span.count-clipboard", { timeout: 5000 });
const clipboardCountPhotos = await Selector("span.count-clipboard", { timeout: 15000 });
await t.expect(clipboardCountPhotos.textContent).eql("2");
await page.archiveSelected();
await t.expect(Selector("button.action-menu").exists, { timeout: 5000 }).notOk();
await t.expect(Selector("button.action-menu").exists, { timeout: 15000 }).notOk();
if (t.browser.platform === "mobile") {
await t.eval(() => location.reload());
} else {
await t.click(Selector("button.action-reload"));
}
await t
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 15000 })
.notOk()
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 15000 })
.notOk();
await page.openNav();
await t.click(Selector(".nav-private"));
await page.selectPhotoFromUID(FirstPrivatePhoto);
const clipboardCountPrivate = await Selector("span.count-clipboard", { timeout: 5000 });
const clipboardCountPrivate = await Selector("span.count-clipboard", { timeout: 15000 });
await t.expect(clipboardCountPrivate.textContent).eql("1");
await page.openNav();
if (t.browser.platform === "mobile") {
@ -244,17 +244,17 @@ test.meta("testID", "photos-006")(
await t.click(Selector(".nav-review"));
}
await page.selectPhotoFromUID(FirstReviewPhoto);
const clipboardCountReview = await Selector("span.count-clipboard", { timeout: 5000 });
const clipboardCountReview = await Selector("span.count-clipboard", { timeout: 15000 });
await t.expect(clipboardCountReview.textContent).eql("2");
await page.archiveSelected();
await t.expect(Selector("button.action-menu").exists, { timeout: 5000 }).notOk();
await t.expect(Selector("button.action-menu").exists, { timeout: 15000 }).notOk();
if (t.browser.platform === "mobile") {
await t.eval(() => location.reload());
} else {
await t.click(Selector("button.action-reload"));
}
await t
.expect(Selector("div").withAttribute("data-uid", FirstReviewPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstReviewPhoto).exists, { timeout: 15000 })
.notOk();
await page.openNav();
if (t.browser.platform === "mobile") {
@ -263,62 +263,62 @@ test.meta("testID", "photos-006")(
await t.click(Selector(".nav-archive"));
}
await t
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 15000 })
.ok()
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 15000 })
.ok()
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 15000 })
.ok()
.expect(Selector("div").withAttribute("data-uid", FirstPrivatePhoto).exists, {
timeout: 5000,
})
.ok()
.expect(Selector("div").withAttribute("data-uid", FirstReviewPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstReviewPhoto).exists, { timeout: 15000 })
.ok();
await page.selectPhotoFromUID(FirstPhoto);
await page.selectPhotoFromUID(SecondPhoto);
await page.selectPhotoFromUID(FirstVideo);
await page.selectPhotoFromUID(FirstPrivatePhoto);
await page.selectPhotoFromUID(FirstReviewPhoto);
const clipboardCountArchive = await Selector("span.count-clipboard", { timeout: 5000 });
const clipboardCountArchive = await Selector("span.count-clipboard", { timeout: 15000 });
await t.expect(clipboardCountArchive.textContent).eql("5");
await page.restoreSelected();
await t.expect(Selector("button.action-menu").exists, { timeout: 5000 }).notOk();
await t.expect(Selector("button.action-menu").exists, { timeout: 15000 }).notOk();
if (t.browser.platform === "mobile") {
await t.eval(() => location.reload());
} else {
await t.click(Selector("button.action-reload"));
}
await t
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 15000 })
.notOk()
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 15000 })
.notOk()
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 15000 })
.notOk()
.expect(Selector("div").withAttribute("data-uid", FirstPrivatePhoto).exists, {
timeout: 5000,
})
.notOk()
.expect(Selector("div").withAttribute("data-uid", FirstReviewPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstReviewPhoto).exists, { timeout: 15000 })
.notOk();
await page.openNav();
await t.click(Selector(".nav-video"));
await t
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 15000 })
.ok();
await page.openNav();
await t.click(Selector(".nav-browse"));
await t
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 15000 })
.ok()
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 15000 })
.ok();
await page.openNav();
await t.click(Selector(".nav-private"));
await t
.expect(Selector("div").withAttribute("data-uid", FirstPrivatePhoto).exists, {
timeout: 5000,
timeout: 15000,
})
.ok();
await page.openNav();
@ -328,7 +328,7 @@ test.meta("testID", "photos-006")(
await t.click(Selector(".nav-review"));
}
await t
.expect(Selector("div").withAttribute("data-uid", FirstReviewPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstReviewPhoto).exists, { timeout: 15000 })
.ok();
}
);
@ -405,67 +405,67 @@ test.meta("testID", "photos-013")(
await t.click(Selector(".nav-browse + div")).click(Selector(".nav-archive"));
const PhotoCountInArchiveAfterArchive = await Selector("div.is-photo").count;
await t.expect(PhotoCountInArchiveAfterArchive).eql(InitialPhotoCountInArchive + 13);
await t.expect(Selector("button.action-menu").exists, { timeout: 5000 }).notOk();
await t.expect(Selector("button.action-menu").exists, { timeout: 15000 }).notOk();
await page.openNav();
await t
.click(Selector(".nav-monochrome"))
.expect(Selector("div").withAttribute("data-uid", MonochromePhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", MonochromePhoto).exists, { timeout: 15000 })
.notOk();
await page.openNav();
await t
.click(Selector(".nav-panoramas"))
.expect(Selector("div").withAttribute("data-uid", PanoramaPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", PanoramaPhoto).exists, { timeout: 15000 })
.notOk();
await page.openNav();
await t
.click(Selector(".nav-stacks"))
.expect(Selector("div").withAttribute("data-uid", StackedPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", StackedPhoto).exists, { timeout: 15000 })
.notOk();
await page.openNav();
await t
.click(Selector(".nav-scans"))
.expect(Selector("div").withAttribute("data-uid", ScannedPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", ScannedPhoto).exists, { timeout: 15000 })
.notOk();
await page.openNav();
await t
.click(Selector(".nav-review"))
.expect(Selector("div").withAttribute("data-uid", ReviewPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", ReviewPhoto).exists, { timeout: 15000 })
.notOk();
await page.openNav();
await t
.click(Selector(".nav-favorites"))
.expect(Selector("div").withAttribute("data-uid", FavoritesPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FavoritesPhoto).exists, { timeout: 15000 })
.notOk();
await page.openNav();
await t
.click(Selector(".nav-private"))
.expect(Selector("div").withAttribute("data-uid", PrivatePhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", PrivatePhoto).exists, { timeout: 15000 })
.notOk();
await page.openNav();
await t
.click(Selector(".nav-video"))
.expect(Selector("div").withAttribute("data-uid", Video).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", Video).exists, { timeout: 15000 })
.notOk();
await t
.navigateTo("/calendar/aqmxlr71p6zo22dk/january-2017")
.expect(Selector("div").withAttribute("data-uid", CalendarPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", CalendarPhoto).exists, { timeout: 15000 })
.notOk();
await page.openNav();
await t
.click(Selector(".nav-moments"))
.click(Selector("a.is-album").nth(0))
.expect(Selector("div").withAttribute("data-uid", MomentPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", MomentPhoto).exists, { timeout: 15000 })
.notOk();
await t
.navigateTo("/states/aqmxlr71tebcohrw/western-cape-south-africa")
.expect(Selector("div").withAttribute("data-uid", StatesPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", StatesPhoto).exists, { timeout: 15000 })
.notOk()
.navigateTo("/all?q=label%3Aseashore")
.expect(Selector("div").withAttribute("data-uid", LabelPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", LabelPhoto).exists, { timeout: 15000 })
.notOk()
.navigateTo("/folders/aqnah1321mgkt1w2/archive")
.expect(Selector("div").withAttribute("data-uid", FolderPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FolderPhoto).exists, { timeout: 15000 })
.notOk();
await page.openNav();
@ -487,67 +487,67 @@ test.meta("testID", "photos-013")(
await page.restoreSelected();
const PhotoCountInArchiveAfterRestore = await Selector("div.is-photo").count;
await t.expect(PhotoCountInArchiveAfterRestore).eql(InitialPhotoCountInArchive);
await t.expect(Selector("button.action-menu").exists, { timeout: 5000 }).notOk();
await t.expect(Selector("button.action-menu").exists, { timeout: 15000 }).notOk();
await page.openNav();
await t
.click(Selector(".nav-monochrome"))
.expect(Selector("div").withAttribute("data-uid", MonochromePhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", MonochromePhoto).exists, { timeout: 15000 })
.ok();
await page.openNav();
await t
.click(Selector(".nav-panoramas"))
.expect(Selector("div").withAttribute("data-uid", PanoramaPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", PanoramaPhoto).exists, { timeout: 15000 })
.ok();
await page.openNav();
await t
.click(Selector(".nav-stacks"))
.expect(Selector("div").withAttribute("data-uid", StackedPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", StackedPhoto).exists, { timeout: 15000 })
.ok();
await page.openNav();
await t
.click(Selector(".nav-scans"))
.expect(Selector("div").withAttribute("data-uid", ScannedPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", ScannedPhoto).exists, { timeout: 15000 })
.ok();
await page.openNav();
await t
.click(Selector(".nav-review"))
.expect(Selector("div").withAttribute("data-uid", ReviewPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", ReviewPhoto).exists, { timeout: 15000 })
.ok();
await page.openNav();
await t
.click(Selector(".nav-favorites"))
.expect(Selector("div").withAttribute("data-uid", FavoritesPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FavoritesPhoto).exists, { timeout: 15000 })
.ok();
await page.openNav();
await t
.click(Selector(".nav-private"))
.expect(Selector("div").withAttribute("data-uid", PrivatePhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", PrivatePhoto).exists, { timeout: 15000 })
.ok();
await page.openNav();
await t
.click(Selector(".nav-video"))
.expect(Selector("div").withAttribute("data-uid", Video).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", Video).exists, { timeout: 15000 })
.ok();
await t
.navigateTo("/calendar/aqmxlr71p6zo22dk/january-2017")
.expect(Selector("div").withAttribute("data-uid", CalendarPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", CalendarPhoto).exists, { timeout: 15000 })
.ok();
await page.openNav();
await t
.click(Selector(".nav-moments"))
.click(Selector("a.is-album").nth(0))
.expect(Selector("div").withAttribute("data-uid", MomentPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", MomentPhoto).exists, { timeout: 15000 })
.ok();
await t
.navigateTo("/states/aqmxlr71tebcohrw/western-cape-south-africa")
.expect(Selector("div").withAttribute("data-uid", StatesPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", StatesPhoto).exists, { timeout: 15000 })
.ok()
.navigateTo("/all?q=label%3Aseashore")
.expect(Selector("div").withAttribute("data-uid", LabelPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", LabelPhoto).exists, { timeout: 15000 })
.ok()
.navigateTo("/folders/aqnah1321mgkt1w2/archive")
.expect(Selector("div").withAttribute("data-uid", FolderPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FolderPhoto).exists, { timeout: 15000 })
.ok();
}
);
@ -627,67 +627,67 @@ test.meta("testID", "photos-014")(
await t.click(Selector(".nav-private"));
const PhotoCountInPrivateAfterPrivate = await Selector("div.is-photo").count;
await t.expect(PhotoCountInPrivateAfterPrivate).eql(InitialPhotoCountInPrivate + 13);
await t.expect(Selector("button.action-menu").exists, { timeout: 5000 }).notOk();
await t.expect(Selector("button.action-menu").exists, { timeout: 15000 }).notOk();
await page.openNav();
await t
.click(Selector(".nav-browse + div"))
.click(Selector(".nav-monochrome"))
.expect(Selector("div").withAttribute("data-uid", MonochromePhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", MonochromePhoto).exists, { timeout: 15000 })
.notOk();
await page.openNav();
await t
.click(Selector(".nav-panoramas"))
.expect(Selector("div").withAttribute("data-uid", PanoramaPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", PanoramaPhoto).exists, { timeout: 15000 })
.notOk();
await page.openNav();
await t
.click(Selector(".nav-stacks"))
.expect(Selector("div").withAttribute("data-uid", StackedPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", StackedPhoto).exists, { timeout: 15000 })
.notOk();
await page.openNav();
await t
.click(Selector(".nav-scans"))
.expect(Selector("div").withAttribute("data-uid", ScannedPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", ScannedPhoto).exists, { timeout: 15000 })
.notOk();
await page.openNav();
await t
.click(Selector(".nav-review"))
.expect(Selector("div").withAttribute("data-uid", ReviewPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", ReviewPhoto).exists, { timeout: 15000 })
.notOk()
.navigateTo("/albums?q=Holiday")
.click(Selector("a.is-album").nth(0))
.expect(Selector("div").withAttribute("data-uid", AlbumPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", AlbumPhoto).exists, { timeout: 15000 })
.ok();
await page.openNav();
await t
.click(Selector(".nav-favorites"))
.expect(Selector("div").withAttribute("data-uid", FavoritesPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FavoritesPhoto).exists, { timeout: 15000 })
.notOk();
await page.openNav();
await t
.click(Selector(".nav-video"))
.expect(Selector("div").withAttribute("data-uid", Video).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", Video).exists, { timeout: 15000 })
.notOk();
await t
.navigateTo("/calendar/aqmxlr71p6zo22dk/january-2017")
.expect(Selector("div").withAttribute("data-uid", CalendarPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", CalendarPhoto).exists, { timeout: 15000 })
.notOk();
await page.openNav();
await t
.click(Selector(".nav-moments"))
.click(Selector("a.is-album").nth(0))
.expect(Selector("div").withAttribute("data-uid", MomentPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", MomentPhoto).exists, { timeout: 15000 })
.notOk();
await t
.navigateTo("/states/aqmxlr71tebcohrw/western-cape-south-africa")
.expect(Selector("div").withAttribute("data-uid", StatesPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", StatesPhoto).exists, { timeout: 15000 })
.notOk()
.navigateTo("/all?q=label%3Aseashore")
.expect(Selector("div").withAttribute("data-uid", LabelPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", LabelPhoto).exists, { timeout: 15000 })
.notOk()
.navigateTo("/folders/aqnah1321mgkt1w2/archive")
.expect(Selector("div").withAttribute("data-uid", FolderPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FolderPhoto).exists, { timeout: 15000 })
.notOk();
await page.openNav();
@ -713,67 +713,67 @@ test.meta("testID", "photos-014")(
await t.click(Selector(".nav-private"));
const PhotoCountInPrivateAfterUnprivate = await Selector("div.is-photo").count;
await t.expect(PhotoCountInPrivateAfterUnprivate).eql(InitialPhotoCountInPrivate);
await t.expect(Selector("button.action-menu").exists, { timeout: 5000 }).notOk();
await t.expect(Selector("button.action-menu").exists, { timeout: 15000 }).notOk();
await page.openNav();
await t
.click(Selector(".nav-browse + div"))
.click(Selector(".nav-monochrome"))
.expect(Selector("div").withAttribute("data-uid", MonochromePhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", MonochromePhoto).exists, { timeout: 15000 })
.ok();
await page.openNav();
await t
.click(Selector(".nav-panoramas"))
.expect(Selector("div").withAttribute("data-uid", PanoramaPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", PanoramaPhoto).exists, { timeout: 15000 })
.ok();
await page.openNav();
await t
.click(Selector(".nav-stacks"))
.expect(Selector("div").withAttribute("data-uid", StackedPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", StackedPhoto).exists, { timeout: 15000 })
.ok();
await page.openNav();
await t
.click(Selector(".nav-scans"))
.expect(Selector("div").withAttribute("data-uid", ScannedPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", ScannedPhoto).exists, { timeout: 15000 })
.ok();
await page.openNav();
await t
.click(Selector(".nav-review"))
.expect(Selector("div").withAttribute("data-uid", ReviewPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", ReviewPhoto).exists, { timeout: 15000 })
.ok()
.navigateTo("/albums?q=Holiday")
.click(Selector("a.is-album").nth(0))
.expect(Selector("div").withAttribute("data-uid", AlbumPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", AlbumPhoto).exists, { timeout: 15000 })
.ok();
await page.openNav();
await t
.click(Selector(".nav-favorites"))
.expect(Selector("div").withAttribute("data-uid", FavoritesPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FavoritesPhoto).exists, { timeout: 15000 })
.ok();
await page.openNav();
await t
.click(Selector(".nav-video"))
.expect(Selector("div").withAttribute("data-uid", Video).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", Video).exists, { timeout: 15000 })
.ok();
await t
.navigateTo("/calendar/aqmxlr71p6zo22dk/january-2017")
.expect(Selector("div").withAttribute("data-uid", CalendarPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", CalendarPhoto).exists, { timeout: 15000 })
.ok();
await page.openNav();
await t
.click(Selector(".nav-moments"))
.click(Selector("a.is-album").nth(0))
.expect(Selector("div").withAttribute("data-uid", MomentPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", MomentPhoto).exists, { timeout: 15000 })
.ok();
await t
.navigateTo("/states/aqmxlr71tebcohrw/western-cape-south-africa")
.expect(Selector("div").withAttribute("data-uid", StatesPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", StatesPhoto).exists, { timeout: 15000 })
.ok()
.navigateTo("/all?q=label%3Aseashore")
.expect(Selector("div").withAttribute("data-uid", LabelPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", LabelPhoto).exists, { timeout: 15000 })
.ok()
.navigateTo("/folders/aqnah1321mgkt1w2/archive")
.expect(Selector("div").withAttribute("data-uid", FolderPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FolderPhoto).exists, { timeout: 15000 })
.ok();
}
);

View file

@ -50,7 +50,7 @@ test.meta("testID", "photos-upload-delete-001")("Upload + Delete jpg/json", asyn
await t.click(Selector(".nav-browse"));
await page.search("digikam");
await t
.expect(Selector("div").withAttribute("data-uid", UploadedPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", UploadedPhoto).exists, { timeout: 15000 })
.notOk()
.navigateTo("/library/files/2020/10");
const FileCountAfterDelete = await Selector("div.is-file").count;
@ -103,7 +103,7 @@ test.meta("testID", "photos-upload-delete-002")("Upload + Delete video", async (
await t.click(Selector(".nav-browse"));
await page.search("korn");
await t
.expect(Selector("div").withAttribute("data-uid", UploadedPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", UploadedPhoto).exists, { timeout: 15000 })
.notOk()
.navigateTo("/library/files/2020/06");
const FileCountAfterDelete = await Selector("div.is-file").count;
@ -139,13 +139,13 @@ test.meta("testID", "photos-upload-delete-003")("Upload to existing Album + Dele
await t.click(Selector(".nav-browse"));
await page.search("ladybug");
await t
.expect(Selector("div").withAttribute("data-uid", UploadedPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", UploadedPhoto).exists, { timeout: 15000 })
.notOk();
await page.openNav();
await t.click(Selector(".nav-albums"));
await t
.click(Selector("a.is-album").withAttribute("data-uid", AlbumUid))
.expect(Selector("div").withAttribute("data-uid", UploadedPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", UploadedPhoto).exists, { timeout: 15000 })
.notOk();
const PhotoCountAfterDelete = await Selector("div.is-photo").count;
await t.expect(PhotoCountAfterDelete).eql(PhotoCount);
@ -156,7 +156,7 @@ test.meta("testID", "photos-upload-delete-004")("Upload jpg to new Album + Delet
await t.click(Selector(".nav-albums"));
const AlbumCount = await Selector("a.is-album").count;
await t
.click(Selector(".action-upload", { timeout: 5000 }))
.click(Selector(".action-upload", { timeout: 15000 }))
.click(Selector(".input-albums"))
.typeText(Selector(".input-albums input"), "NewCreatedAlbum")
.pressKey("enter")
@ -182,14 +182,14 @@ test.meta("testID", "photos-upload-delete-004")("Upload jpg to new Album + Delet
await t.click(Selector(".nav-browse"));
await page.search("digikam");
await t
.expect(Selector("div").withAttribute("data-uid", UploadedPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", UploadedPhoto).exists, { timeout: 15000 })
.notOk();
await page.openNav();
await t.click(Selector(".nav-albums"));
await page.search("NewCreatedAlbum");
await t
.click(Selector("a.is-album").nth(0))
.expect(Selector("div").withAttribute("data-uid", UploadedPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", UploadedPhoto).exists, { timeout: 15000 })
.notOk();
const PhotoCountAfterDelete = await Selector("div.is-photo").count;
await t.expect(PhotoCountAfterDelete).eql(0);

View file

@ -45,7 +45,7 @@ test.meta("testID", "photos-002")(
await t.click(Selector(".nav-video"));
const FirstVideo = await Selector("div.is-photo").nth(0).getAttribute("data-uid");
await page.selectPhotoFromUID(FirstVideo);
const clipboardCount = await Selector("span.count-clipboard", { timeout: 5000 });
const clipboardCount = await Selector("span.count-clipboard", { timeout: 15000 });
await t
.expect(clipboardCount.textContent)
.eql("2")
@ -68,9 +68,9 @@ test.meta("testID", "photos-003")(
await t.click(Selector(".nav-browse"));
await t
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 15000 })
.notOk()
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 15000 })
.notOk();
await page.openNav();
await t.click(Selector(".nav-review"));
@ -84,14 +84,14 @@ test.meta("testID", "photos-003")(
await t.click(Selector("button.action-reload"));
}
await t
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).visible, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).visible, { timeout: 15000 })
.ok();
await page.editSelected();
await t.click(Selector("button.action-approve"));
if (t.browser.platform === "mobile") {
await t.click(Selector("button.action-apply")).click(Selector("button.action-close"));
} else {
await t.click(Selector("button.action-done", { timeout: 5000 }));
await t.click(Selector("button.action-done", { timeout: 15000 }));
}
await page.selectPhotoFromUID(SecondPhoto);
await page.editSelected();
@ -101,7 +101,7 @@ test.meta("testID", "photos-003")(
if (t.browser.platform === "mobile") {
await t.click(Selector("button.action-apply")).click(Selector("button.action-close"));
} else {
await t.click(Selector("button.action-done", { timeout: 5000 }));
await t.click(Selector("button.action-done", { timeout: 15000 }));
}
await page.setFilter("view", "Cards");
const ButtonThirdPhoto = 'div.is-photo[data-uid="' + ThirdPhoto + '"] button.action-approve';
@ -112,9 +112,9 @@ test.meta("testID", "photos-003")(
await t.click(Selector("button.action-reload"));
}
await t
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 15000 })
.notOk()
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 15000 })
.notOk()
.expect(Selector("div").withAttribute("data-uid", ThirdPhoto).exists, { timeout: 5000 })
.notOk();
@ -141,11 +141,11 @@ test.meta("testID", "photos-004")("Like/dislike photo/video", async (t) => {
await page.openNav();
await t.click(Selector(".nav-favorites"));
await t
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 15000 })
.notOk()
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 15000 })
.notOk()
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 15000 })
.notOk();
await page.openNav();
await t.click(Selector(".nav-browse"));
@ -157,11 +157,11 @@ test.meta("testID", "photos-004")("Like/dislike photo/video", async (t) => {
.click(Selector(".action-close"));
await t
.expect(Selector("div.is-photo").withAttribute("data-uid", FirstPhoto).exists, {
timeout: 5000,
timeout: 15000,
})
.ok()
.expect(Selector("div.is-photo").withAttribute("data-uid", SecondPhoto).exists, {
timeout: 5000,
timeout: 15000,
})
.ok();
await page.openNav();
@ -174,17 +174,17 @@ test.meta("testID", "photos-004")("Like/dislike photo/video", async (t) => {
}
await t
.expect(Selector("div.is-photo").withAttribute("data-uid", FirstVideo).exists, {
timeout: 5000,
timeout: 15000,
})
.ok();
await page.openNav();
await t.click(Selector(".nav-favorites"));
await t
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 15000 })
.ok()
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 15000 })
.ok()
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 15000 })
.ok();
await page.toggleLike(FirstVideo);
await page.toggleLike(FirstPhoto);
@ -199,11 +199,11 @@ test.meta("testID", "photos-004")("Like/dislike photo/video", async (t) => {
await t.click(Selector("button.action-reload"));
}
await t
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 15000 })
.notOk()
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 15000 })
.notOk()
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 15000 })
.notOk();
});
@ -322,12 +322,12 @@ test.meta("testID", "photos-007")("Edit photo/video", async (t) => {
FirstPhotoKeywords,
FirstPhotoNotes
)
const clipboardCount = await Selector("span.count-clipboard", { timeout: 5000 });
const clipboardCount = await Selector("span.count-clipboard", { timeout: 15000 });
await t
.expect(clipboardCount.textContent)
.eql("1")
.click(Selector(".action-clear"))
.expect(Selector("button.action-menu").exists, { timeout: 5000 })
.expect(Selector("button.action-menu").exists, { timeout: 15000 })
.notOk();
});
@ -342,7 +342,7 @@ test.meta("testID", "photos-008")("Change primary file", async (t) => {
console.log(t.browser.platform);
await t
.click(Selector(".input-open"))
.click(Selector(".action-next", { timeout: 5000 }))
.click(Selector(".action-next", { timeout: 15000 }))
.click(Selector(".action-previous"))
.click(Selector(".action-close"));
}
@ -383,7 +383,7 @@ test.meta("testID", "photos-010")("Ungroup files", async (t) => {
await t.click(Selector(".nav-browse")).click(Selector(".p-expand-search"));
await page.search("group");
await page.setFilter("view", "Cards");
const PhotoCount = await Selector("button.action-title-edit", { timeout: 5000 }).count;
const PhotoCount = await Selector("button.action-title-edit", { timeout: 15000 }).count;
const SequentialPhoto = await Selector("div.is-photo").nth(0).getAttribute("data-uid");
await t.expect(PhotoCount).eql(1);
await page.openNav();
@ -407,7 +407,7 @@ test.meta("testID", "photos-010")("Ungroup files", async (t) => {
} else {
await t.click(Selector("button.action-reload"));
}
const PhotoCountAfterUngroup = await Selector("button.action-title-edit", { timeout: 5000 })
const PhotoCountAfterUngroup = await Selector("button.action-title-edit", { timeout: 15000 })
.count;
await t.expect(PhotoCountAfterUngroup).eql(2);
});
@ -417,7 +417,7 @@ test.skip.meta("testID", "photos-011")("Delete non primary file", async (t) => {
await t
.click(Selector(".nav-library"))
.click(Selector("#tab-library-import"))
.click(Selector(".input-import-folder input"), { timeout: 5000 })
.click(Selector(".input-import-folder input"), { timeout: 15000 })
.click(Selector("div.v-list__tile__title").withText("/pizza"))
.click(Selector(".action-import"))
.wait(10000);
@ -425,7 +425,7 @@ test.skip.meta("testID", "photos-011")("Delete non primary file", async (t) => {
await t.click(Selector(".nav-browse")).click(Selector(".p-expand-search"));
await page.search("mogale");
await page.setFilter("view", "Cards");
const PhotoCount = await Selector("button.action-title-edit", { timeout: 5000 }).count;
const PhotoCount = await Selector("button.action-title-edit", { timeout: 15000 }).count;
const Photo = await Selector("div.is-photo").nth(0).getAttribute("data-uid");
await t
@ -433,7 +433,7 @@ test.skip.meta("testID", "photos-011")("Delete non primary file", async (t) => {
.eql(1)
.click(Selector("button.action-title-edit").withAttribute("data-uid", Photo))
.click(Selector("#tab-files"));
const FileCount = await Selector("li.v-expansion-panel__container", { timeout: 5000 }).count;
const FileCount = await Selector("li.v-expansion-panel__container", { timeout: 15000 }).count;
await t
.expect(FileCount)
.eql(2)
@ -442,7 +442,7 @@ test.skip.meta("testID", "photos-011")("Delete non primary file", async (t) => {
.click(Selector(".action-confirm"))
.wait(10000);
const FileCountAfterDeletion = await Selector("li.v-expansion-panel__container", {
timeout: 5000,
timeout: 15000,
}).count;
await t.expect(FileCountAfterDeletion).eql(1);
});
@ -456,18 +456,18 @@ test.meta("testID", "photos-012")("Mark photos/videos as panorama/scan", async (
await page.openNav();
await t.click(Selector(".nav-browse + div"))
.click(Selector(".nav-scans"))
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 15000 })
.notOk()
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 15000 })
.notOk();
if (t.browser.platform === "mobile") {
await page.openNav();
}
await t
.click(Selector(".nav-panoramas"))
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 15000 })
.notOk()
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 15000 })
.notOk();
await page.openNav();
await t.click(Selector(".nav-browse"));
@ -482,16 +482,16 @@ test.meta("testID", "photos-012")("Mark photos/videos as panorama/scan", async (
await page.turnSwitchOn("panorama");
await t.click(Selector(".action-close"));
await page.clearSelection();
await t.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 5000 })
await t.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 15000 })
.ok()
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 15000 })
.ok();
if (t.browser.platform === "mobile") {
await page.openNav();
}
await t
.click(Selector(".nav-scans"))
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 15000 })
.ok();
if (t.browser.platform === "mobile") {
await page.openNav();
@ -514,9 +514,9 @@ test.meta("testID", "photos-012")("Mark photos/videos as panorama/scan", async (
} else {
await t.click(Selector("button.action-reload"));
}
await t.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 5000 })
await t.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 15000 })
.notOk()
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 15000 })
.notOk();
if (t.browser.platform === "mobile") {
await page.openNav();
@ -524,9 +524,9 @@ test.meta("testID", "photos-012")("Mark photos/videos as panorama/scan", async (
}
await t
.click(Selector(".nav-scans"))
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 15000 })
.notOk()
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstVideo).exists, { timeout: 15000 })
.notOk();
});

View file

@ -189,9 +189,9 @@ test.meta("testID", "states-004")("Create/delete album during add to album", asy
await t
.expect(PhotoCountInAlbum)
.eql(PhotoCountInMoment)
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 15000 })
.ok()
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 15000 })
.ok();
await page.openNav();
await t.click(Selector(".nav-albums"));
@ -204,9 +204,9 @@ test.meta("testID", "states-004")("Create/delete album during add to album", asy
await t
.click(Selector(".nav-states"))
.click(Selector("a.is-album").withAttribute("data-uid", FirstMoment))
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", FirstPhoto).exists, { timeout: 15000 })
.ok()
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 5000 })
.expect(Selector("div").withAttribute("data-uid", SecondPhoto).exists, { timeout: 15000 })
.ok();
});