Add basics for cypress tests in pipelines file

This commit is contained in:
Ramon Wenger 2019-01-31 16:47:07 +01:00
parent ee5f5cf945
commit 050f700760
5 changed files with 72 additions and 68 deletions

View File

@ -1,15 +1,7 @@
FROM python:3.6 FROM python:3.6.6
ENV PYTHONUNBUFFERED 1 ENV PYTHONUNBUFFERED 1
RUN mkdir /env
RUN mkdir /app
RUN pip install pipenv RUN pip install pipenv
RUN curl -sL https://deb.nodesource.com/setup_8.x | bash
COPY Pipfile /Pipfile RUN apt-get install nodejs -y
COPY Pipfile.lock /Pipfile.lock RUN apt-get install xvfb libgtk2.0-0 libnotify-dev libgconf-2-4 libnss3 libxss1 libasound2 -y
ADD ./server/ /app/
#RUN apt-get update && apt-get -y install netcat && apt-get clean
#RUN apt-get -y install netcat
WORKDIR /app
RUN pipenv install --system --deploy

View File

@ -23,19 +23,24 @@ aliases:
services: services:
- postgres - postgres
script: # Modify the commands below to build your repository. script: # Modify the commands below to build your repository.
- pip install pipenv - &setup-tests source setup-for-tests.sh
- export SECRET_KEY=abcd1234
- export DATABASE_URL=postgres://postgres:postgres@localhost:5432/skillbox
- export DEBUG=True
- export USE_AWS=False
- pipenv install --dev --system
- ./server/run_unittests_coverage.sh - ./server/run_unittests_coverage.sh
- &cypress-test - &cypress-test
name: run cypress tests name: run cypress tests
caches:
- pip
- node
services: services:
- postgres - postgres
script: script:
- echo "This pipeline rules!" - echo "This pipeline rules!"
- *setup-tests
- npm install --prefix client
- npm run "install:cypress" --prefix client
- python server/manage.py dummy_data
- python server/manage.py runserver &
- npm run dev --prefix client &
- npm run "test:cypress" --prefix client
- &deploy-prod - &deploy-prod
name: deploy to prod on Heroku name: deploy to prod on Heroku
script: script:

View File

@ -10,7 +10,8 @@
"lint": "eslint --ext .js,.vue src", "lint": "eslint --ext .js,.vue src",
"build": "node build/build.js", "build": "node build/build.js",
"open:cypress": "cypress open", "open:cypress": "cypress open",
"test:cypress": "cypress run" "test:cypress": "cypress run",
"install:cypress": "cypress install"
}, },
"dependencies": { "dependencies": {
"apollo-cache-inmemory": "^1.2.2", "apollo-cache-inmemory": "^1.2.2",

View File

@ -394,34 +394,34 @@ data = [
'url': 'https://ucarecdn.com/01066102-8a8a-47e8-9cce-ac00703482a9/zettel.png' 'url': 'https://ucarecdn.com/01066102-8a8a-47e8-9cce-ac00703482a9/zettel.png'
} }
}, },
{ # {
'type': 'assignment', # 'type': 'assignment',
'value': { # 'value': {
'title': 'Tauschvorgänge', # 'title': 'Tauschvorgänge',
'assignment': 'Frau Linder schaut sich die Anhänge an der Bretterwand an. Sie möchte ihren Kinderwagen und die Babysachen gegen Kinderbekleidung eintauschen. Zeichnen Sie mit Hilfe der Ziffern die Tauschvorgänge nach, die Frau Linder in Gang setzen muss, damit sie am Schluss das gewünschte Gut in den Händen halten kann. Achtung: Es müssen nicht alle Ziffern verwendet werden.' # 'assignment': 'Frau Linder schaut sich die Anhänge an der Bretterwand an. Sie möchte ihren Kinderwagen und die Babysachen gegen Kinderbekleidung eintauschen. Zeichnen Sie mit Hilfe der Ziffern die Tauschvorgänge nach, die Frau Linder in Gang setzen muss, damit sie am Schluss das gewünschte Gut in den Händen halten kann. Achtung: Es müssen nicht alle Ziffern verwendet werden.'
} # }
}, # },
{ # {
'type': 'assignment', # 'type': 'assignment',
'value': { # 'value': {
'title': 'Schwierigkeiten von Tauschvorgängen', # 'title': 'Schwierigkeiten von Tauschvorgängen',
'assignment': 'Beschreiben Sie mindestens zwei Schwierigkeiten, welche sich bei diesen Tauschvorgängen ergeben können.' # 'assignment': 'Beschreiben Sie mindestens zwei Schwierigkeiten, welche sich bei diesen Tauschvorgängen ergeben können.'
} # }
}, # },
{ # {
'type': 'assignment', # 'type': 'assignment',
'value': { # 'value': {
'title': 'Vorteile von Geld', # 'title': 'Vorteile von Geld',
'assignment': 'Welche Vorteile bietet Geld? Beantworten Sie die Frage, indem Sie Bezug auf die Tauschvorgänge von Frau Linder nehmen.' # 'assignment': 'Welche Vorteile bietet Geld? Beantworten Sie die Frage, indem Sie Bezug auf die Tauschvorgänge von Frau Linder nehmen.'
} # }
}, # },
{ # {
'type': 'assignment', # 'type': 'assignment',
'value': { # 'value': {
'title': 'Aufgaben von Geld', # 'title': 'Aufgaben von Geld',
'assignment': 'Welche Aufgabe übernimmt Geld demnach heute u.a.?' # 'assignment': 'Welche Aufgabe übernimmt Geld demnach heute u.a.?'
} # }
}, # },
] ]
}, },
] ]
@ -511,13 +511,13 @@ data = [
'text': '<p>Die Banken und Versicherungen haben es sich zur Aufgabe gemacht, mit Geld zu handeln. Die Geschäftsbanken wie die UBS, Credit Suisse, PostFinance, Raiffeisen oder Kantonalbanken sind unter anderem direkt mit Privatpersonen und Firmen in Kontakt. Sie leihen ihnen Geld und legen deren Geld an.</p>' 'text': '<p>Die Banken und Versicherungen haben es sich zur Aufgabe gemacht, mit Geld zu handeln. Die Geschäftsbanken wie die UBS, Credit Suisse, PostFinance, Raiffeisen oder Kantonalbanken sind unter anderem direkt mit Privatpersonen und Firmen in Kontakt. Sie leihen ihnen Geld und legen deren Geld an.</p>'
} }
}, },
{ # {
'type': 'assignment', # 'type': 'assignment',
'value': { # 'value': {
'title': 'Notizen zum Video «Funktionen der Bank»', # 'title': 'Notizen zum Video «Funktionen der Bank»',
'assignment': 'Sehen Sie sich den Film zum Thema «Funktionen der Bank» an. Machen Sie sich Notizen zu den wichtigen Inhalten.' # 'assignment': 'Sehen Sie sich den Film zum Thema «Funktionen der Bank» an. Machen Sie sich Notizen zu den wichtigen Inhalten.'
} # }
}, # },
{ {
'type': 'video_block', 'type': 'video_block',
'value': { 'value': {
@ -590,13 +590,13 @@ data = [
'text': '<p>Setzen Sie sich mit allen Lernenden zusammen, welche sich über dieselben Anlageformen informiert haben und gleichen Sie Ihre Resultate ab.</p>' 'text': '<p>Setzen Sie sich mit allen Lernenden zusammen, welche sich über dieselben Anlageformen informiert haben und gleichen Sie Ihre Resultate ab.</p>'
} }
}, },
{ # {
'type': 'assignment', # 'type': 'assignment',
'value': { # 'value': {
'title': 'Anlageberatung', # 'title': 'Anlageberatung',
'assignment': 'Beraten Sie folgenden zwei Personen wie sie am Besten ihre Geld anlegen sollen: \n Maxim: 23-jährig, in keiner festen Beziehung, Verkäufer, 80 Prozent angestellt bei Interdiscount, eine Tochter (zwei-jährig), Schulden in der Höhe von CHF 8000.- Er erbt von seinem Vater CHF 40000.-, wodurch er ein Vermögen von CHF 32000 hat. \n Emilie: 48-jährig, verheiratet, Lehrerin, 80% angestellt bei der Prim. Bremgarten, ein Sohn (26-jährig), Vermögen in der Höhe von CHF 160000.-. Emilie und ihr Mann haben das Haus verkauft und wohnen zukünftig in einer Mietwohnung, weshalb sie ein Vermögen von CHF 160000.- haben.' # 'assignment': 'Beraten Sie folgenden zwei Personen wie sie am Besten ihre Geld anlegen sollen: \n Maxim: 23-jährig, in keiner festen Beziehung, Verkäufer, 80 Prozent angestellt bei Interdiscount, eine Tochter (zwei-jährig), Schulden in der Höhe von CHF 8000.- Er erbt von seinem Vater CHF 40000.-, wodurch er ein Vermögen von CHF 32000 hat. \n Emilie: 48-jährig, verheiratet, Lehrerin, 80% angestellt bei der Prim. Bremgarten, ein Sohn (26-jährig), Vermögen in der Höhe von CHF 160000.-. Emilie und ihr Mann haben das Haus verkauft und wohnen zukünftig in einer Mietwohnung, weshalb sie ein Vermögen von CHF 160000.- haben.'
} # }
}, # },
] ]
}, },
] ]
@ -627,13 +627,13 @@ data = [
'text': '<p>Vergleichen Sie in der Klasse die unterschiedlichen Konditionen der Geschäftsbanken.</p>' 'text': '<p>Vergleichen Sie in der Klasse die unterschiedlichen Konditionen der Geschäftsbanken.</p>'
} }
}, },
{ # {
'type': 'assignment', # 'type': 'assignment',
'value': { # 'value': {
'title': 'Welche Geldanlage ist sinnvoll?', # 'title': 'Welche Geldanlage ist sinnvoll?',
'assignment': 'Ziehen Sie drei für Ihre Situation sinnvolle Schlüsse.' # 'assignment': 'Ziehen Sie drei für Ihre Situation sinnvolle Schlüsse.'
} # }
}, # },
] ]
}, },
] ]

6
setup-for-tests.sh Executable file
View File

@ -0,0 +1,6 @@
#!/bin/bash
export SECRET_KEY=abcd1234
export DATABASE_URL=postgres://postgres:postgres@localhost:5432/skillbox
export DEBUG=True
export USE_AWS=False
pipenv install --dev --system