Skip to content
Snippets Groups Projects
Commit 3542e027 authored by Bjarke Madsen's avatar Bjarke Madsen
Browse files

Add test and test data for new ec-projects endpoint

parent a5daa45c
Branches
Tags
1 merge request!11merge feature/COMP-152-EC-PROJECTS-TABLE into develop
......@@ -286,3 +286,43 @@ def test_organization_data():
)
)
session.commit()
@pytest.fixture
def test_ec_project_data():
def _generate_ec_project_data():
for nren in ["nren" + str(i) for i in range(1, 50)]:
for year in range(2016, 2021):
yield {
'nren': nren,
'year': year,
'project': 'ec_project1',
}
if int(nren[-1]) % 2 == 0:
yield {
'nren': nren,
'year': year,
'project': 'ec_project2',
}
with db.session_scope() as session:
ec_project_data = list(_generate_ec_project_data())
nren_dict = {nren_name: model.NREN(name=nren_name)
for nren_name in set(d['nren'] for d in ec_project_data)}
session.add_all(nren_dict.values())
for ec_project in ec_project_data:
nren = nren_dict[ec_project["nren"]]
year = ec_project["year"]
project = ec_project["project"]
session.add(
model.ECProject(
nren=nren,
year=year,
project=project
)
)
session.commit()
import json
import jsonschema
from compendium_v2.routes.ec_projects import EC_PROJECTS_RESPONSE_SCHEMA
def test_ec_project_response(client, test_ec_project_data):
rv = client.get(
'/api/ec-project/',
headers={'Accept': ['application/json']})
assert rv.status_code == 200
result = json.loads(rv.data.decode('utf-8'))
jsonschema.validate(result, EC_PROJECTS_RESPONSE_SCHEMA)
assert result
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment