Select Git revision
user-profile-icon-in-kommentar-error.e2e-spec.ts
user-profile-icon-in-kommentar-error.e2e-spec.ts 2.98 KiB
import * as faker from 'faker';
import { KommentarE2EComponent } from '../../components/kommentar/kommentar-list.e2e.component';
import { VorgangListE2EComponent } from '../../components/vorgang/vorgang-list.e2e.component';
import { KommentarE2E } from '../../model/kommentar';
import { HttpMethodE2E, MessageCodeE2E } from '../../model/util';
import { VorgangE2E } from '../../model/vorgang';
import { MainPage } from '../../page-objects/main.po';
import { VorgangPage } from '../../page-objects/vorgang.po';
import { dropCollections, interceptWithResponse } from '../../support/cypress-helper';
import { exist, notExist } from '../../support/cypress.util';
import { createKommentar } from '../../support/kommentar.util';
import { loginAsSabine } from '../../support/user-util';
import { createVorgang, initVorgang } from '../../support/vorgang-util';
describe('Kommentar user profile on backend error', () => {
const mainPage: MainPage = new MainPage();
const vorgangList: VorgangListE2EComponent = mainPage.getVorgangList();
const vorgangPage: VorgangPage = new VorgangPage();
const kommentarContainer: KommentarE2EComponent = vorgangPage.getKommentarContainer();
const kommentar: KommentarE2E = { ...createKommentar(), createdBy: faker.datatype.uuid() };
const vorgang: VorgangE2E = { ...createVorgang(), kommentars: [kommentar] };
before(() => {
initVorgang(vorgang);
loginAsSabine();
exist(vorgangList.getRoot());
})
after(() => {
dropCollections();
})
describe('on status 404', () => {
it('should navigate to vorgang detail', () => {
vorgangList.getListItem(vorgang.name).getRoot().click();
exist(vorgangPage.getVorgangDetailHeader().getRoot());
vorgangPage.waitForSpinnerToDisappear();
})
it('should show error not found icon', () => {
exist(kommentarContainer.getKommentar(kommentar.text).getUserProfile().getIconContainer().getErrorResourceNotFoundIcon());
})
it('should hide user profile name', () => {
notExist(kommentarContainer.getKommentar(kommentar.text).getUserProfile().getName());
})
it('should navigate back to list', () => {
vorgangPage.getSubnavigation().clickBackButton();
})
})
describe.skip('on status 503', () => {
it('should manipulate response on vorgang detail navigation', () => {
interceptWithResponse(HttpMethodE2E.GET, '/api/userProfiles/*', { statusCode: 503, body: { issues: [{ messageCode: MessageCodeE2E.SERVICE_UNAVAILABLE }] } });
vorgangList.getListItem(vorgang.name).getRoot().click();
exist(vorgangPage.getVorgangDetailHeader().getRoot());
vorgangPage.waitForSpinnerToDisappear();
})
it('should show error service unavailable icon', () => {
exist(kommentarContainer.getKommentar(kommentar.text).getUserProfile().getIconContainer().getErrorServiceUnavailableIcon());
})
it('should hide user profile name', () => {
notExist(kommentarContainer.getKommentar(kommentar.text).getUserProfile().getName());
})
it('should navigate back', () => {
vorgangPage.getSubnavigation().clickBackButton();
})
})
})