Skip to content

Commit e8d46ff

Browse files
authored
Merge pull request #16 from cmu-delphi/ci-tests
The changes made in this commit include:
2 parents ec55a42 + 532eaff commit e8d46ff

File tree

9 files changed

+209
-78
lines changed

9 files changed

+209
-78
lines changed

.github/workflows/tests.yaml

Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
name: Django Tests
2+
on: [pull_request, push]
3+
4+
jobs:
5+
test:
6+
runs-on: ubuntu-latest
7+
8+
env:
9+
MYSQL_ROOT_PASSWORD: mysql_root_password
10+
MYSQL_DATABASE: mysql_database
11+
MYSQL_USER: mysql_user
12+
MYSQL_PASSWORD: mysql_password
13+
MYSQL_HOST: 127.0.0.1
14+
MYSQL_PORT: 3306
15+
16+
services:
17+
mysql:
18+
image: mysql:latest
19+
env:
20+
MYSQL_ROOT_PASSWORD: ${{ env.MYSQL_ROOT_PASSWORD }}
21+
MYSQL_DATABASE: ${{ env.MYSQL_DATABASE }}
22+
MYSQL_USER: ${{ env.MYSQL_USER }}
23+
MYSQL_PASSWORD: ${{ env.MYSQL_PASSWORD }}
24+
ports:
25+
- 3306:3306
26+
options: >-
27+
--health-cmd="mysqladmin ping"
28+
--health-interval=10s
29+
--health-timeout=5s
30+
--health-retries=3
31+
32+
steps:
33+
- name: Checkout code
34+
uses: actions/checkout@v2
35+
36+
- name: Set up Python
37+
uses: actions/setup-python@v2
38+
with:
39+
python-version: "3.10"
40+
41+
- name: Install dependencies
42+
run: |
43+
python3 -m pip install --upgrade pip
44+
sudo apt-get update -y
45+
sudo apt-get install mysql-client -y
46+
sudo apt-get install graphviz graphviz-dev -y
47+
pip install pipenv
48+
pipenv requirements > requirements.txt
49+
pip install -r requirements.txt
50+
51+
- name: Make migrations
52+
env:
53+
MYSQL_ROOT_PASSWORD: ${{ env.MYSQL_ROOT_PASSWORD }}
54+
MYSQL_DATABASE: ${{ env.MYSQL_DATABASE }}
55+
MYSQL_USER: ${{ env.MYSQL_USER }}
56+
MYSQL_PASSWORD: ${{ env.MYSQL_PASSWORD }}
57+
MYSQL_HOST: 127.0.0.1
58+
MYSQL_PORT: ${{ env.MYSQL_PORT }}
59+
60+
run: |
61+
mysql -u root -p"${{ env.MYSQL_ROOT_PASSWORD }}" -e "GRANT ALL PRIVILEGES ON *.* TO '${{ env.MYSQL_USER }}'@'%';"
62+
python3 ./src/manage.py migrate
63+
64+
- name: Run linters
65+
run: |
66+
pip install flake8
67+
flake8 .
68+
69+
- name: Run tests
70+
env:
71+
MYSQL_ROOT_PASSWORD: ${{ env.MYSQL_ROOT_PASSWORD }}
72+
MYSQL_DATABASE: ${{ env.MYSQL_DATABASE }}
73+
MYSQL_USER: ${{ env.MYSQL_USER }}
74+
MYSQL_PASSWORD: ${{ env.MYSQL_PASSWORD }}
75+
MYSQL_HOST: ${{ env.MYSQL_HOST }}
76+
MYSQL_PORT: ${{ env.MYSQL_PORT }}
77+
78+
run: |
79+
python3 ./src/manage.py test

Pipfile.lock

Lines changed: 55 additions & 51 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docker-compose.yaml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@ services:
2929
python /usr/src/signal_documentation/src/manage.py loaddata ./fixtures/pathogens.json &&
3030
python /usr/src/signal_documentation/src/manage.py loaddata ./fixtures/signal_types.json &&
3131
python /usr/src/signal_documentation/src/manage.py loaddata ./fixtures/signal_categories.json &&
32-
python /usr/src/signal_documentation/src/manage.py tests &&
3332
python /usr/src/signal_documentation/src/manage.py runserver 0.0.0.0:8000"
3433
volumes:
3534
- .:/usr/src/signal_documentation

src/__init__.py

Whitespace-only changes.

src/fixtures/available_geography.json

Lines changed: 21 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,49 +3,63 @@
33
"model": "signals.Geography",
44
"pk": 1,
55
"fields": {
6-
"name": "county"
6+
"name": "county",
7+
"created": "2023-08-09T19:23:22.597131",
8+
"modified": "2023-08-09T19:23:22.597131"
79
}
810
},
911
{
1012
"model": "signals.Geography",
1113
"pk": 2,
1214
"fields": {
13-
"name": "hhs"
15+
"name": "hhs",
16+
"created": "2023-08-09T19:23:22.597131",
17+
"modified": "2023-08-09T19:23:22.597131"
1418
}
1519
},
1620
{
1721
"model": "signals.Geography",
1822
"pk": 3,
1923
"fields": {
20-
"name": "hrr"
24+
"name": "hrr",
25+
"created": "2023-08-09T19:23:22.597131",
26+
"modified": "2023-08-09T19:23:22.597131"
2127
}
2228
},
2329
{
2430
"model": "signals.Geography",
2531
"pk": 4,
2632
"fields": {
27-
"name": "msa"
33+
"name": "msa",
34+
"created": "2023-08-09T19:23:22.597131",
35+
"modified": "2023-08-09T19:23:22.597131"
2836
}
2937
},
3038
{
3139
"model": "signals.Geography",
3240
"pk": 5,
3341
"fields": {
34-
"name": "nation"
42+
"name": "nation",
43+
"created": "2023-08-09T19:23:22.597131",
44+
"modified": "2023-08-09T19:23:22.597131"
3545
}
3646
},
3747
{
3848
"model": "signals.Geography",
3949
"pk": 6,
4050
"fields": {
41-
"name": "state"
51+
"name": "state",
52+
"created": "2023-08-09T19:23:22.597131",
53+
"modified": "2023-08-09T19:23:22.597131"
4254
}
4355
},
4456
{
4557
"model": "signals.Geography",
4658
"pk": 7,
4759
"fields": {
48-
"name": "dma"
60+
"name": "dma",
61+
"created": "2023-08-09T19:23:22.597131",
62+
"modified": "2023-08-09T19:23:22.597131"
4963
}
5064
}
5165
]

0 commit comments

Comments
 (0)