diff --git a/Dockerfile b/Dockerfile index d8c2c5de..e244d67c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,15 +1,7 @@ -FROM python:3.6 +FROM python:3.6.6 ENV PYTHONUNBUFFERED 1 -RUN mkdir /env -RUN mkdir /app RUN pip install pipenv - -COPY Pipfile /Pipfile -COPY Pipfile.lock /Pipfile.lock - -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 +RUN curl -sL https://deb.nodesource.com/setup_8.x | bash +RUN apt-get install nodejs -y +RUN apt-get install xvfb libgtk2.0-0 libnotify-dev libgconf-2-4 libnss3 libxss1 libasound2 -y diff --git a/bitbucket-pipelines.yml b/bitbucket-pipelines.yml index b35e4604..923e1cca 100644 --- a/bitbucket-pipelines.yml +++ b/bitbucket-pipelines.yml @@ -23,19 +23,24 @@ aliases: services: - postgres script: # Modify the commands below to build your repository. - - pip install pipenv - - export SECRET_KEY=abcd1234 - - export DATABASE_URL=postgres://postgres:postgres@localhost:5432/skillbox - - export DEBUG=True - - export USE_AWS=False - - pipenv install --dev --system + - &setup-tests source setup-for-tests.sh - ./server/run_unittests_coverage.sh - &cypress-test name: run cypress tests + caches: + - pip + - node services: - postgres script: - 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 name: deploy to prod on Heroku script: diff --git a/client/package.json b/client/package.json index 0350b5e8..40449b20 100644 --- a/client/package.json +++ b/client/package.json @@ -10,7 +10,8 @@ "lint": "eslint --ext .js,.vue src", "build": "node build/build.js", "open:cypress": "cypress open", - "test:cypress": "cypress run" + "test:cypress": "cypress run", + "install:cypress": "cypress install" }, "dependencies": { "apollo-cache-inmemory": "^1.2.2", diff --git a/server/core/management/commands/dummy_data.py b/server/core/management/commands/dummy_data.py index 0c45a50a..9b98bedf 100644 --- a/server/core/management/commands/dummy_data.py +++ b/server/core/management/commands/dummy_data.py @@ -394,34 +394,34 @@ data = [ 'url': 'https://ucarecdn.com/01066102-8a8a-47e8-9cce-ac00703482a9/zettel.png' } }, - { - 'type': 'assignment', - 'value': { - '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.' - } - }, - { - 'type': 'assignment', - 'value': { - 'title': 'Schwierigkeiten von Tauschvorgängen', - 'assignment': 'Beschreiben Sie mindestens zwei Schwierigkeiten, welche sich bei diesen Tauschvorgängen ergeben können.' - } - }, - { - 'type': 'assignment', - 'value': { - 'title': 'Vorteile von Geld', - 'assignment': 'Welche Vorteile bietet Geld? Beantworten Sie die Frage, indem Sie Bezug auf die Tauschvorgänge von Frau Linder nehmen.' - } - }, - { - 'type': 'assignment', - 'value': { - 'title': 'Aufgaben von Geld', - 'assignment': 'Welche Aufgabe übernimmt Geld demnach heute u.a.?' - } - }, + # { + # 'type': 'assignment', + # 'value': { + # '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.' + # } + # }, + # { + # 'type': 'assignment', + # 'value': { + # 'title': 'Schwierigkeiten von Tauschvorgängen', + # 'assignment': 'Beschreiben Sie mindestens zwei Schwierigkeiten, welche sich bei diesen Tauschvorgängen ergeben können.' + # } + # }, + # { + # 'type': 'assignment', + # 'value': { + # 'title': 'Vorteile von Geld', + # 'assignment': 'Welche Vorteile bietet Geld? Beantworten Sie die Frage, indem Sie Bezug auf die Tauschvorgänge von Frau Linder nehmen.' + # } + # }, + # { + # 'type': 'assignment', + # 'value': { + # 'title': 'Aufgaben von Geld', + # 'assignment': 'Welche Aufgabe übernimmt Geld demnach heute u.a.?' + # } + # }, ] }, ] @@ -511,13 +511,13 @@ data = [ 'text': '

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.

' } }, - { - 'type': 'assignment', - 'value': { - '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.' - } - }, + # { + # 'type': 'assignment', + # 'value': { + # '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.' + # } + # }, { 'type': 'video_block', 'value': { @@ -590,13 +590,13 @@ data = [ 'text': '

Setzen Sie sich mit allen Lernenden zusammen, welche sich über dieselben Anlageformen informiert haben und gleichen Sie Ihre Resultate ab.

' } }, - { - 'type': 'assignment', - 'value': { - '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.' - } - }, + # { + # 'type': 'assignment', + # 'value': { + # '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.' + # } + # }, ] }, ] @@ -627,13 +627,13 @@ data = [ 'text': '

Vergleichen Sie in der Klasse die unterschiedlichen Konditionen der Geschäftsbanken.

' } }, - { - 'type': 'assignment', - 'value': { - 'title': 'Welche Geldanlage ist sinnvoll?', - 'assignment': 'Ziehen Sie drei für Ihre Situation sinnvolle Schlüsse.' - } - }, + # { + # 'type': 'assignment', + # 'value': { + # 'title': 'Welche Geldanlage ist sinnvoll?', + # 'assignment': 'Ziehen Sie drei für Ihre Situation sinnvolle Schlüsse.' + # } + # }, ] }, ] diff --git a/setup-for-tests.sh b/setup-for-tests.sh new file mode 100755 index 00000000..784e2072 --- /dev/null +++ b/setup-for-tests.sh @@ -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