Skip to content

Commit

Permalink
Merge pull request #45 from partio-scout/run-locally
Browse files Browse the repository at this point in the history
Devausympäristö ja testit
  • Loading branch information
ZeiP authored Apr 4, 2024
2 parents 7837f85 + ebff50a commit 46e2aed
Show file tree
Hide file tree
Showing 8 changed files with 81 additions and 30 deletions.
41 changes: 38 additions & 3 deletions .github/workflows/continuous-integration.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,43 @@ name: Automated tests
on: pull_request

jobs:
sqlite:
unit-tests-sqlite:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- run: bash -x scripts/citest
- uses: actions/checkout@v4
- name: start SUT
run: docker compose up --quiet-pull --detach --build
- name: run django test
run: docker compose run web './manage.py' test --failfast
robot-tests:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: start SUT
run: docker compose up --quiet-pull --detach --build
- name: Set up Python 3.12.1
uses: actions/setup-python@v5
with:
python-version: 3.12.1
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install robotframework
pip install robotframework-seleniumlibrary
- name: wait SUT to start
run: while ! curl -s -f 'http://localhost:3000/kipa' ; do sleep 2; docker ps; done
shell: bash
- name: run robot
run: |
robot \
--outputdir ./test-report \
--variable BROWSER:headlessfirefox \
--variable KIPA_URL:'http://localhost:3000/kipa' \
--exitonfailure \
web/robot/perustoiminnot.robot
- name: report
uses: actions/upload-artifact@v4
if: always()
with:
name: robot-test-report
path: ./test-report
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,4 @@ src
env*
*.orig
*.rej
web/settings/local.py
38 changes: 34 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,45 @@
Kipa
====
# Kipa

Kipa-ohjelmisto, jota käytetään partiotaitokilpailujen tuloslaskentaan.

Asennusohjeet löytyvät [wikistä](https://github.com/partio-scout/kipa/wiki).

Lisenssi
========
## Lisenssi

Tämä ohjelma on vapaa; tätä ohjelmaa on sallittu levittää edelleen ja muuttaa GNU yleisen lisenssin (GPL-lisenssin) ehtojen mukaan sellaisina kuin Free Software Foundation on ne julkaissut Lisenssin version 3 mukaisesti.

Tätä ohjelmaa levitetään siinä toivossa, että se olisi hyödyllinen, mutta ilman mitään takuuta; ilman edes hiljaista takuuta kaupallisesti hyväksyttävästä laadusta tai soveltuvuudesta tiettyyn tarkoitukseen. Katso GPL-lisenssistä lisää yksityiskohtia.

Tämän ohjelman mukana pitäisi tulla kopio GPL-lisenssistä; jos näin ei ole, kirjoita osoitteeseen Free Software Foundation Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.


## Kehittäminen

### Paikallisen kehitysympäristön pystytys

* Asenna Python2
* Varmista, että sopiva pip on asennettuna: `python2 -m ensurepip [--user] --upgrade`
* `virtualenv -p /path/to/python2 kipa-venv`
* `source ./kipa-venv/bin/activate`
* `pip install -r requirements.txt`
* `cp ./web/settings/local.py.example ./web/settings/local.py`, muokkaa sopiva polku tietokantatiedostolle
* `cd web`
* `python manage.py runserver` käynnistää kehityspalvelimen

### Yksikkötestien ajaminen

* tarvittaessa `source ./kipa-venv/bin/activate`
* `cd web`
* `python manage.py test`

### E2E-testien ajaminen

* Käynnistä Kipan kehityspalvelin
* `python3 -m venv ./robot-venv`
* `source ./robot-venv/bin/activate`
* `pip install robotframework robotframework-seleniumlibrary`
* `robot --outputdir /tmp/test-report --variable BROWSER:headlessfirefox --exitonfailure ./web/robot/perustoiminnot.robot`

Hakemistosta `./web/roobt` löytyy myös toinen robot-tiedosto nimeltään
`autentikointi.txt`, mutta sen ajaminen ei taida onnistua, ellei ensin toteuta
Kipaan suunniteltua kirjautumista.
20 changes: 0 additions & 20 deletions scripts/citest

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,9 @@ Suite Teardown Close All Browsers And Stop Selenium Server
Test Setup Open Competition
Test Teardown Close Browser
Force Tags regression smoke
Library Selenium2Library
Resource yhteiset_resurssit.txt
Library SeleniumLibrary
Resource yhteiset_resurssit.resource
Variables kipa_sivuosoitteet_ja_otsikot.py

*** Test Cases ***
Luodaan uusi kisa
Expand Down
File renamed without changes.
5 changes: 4 additions & 1 deletion web/settings/local.py.example
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
'NAME': hakemisto + '/../db/kipa.db', # Or path to database file if using sqlite3.
'NAME': '/path/to/your/db/kipa.db', # docs/initial.db is a good starting point
# The following settings are not used with sqlite3:
'USER': '',
'PASSWORD': '',
Expand All @@ -12,3 +12,6 @@ DATABASES = {

# Make this unique, and don't share it with anybody.
SECRET_KEY = 'shbtq($_^om(xep=5f97k2+ntb3!cqn+)%8r#s6udzqnhj$5p6'

# Serve static content
SERVE_MEDIA = True
1 change: 1 addition & 0 deletions web/tupa/views.py
Original file line number Diff line number Diff line change
Expand Up @@ -154,6 +154,7 @@ def maaritaKisa(request, kisa_nimi=None,talletettu=None):
if sarjaFormit.is_valid():
kisa=kisaForm.save()
sarjaFormit=SarjaFormSet(posti,instance=kisa)
sarjaFormit.is_valid()
sarjaFormit.save()

if kisa :
Expand Down

0 comments on commit 46e2aed

Please sign in to comment.