Update cypress test

This commit is contained in:
Ramon Wenger 2021-08-11 15:45:37 +02:00
parent e32b49ad5f
commit 1a928a824a
3 changed files with 79 additions and 81 deletions

View File

@ -46,5 +46,10 @@ export default {
}),
SchoolClassNode: () => ({
readOnly: false
}),
ClassMemberNode: () => ({
active: true,
isTeacher: false,
isMe: false
})
};

View File

@ -6,24 +6,6 @@
"selectedClass": {
"id": "U2Nob29sQ2xhc3NOb2RlOjE=",
"name": "Moordale",
"members": [
{
"id": "VXNlck5vZGU6Mw==",
"firstName": "Otis",
"lastName": "Milburn",
"isTeacher": false,
"active": true,
"__typename": "ClassMemberNode"
},
{
"id": "VXNlck5vZGU6NA==",
"firstName": "Maeve",
"lastName": "Wiley",
"isTeacher": false,
"active": true,
"__typename": "ClassMemberNode"
}
],
"__typename": "SchoolClassNode"
},
"__typename": "UserNode"

View File

@ -1,5 +1,23 @@
const me = require('../../fixtures/me.join-class.json');
const selectedClass = require('../../fixtures/selected-school-class.json');
const {getMinimalMe} = require('../../support/helpers');
const members = [
{
id: 'VXNlck5vZGU6Mw==',
firstName: 'Otis',
lastName: 'Milburn',
},
{
id: 'VXNlck5vZGU6NA==',
firstName: 'Maeve',
lastName: 'Wiley',
},
];
const selectedClass = {
name: 'Moordale',
members
};
describe('Class Management', () => {
beforeEach(() => {
@ -100,8 +118,8 @@ describe('Class Management', () => {
cy.mockGraphqlOps({
operations: {
MeQuery: me,
MySchoolClassQuery: selectedClass
}
MySchoolClassQuery: selectedClass,
},
});
cy.visit('/me/my-class');
@ -111,55 +129,48 @@ describe('Class Management', () => {
});
it('should leave and re-join class', () => {
// todo: re-enable after the deactivation of users is re-enabled again
const {me: teacher} = getMinimalMe({});
const teacherSelectedClass = {
me: {
...selectedClass.me,
isTeacher: true,
},
};
cy.mockGraphqlOps({
operations: {
MeQuery: teacher,
AddRemoveMember: {
addRemoveMember: {
success: true,
},
},
MySchoolClassQuery: teacherSelectedClass,
},
});
// const teacher = {
// me: {
// ...me.me,
// isTeacher: true
// }
// };
// const teacherSelectedClass = {
// me: {
// ...selectedClass.me,
// isTeacher: true
// }
// };
// cy.mockGraphqlOps({
// operations: {
// MeQuery: teacher,
// AddRemoveMember: {
// addRemoveMember: {
// success: true
// }
// },
// MySchoolClassQuery: teacherSelectedClass
// }
// });
//
// cy.visit('/me/my-class');
// cy.get('[data-cy=active-class-members-list]').within(() => {
// cy.get('[data-cy=school-class-member]').should('have.length', 2)
// });
// cy.get('[data-cy=inactive-class-members-list]').should('not.exist');
//
// cy.get('[data-cy=remove-from-class]').first().click();
//
// cy.get('[data-cy=modal-save-button]').click();
//
// cy.get('[data-cy=active-class-members-list]').within(() => {
// cy.get('[data-cy=school-class-member]').should('have.length', 1)
// });
// cy.get('[data-cy=inactive-class-members-list]').within(() => {
// cy.get('[data-cy=school-class-member]').should('have.length', 1)
// });
//
// cy.get('[data-cy=add-to-class]').first().click();
//
// cy.get('[data-cy=active-class-members-list]').within(() => {
// cy.get('[data-cy=school-class-member]').should('have.length', 2)
// });
// cy.get('[data-cy=inactive-class-members-list]').should('not.exist');
cy.visit('/me/my-class');
cy.get('[data-cy=active-class-members-list]').within(() => {
cy.get('[data-cy=school-class-member]').should('have.length', 2);
});
cy.get('[data-cy=inactive-class-members-list]').should('not.exist');
cy.get('[data-cy=remove-from-class]').first().click();
cy.get('[data-cy=modal-save-button]').click();
cy.get('[data-cy=active-class-members-list]').within(() => {
cy.get('[data-cy=school-class-member]').should('have.length', 1);
});
cy.get('[data-cy=inactive-class-members-list]').within(() => {
cy.get('[data-cy=school-class-member]').should('have.length', 1);
});
cy.get('[data-cy=add-to-class]').first().click();
cy.get('[data-cy=active-class-members-list]').within(() => {
cy.get('[data-cy=school-class-member]').should('have.length', 2);
});
cy.get('[data-cy=inactive-class-members-list]').should('not.exist');
});
it('should display old classes', () => {
@ -167,15 +178,15 @@ describe('Class Management', () => {
let OldClassesQuery = {
me: {
...me.me,
oldClasses
oldClasses,
},
};
cy.mockGraphqlOps({
operations: {
MeQuery: me,
OldClassesQuery
}
OldClassesQuery,
},
});
cy.visit('/me/old-classes');
@ -204,8 +215,8 @@ describe('Teacher Class Management', () => {
let localMe = {
me: {
...me.me,
isTeacher: true
}
isTeacher: true,
},
};
cy.mockGraphqlOps({
@ -214,20 +225,20 @@ describe('Teacher Class Management', () => {
MySchoolClassQuery: {
me: {
...selectedClass.me,
isTeacher: true
}
isTeacher: true,
},
},
UpdateSchoolClass: {
updateSchoolClass: {
success: true,
schoolClass: {
name: className,
__typename: 'SchoolClassNode'
__typename: 'SchoolClassNode',
},
__typename: 'UpdateSchoolClassPayload'
}
}
}
__typename: 'UpdateSchoolClassPayload',
},
},
},
});
cy.visit('/me/my-class');