138 lines
No EOL
6.5 KiB
JavaScript
138 lines
No EOL
6.5 KiB
JavaScript
import { Selector } from 'testcafe';
|
|
import testcafeconfig from '../testcafeconfig';
|
|
import Page from "../page-model";
|
|
|
|
fixture `Test settings`
|
|
.page`${testcafeconfig.url}`;
|
|
|
|
const page = new Page();
|
|
|
|
test
|
|
.meta('testID', 'settings-general-001')
|
|
('General Settings', async t => {
|
|
await page.openNav();
|
|
await t
|
|
.expect(Selector('.action-upload').exists, {timeout: 5000}).ok()
|
|
.expect(Selector('.nav-browse').innerText).contains('Search');
|
|
await page.toggleSelectNthPhoto(0);
|
|
await t
|
|
.click(Selector('button.action-menu'))
|
|
.expect(Selector('button.action-download').visible).ok()
|
|
.expect(Selector('button.action-share').visible).ok()
|
|
.expect(Selector('button.action-edit').visible).ok()
|
|
.expect(Selector('button.action-private').visible).ok();
|
|
await page.toggleSelectNthPhoto(0);
|
|
await t
|
|
.click(Selector('div.is-photo').nth(0));
|
|
await t
|
|
.expect(Selector('#p-photo-viewer').visible).ok()
|
|
.expect(Selector('.action-download').exists).ok()
|
|
.click(Selector('.action-close'))
|
|
.expect(Selector('button.action-location').visible).ok()
|
|
.click(Selector('button.action-title-edit').nth(0))
|
|
.expect(Selector('.input-title input', {timeout: 5000}).hasAttribute('disabled')).notOk()
|
|
.click(Selector('#tab-labels'))
|
|
.expect(Selector('button.p-photo-label-add').visible).ok()
|
|
.click(Selector('#tab-details'))
|
|
.click(Selector('button.action-close'))
|
|
.click(Selector('.nav-library'))
|
|
.expect(Selector('#tab-library-import a').visible).ok()
|
|
.expect(Selector('#tab-library-logs a').visible).ok()
|
|
.click(Selector('div.nav-browse + div'))
|
|
.expect(Selector('.nav-archive').visible).ok()
|
|
.expect(Selector('.nav-review').visible).ok()
|
|
.click(Selector('div.nav-library + div'))
|
|
.expect(Selector('.nav-originals').visible).ok()
|
|
.click(Selector('div.nav-albums + div'))
|
|
.expect(Selector('.nav-folders').visible).ok()
|
|
.expect(Selector('.nav-moments').visible).ok()
|
|
.expect(Selector('.nav-labels').visible).ok()
|
|
.expect(Selector('.nav-places').visible).ok()
|
|
.expect(Selector('.nav-private').visible).ok()
|
|
.click(Selector('.nav-settings'))
|
|
.click(Selector('.input-language input'))
|
|
.hover(Selector('div').withText('Deutsch').parent('div[role="listitem"]'))
|
|
.click(Selector('div').withText('Deutsch').parent('div[role="listitem"]'))
|
|
.click(Selector('.nav-settings'))
|
|
.click(Selector('.input-upload input'))
|
|
.click(Selector('.input-download input'))
|
|
.click(Selector('.input-import input'))
|
|
.click(Selector('.input-archive input'))
|
|
.click(Selector('.input-edit input'))
|
|
.click(Selector('.input-files input'))
|
|
.click(Selector('.input-moments input'))
|
|
.click(Selector('.input-labels input'))
|
|
.click(Selector('.input-logs input'))
|
|
.click(Selector('.input-share input'))
|
|
.click(Selector('.input-places input'))
|
|
.click(Selector('#tab-settings-library'))
|
|
.click(Selector('.input-private input'))
|
|
.click(Selector('.input-review input'))
|
|
.click(Selector('.nav-browse'));
|
|
|
|
await t.eval(() => location.reload());
|
|
await page.openNav();
|
|
await t
|
|
.expect(Selector('button.action-upload').exists).notOk()
|
|
.expect(Selector('.nav-browse').innerText).contains('Suche');
|
|
await page.toggleSelectNthPhoto(0);
|
|
await t
|
|
.click(Selector('button.action-menu'))
|
|
.expect(Selector('button.action-download').exists).notOk()
|
|
.expect(Selector('button.action-share').exists).notOk()
|
|
.expect(Selector('button.action-edit').visible).notOk()
|
|
.expect(Selector('button.action-private').exists).notOk();
|
|
await page.toggleSelectNthPhoto(0);
|
|
await t
|
|
.click(Selector('div.is-photo').nth(0));
|
|
await t
|
|
.expect(Selector('#p-photo-viewer').visible).ok()
|
|
.expect(Selector('.action-download').exists).notOk()
|
|
.click(Selector('.action-close'))
|
|
.expect(Selector('button.action-location').exists).notOk()
|
|
.click(Selector('button.action-title-edit').nth(0))
|
|
.expect(Selector('.input-title input').hasAttribute('disabled')).ok()
|
|
.expect(Selector('.input-latitude input').hasAttribute('disabled')).ok()
|
|
.expect(Selector('.input-timezone input').hasAttribute('disabled')).ok()
|
|
.expect(Selector('.input-country input').hasAttribute('disabled')).ok()
|
|
.expect(Selector('.input-description textarea').hasAttribute('disabled')).ok()
|
|
.expect(Selector('.input-keywords textarea').hasAttribute('disabled')).ok()
|
|
.click(Selector('#tab-labels'))
|
|
.expect(Selector('button.p-photo-label-add').exists).notOk()
|
|
.click(Selector('#tab-details'))
|
|
.click(Selector('button.action-close'))
|
|
.click(Selector('.nav-library'))
|
|
.expect(Selector('#tab-library-import a').exists).notOk()
|
|
//TODO Fix bug
|
|
//.expect(Selector('#tab-library-logs a').exists).notOk()
|
|
.click(Selector('div.nav-browse + div'))
|
|
.expect(Selector('.nav-archive').visible).notOk()
|
|
.expect(Selector('.nav-review').exists).notOk()
|
|
.click(Selector('div.nav-library + div'))
|
|
.expect(Selector('.nav-originals').visible).notOk()
|
|
.click(Selector('div.nav-albums + div'))
|
|
.expect(Selector('.nav-moments').visible).notOk()
|
|
.expect(Selector('.nav-labels').visible).notOk()
|
|
.expect(Selector('.nav-places').visible).notOk()
|
|
.expect(Selector('.nav-private').visible).notOk()
|
|
|
|
.click(Selector('.nav-settings'))
|
|
.click(Selector('.input-language input'))
|
|
.hover(Selector('div').withText('English').parent('div[role="listitem"]'))
|
|
.click(Selector('div').withText('English').parent('div[role="listitem"]'))
|
|
.click(Selector('.nav-settings'))
|
|
.click(Selector('.input-upload input'))
|
|
.click(Selector('.input-download input'))
|
|
.click(Selector('.input-import input'))
|
|
.click(Selector('.input-archive input'))
|
|
.click(Selector('.input-edit input'))
|
|
.click(Selector('.input-files input'))
|
|
.click(Selector('.input-moments input'))
|
|
.click(Selector('.input-labels input'))
|
|
.click(Selector('.input-logs input'))
|
|
.click(Selector('.input-share input'))
|
|
.click(Selector('.input-places input'))
|
|
.click(Selector('#tab-settings-library'))
|
|
.click(Selector('.input-private input'))
|
|
.click(Selector('.input-review input'));
|
|
}); |