Add cypress test for surveys
This commit is contained in:
parent
fbe39e2784
commit
b498dc4efa
|
|
@ -0,0 +1,34 @@
|
|||
describe('Survey', () => {
|
||||
beforeEach(() => {
|
||||
cy.exec("python ../server/manage.py prepare_surveys_for_cypress");
|
||||
|
||||
cy.viewport('macbook-15');
|
||||
cy.startGraphQLCapture();
|
||||
cy.login('rahel.cueni', 'test');
|
||||
});
|
||||
|
||||
it('should display and fill out the survey', () => {
|
||||
cy.visit('/survey/U3VydmV5Tm9kZTox');
|
||||
|
||||
cy.get('.survey__panel-title').should('contain', 'Fall 1')
|
||||
|
||||
cy.get('#sq_100i').type('Wohlwollen');
|
||||
cy.get('#sq_101i').type('Demut');
|
||||
|
||||
cy.get('[value=Next]').click();
|
||||
//cy.get('.button--primary').click()
|
||||
|
||||
cy.get('#sq_102i').type('Keuschheit');
|
||||
cy.get('#sq_103i').type('Geduld');
|
||||
|
||||
cy.get('[value=Complete]').click();
|
||||
|
||||
cy.waitFor('UpdateAnswer');
|
||||
|
||||
cy.visit('/survey/U3VydmV5Tm9kZTox');
|
||||
|
||||
cy.get('#sq_100i').should('have.value', 'Wohlwollen')
|
||||
|
||||
});
|
||||
|
||||
});
|
||||
|
|
@ -4674,11 +4674,13 @@
|
|||
},
|
||||
"balanced-match": {
|
||||
"version": "1.0.0",
|
||||
"bundled": true
|
||||
"bundled": true,
|
||||
"optional": true
|
||||
},
|
||||
"brace-expansion": {
|
||||
"version": "1.1.11",
|
||||
"bundled": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"balanced-match": "^1.0.0",
|
||||
"concat-map": "0.0.1"
|
||||
|
|
@ -4691,15 +4693,18 @@
|
|||
},
|
||||
"code-point-at": {
|
||||
"version": "1.1.0",
|
||||
"bundled": true
|
||||
"bundled": true,
|
||||
"optional": true
|
||||
},
|
||||
"concat-map": {
|
||||
"version": "0.0.1",
|
||||
"bundled": true
|
||||
"bundled": true,
|
||||
"optional": true
|
||||
},
|
||||
"console-control-strings": {
|
||||
"version": "1.1.0",
|
||||
"bundled": true
|
||||
"bundled": true,
|
||||
"optional": true
|
||||
},
|
||||
"core-util-is": {
|
||||
"version": "1.0.2",
|
||||
|
|
@ -4802,7 +4807,8 @@
|
|||
},
|
||||
"inherits": {
|
||||
"version": "2.0.3",
|
||||
"bundled": true
|
||||
"bundled": true,
|
||||
"optional": true
|
||||
},
|
||||
"ini": {
|
||||
"version": "1.3.5",
|
||||
|
|
@ -4812,6 +4818,7 @@
|
|||
"is-fullwidth-code-point": {
|
||||
"version": "1.0.0",
|
||||
"bundled": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"number-is-nan": "^1.0.0"
|
||||
}
|
||||
|
|
@ -4824,17 +4831,20 @@
|
|||
"minimatch": {
|
||||
"version": "3.0.4",
|
||||
"bundled": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"brace-expansion": "^1.1.7"
|
||||
}
|
||||
},
|
||||
"minimist": {
|
||||
"version": "0.0.8",
|
||||
"bundled": true
|
||||
"bundled": true,
|
||||
"optional": true
|
||||
},
|
||||
"minipass": {
|
||||
"version": "2.2.4",
|
||||
"bundled": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"safe-buffer": "^5.1.1",
|
||||
"yallist": "^3.0.0"
|
||||
|
|
@ -4851,6 +4861,7 @@
|
|||
"mkdirp": {
|
||||
"version": "0.5.1",
|
||||
"bundled": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"minimist": "0.0.8"
|
||||
}
|
||||
|
|
@ -4923,7 +4934,8 @@
|
|||
},
|
||||
"number-is-nan": {
|
||||
"version": "1.0.1",
|
||||
"bundled": true
|
||||
"bundled": true,
|
||||
"optional": true
|
||||
},
|
||||
"object-assign": {
|
||||
"version": "4.1.1",
|
||||
|
|
@ -4933,6 +4945,7 @@
|
|||
"once": {
|
||||
"version": "1.4.0",
|
||||
"bundled": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"wrappy": "1"
|
||||
}
|
||||
|
|
@ -5038,6 +5051,7 @@
|
|||
"string-width": {
|
||||
"version": "1.0.2",
|
||||
"bundled": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"code-point-at": "^1.0.0",
|
||||
"is-fullwidth-code-point": "^1.0.0",
|
||||
|
|
|
|||
|
|
@ -73,7 +73,7 @@
|
|||
console.log(data);
|
||||
let json = JSON.parse(data.survey.data);
|
||||
let answer = {};
|
||||
if (data.survey.answer.data && data.survey.answer) {
|
||||
if (data.survey.answer && data.survey.answer.data) {
|
||||
answer = JSON.parse(data.survey.answer.data);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,75 @@
|
|||
from django.core.management import BaseCommand
|
||||
|
||||
from portfolio.factories import ProjectFactory
|
||||
from portfolio.models import ProjectEntry
|
||||
from surveys.models import Survey
|
||||
from users.models import User
|
||||
|
||||
survey_data = {
|
||||
"pages": [
|
||||
{
|
||||
"elements": [
|
||||
{
|
||||
"description": "Max hat Ende Monat noch Fr. 20.\u2013 \u00fcbrig, die er gespart hat, um mit seinem besten Kumpel, der ein halbes Jahr im Ausland verweilte, Billard spielen zu gehen. Doch dann bittet ihn seine j\u00fcngere Schwester um Geld. Sie hat ein unverhofftes Date mit einem jungen Mann, in den sie sich bereits vor Monaten unsterblich verliebt hat. Leider ist ihr Kontostand aber bereits auf Null.",
|
||||
"elements": [
|
||||
{
|
||||
"name": "A: Max gibt ihr das Geld und muss das Billardspiel absagen.",
|
||||
"placeHolder": "Passende Tugenden erfassen...",
|
||||
"type": "text"
|
||||
},
|
||||
{
|
||||
"name": "question2",
|
||||
"placeHolder": "Passende Tugenden erfassen...",
|
||||
"title": "B: Max gibt ihr das Geld nicht und geht Billard spielen.",
|
||||
"type": "text"
|
||||
}
|
||||
],
|
||||
"name": "Fall 1",
|
||||
"title": "Fall 1",
|
||||
"type": "panel"
|
||||
}
|
||||
],
|
||||
"name": "Seite 1"
|
||||
},
|
||||
{
|
||||
"elements": [
|
||||
{
|
||||
"description": "Auf der Autobahn brennt ein Lastwagen, der jederzeit explodieren kann. Silvio, dem Fahrer, bleiben nur noch wenige Minuten: Entweder bringt er seinen ohnm\u00e4chtig gewordenen Mitfahrer in Sicherheit oder er sperrt die Strasse ab, die nach wie vor dicht befahren wird.",
|
||||
"elements": [
|
||||
{
|
||||
"name": "question1",
|
||||
"placeHolder": "Passende Tugenden erfassen...",
|
||||
"title": "A: Silvio bringt seinen Mitfahrer in Sicherheit.",
|
||||
"type": "text",
|
||||
"useDisplayValuesInTitle": False
|
||||
},
|
||||
{
|
||||
"name": "question3",
|
||||
"placeHolder": "Passende Tugenden erfassen...",
|
||||
"title": "B: Silvio sperrt die Strasse ab.",
|
||||
"type": "text"
|
||||
}
|
||||
],
|
||||
"name": "panel1",
|
||||
"title": "Fall 2",
|
||||
"type": "panel"
|
||||
}
|
||||
],
|
||||
"name": "Seite 2"
|
||||
}
|
||||
],
|
||||
"showQuestionNumbers": "off"
|
||||
}
|
||||
|
||||
|
||||
class Command(BaseCommand):
|
||||
def handle(self, *args, **options):
|
||||
self.stdout.write("Clearing surveys")
|
||||
Survey.objects.all().delete()
|
||||
self.stdout.write("Creating survey")
|
||||
|
||||
Survey.objects.create(
|
||||
title='Test',
|
||||
data=survey_data,
|
||||
pk=1
|
||||
)
|
||||
Loading…
Reference in New Issue