Fix bug in modal text
This commit is contained in:
parent
cec562589f
commit
27d3525ea5
|
|
@ -62,6 +62,8 @@ export default {
|
||||||
readOnly: false
|
readOnly: false
|
||||||
}),
|
}),
|
||||||
ClassMemberNode: () => ({
|
ClassMemberNode: () => ({
|
||||||
|
firstName: 'First Name',
|
||||||
|
lastName: 'Last Name',
|
||||||
active: true,
|
active: true,
|
||||||
isTeacher: false,
|
isTeacher: false,
|
||||||
isMe: false
|
isMe: false
|
||||||
|
|
|
||||||
|
|
@ -17,11 +17,6 @@ const members = [
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
const getSelectedClass = (classMembers = members) => ({
|
|
||||||
name: 'Moordale',
|
|
||||||
members: classMembers
|
|
||||||
});
|
|
||||||
|
|
||||||
describe('School Class Management', () => {
|
describe('School Class Management', () => {
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
cy.setup();
|
cy.setup();
|
||||||
|
|
@ -133,18 +128,13 @@ describe('School Class Management', () => {
|
||||||
|
|
||||||
cy.get('[data-cy=modal-save-button]').click();
|
cy.get('[data-cy=modal-save-button]').click();
|
||||||
|
|
||||||
cy.get('[data-cy=active-class-members-list]').within(() => {
|
cy.getByDataCy('active-member').should('have.length', 1);
|
||||||
cy.get('[data-cy=group-list-member]').should('have.length', 1);
|
cy.getByDataCy('inactive-member').should('have.length', 1);
|
||||||
});
|
|
||||||
cy.get('[data-cy=inactive-class-members-list]').within(() => {
|
|
||||||
cy.get('[data-cy=group-list-member]').should('have.length', 1);
|
|
||||||
});
|
|
||||||
|
|
||||||
cy.get('[data-cy=add-to-class]').first().click();
|
cy.get('[data-cy=add-to-class]').first().click();
|
||||||
|
|
||||||
cy.get('[data-cy=active-class-members-list]').within(() => {
|
cy.getByDataCy('active-member').should('have.length', 2);
|
||||||
cy.get('[data-cy=group-list-member]').should('have.length', 2);
|
|
||||||
});
|
|
||||||
cy.get('[data-cy=inactive-class-members-list]').should('not.exist');
|
cy.get('[data-cy=inactive-class-members-list]').should('not.exist');
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -212,10 +202,54 @@ describe('Teacher Class Management', () => {
|
||||||
});
|
});
|
||||||
|
|
||||||
it('removes student, then leaves class', () => {
|
it('removes student, then leaves class', () => {
|
||||||
cy.get('not-implemented');
|
const myId = btoa('PrivateUserNode:1');
|
||||||
|
const memberId = btoa('GroupMemberNode:1');
|
||||||
|
let classMembers = [
|
||||||
|
{...teacher, id: myId, isMe: true, isTeacher: true},
|
||||||
|
...members
|
||||||
|
];
|
||||||
|
let me = () => ({
|
||||||
|
...teacher,
|
||||||
|
id: memberId,
|
||||||
|
selectedClass: {
|
||||||
|
name: 'Just some class',
|
||||||
|
id: 'selectedClassId',
|
||||||
|
readOnly: false,
|
||||||
|
members: classMembers
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
cy.mockGraphqlOps({
|
||||||
|
operations: {
|
||||||
|
MeQuery: {
|
||||||
|
me: me()
|
||||||
|
},
|
||||||
|
AddRemoveMember: {
|
||||||
|
addRemoveMember: {
|
||||||
|
success: true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
MySchoolClassQuery: {
|
||||||
|
me: me()
|
||||||
|
},
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
cy.visit('/me/my-class');
|
||||||
|
cy.getByDataCy('active-member').should('have.length', 3);
|
||||||
|
cy.getByDataCy('remove-from-class').first().click();
|
||||||
|
cy.getByDataCy('deactivate-person-modal').should('exist');
|
||||||
|
cy.getByDataCy('modal-body-text').should('contain', 'deaktivieren');
|
||||||
|
cy.getByDataCy('modal-save-button').click();
|
||||||
|
cy.getByDataCy('active-member').should('have.length', 2);
|
||||||
|
cy.getByDataCy('leave-group').click();
|
||||||
|
cy.getByDataCy('deactivate-person-modal').should('exist');
|
||||||
|
cy.getByDataCy('modal-body-text').should('contain', 'verlassen');
|
||||||
|
cy.getByDataCy('modal-save-button').click();
|
||||||
|
cy.getByDataCy('active-member').should('have.length', 1);
|
||||||
});
|
});
|
||||||
|
|
||||||
it.only('creates a new class', () => {
|
it('creates a new class', () => {
|
||||||
const name = 'Hill Valley';
|
const name = 'Hill Valley';
|
||||||
let selectedClass = teacher.selectedClass;
|
let selectedClass = teacher.selectedClass;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
export const getMinimalMe = ({readOnly = false, classReadOnly = false, isTeacher = true}) => ({
|
export const getMinimalMe = ({readOnly = false, classReadOnly = false, isTeacher = true}) => ({
|
||||||
me: {
|
me: {
|
||||||
id: 'meId',
|
id: btoa('PrivateUserNode:1'),
|
||||||
readOnly,
|
readOnly,
|
||||||
isTeacher,
|
isTeacher,
|
||||||
selectedClass: {
|
selectedClass: {
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@
|
||||||
<modal
|
<modal
|
||||||
:hide-header="true"
|
:hide-header="true"
|
||||||
:small="true"
|
:small="true"
|
||||||
|
data-cy="deactivate-person-modal"
|
||||||
class="deactivate-user">
|
class="deactivate-user">
|
||||||
<h3 class="deactivate-user__heading">
|
<h3 class="deactivate-user__heading">
|
||||||
<template v-if="myself">
|
<template v-if="myself">
|
||||||
|
|
@ -12,7 +13,9 @@
|
||||||
</template>
|
</template>
|
||||||
deaktivieren
|
deaktivieren
|
||||||
</h3>
|
</h3>
|
||||||
<p class="deactivate-user__text deactivate-user__paragraph">
|
<p
|
||||||
|
class="deactivate-user__text deactivate-user__paragraph"
|
||||||
|
data-cy="modal-body-text">
|
||||||
<template v-if="myself">
|
<template v-if="myself">
|
||||||
Möchten Sie die Klasse <strong class="deactivate-user__text--strong">{{ schoolClass }}</strong> verlassen?
|
Möchten Sie die Klasse <strong class="deactivate-user__text--strong">{{ schoolClass }}</strong> verlassen?
|
||||||
</template>
|
</template>
|
||||||
|
|
@ -95,8 +98,7 @@
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
@import "@/styles/_variables.scss";
|
@import "~styles/helpers";
|
||||||
@import "@/styles/_mixins.scss";
|
|
||||||
|
|
||||||
.deactivate-user {
|
.deactivate-user {
|
||||||
&__heading {
|
&__heading {
|
||||||
|
|
|
||||||
|
|
@ -25,7 +25,7 @@
|
||||||
<li
|
<li
|
||||||
:key="member.id"
|
:key="member.id"
|
||||||
class="simple-list__item member-item"
|
class="simple-list__item member-item"
|
||||||
data-cy="group-list-member"
|
data-cy="active-member"
|
||||||
v-for="member in activeMembers">
|
v-for="member in activeMembers">
|
||||||
<span class="member-item__name">{{ fullName(member) }}</span>
|
<span class="member-item__name">{{ fullName(member) }}</span>
|
||||||
<span class="member-item__role">{{ role(member) }} </span>
|
<span class="member-item__role">{{ role(member) }} </span>
|
||||||
|
|
@ -49,7 +49,7 @@
|
||||||
<li
|
<li
|
||||||
:key="member.id"
|
:key="member.id"
|
||||||
class="simple-list__item member-item"
|
class="simple-list__item member-item"
|
||||||
data-cy="group-list-member"
|
data-cy="inactive-member"
|
||||||
v-for="member in inactiveMembers">
|
v-for="member in inactiveMembers">
|
||||||
<span class="member-item__name">{{ fullName(member) }}</span>
|
<span class="member-item__name">{{ fullName(member) }}</span>
|
||||||
<span class="member-item__role">{{ role(member) }}</span>
|
<span class="member-item__role">{{ role(member) }}</span>
|
||||||
|
|
|
||||||
|
|
@ -76,8 +76,10 @@
|
||||||
this.changeMember(member, true);
|
this.changeMember(member, true);
|
||||||
},
|
},
|
||||||
remove(member) {
|
remove(member) {
|
||||||
|
const memberId = atob(member.id).split(':')[1];
|
||||||
|
const meId = atob(this.me.id).split(':')[1];
|
||||||
this.$modal.open('deactivate-person', {
|
this.$modal.open('deactivate-person', {
|
||||||
myself: member.id === this.me.id,
|
myself: memberId === meId,
|
||||||
name: `${member.firstName} ${member.lastName}`,
|
name: `${member.firstName} ${member.lastName}`,
|
||||||
className: this.me.selectedClass.name,
|
className: this.me.selectedClass.name,
|
||||||
})
|
})
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue