diff --git a/src/covid19/blueprints/owid/owid_model_import.py b/src/covid19/blueprints/owid/owid_model_import.py index 41059599e3b61673046112af43a4bf40e39324cb..5901a5df34f743899da19815073bed6b4a029f09 100644 --- a/src/covid19/blueprints/owid/owid_model_import.py +++ b/src/covid19/blueprints/owid/owid_model_import.py @@ -116,3 +116,10 @@ class OwidImport(db.Model): @classmethod def get_new_dates_reported_as_array(cls): return cls.get_dates_reported_as_array() + + @classmethod + def get_continents(cls): + return db.session.query(cls.continent)\ + .order_by(cls.date.desc()) \ + .group_by(cls.date) \ + .distinct() diff --git a/src/tests/TODO.md b/src/tests/TODO.md deleted file mode 100644 index b6dbda7f350106bf4ad180200790a61d91f2a1ae..0000000000000000000000000000000000000000 --- a/src/tests/TODO.md +++ /dev/null @@ -1,2 +0,0 @@ -# TODO - diff --git a/src/tests/conftest.py b/src/tests/conftest.py deleted file mode 100644 index c44fcaf5c80e7126f58fcb89de998d606711dd41..0000000000000000000000000000000000000000 --- a/src/tests/conftest.py +++ /dev/null @@ -1,9 +0,0 @@ -from celery.contrib import pytest - -from database import app, run_run_with_debug, port -import covid19.blueprints.application.application_views - -@pytest.fixture -def test_app(): - my_test_app = app - return my_test_app diff --git a/src/tests/__init__.py b/tests/__init__.py similarity index 100% rename from src/tests/__init__.py rename to tests/__init__.py diff --git a/tests/config.py b/tests/config.py new file mode 100644 index 0000000000000000000000000000000000000000..11a80f07bfad3c6150b719ba88196303cda28160 --- /dev/null +++ b/tests/config.py @@ -0,0 +1,14 @@ +SECRET_KEY = 'vfdjv423ndf654&%%' +CELERY_BROKER_URL = 'redis://localhost:6379/1' +MY_CELERY_RESULT_BACKEND = 'redis://localhost:6379/1' +CELERY_CONF_WORKER_SEND_TASK_EVENTS = True +CELERY_CONF_TASK_SEND_SENT_EVENT = True +SQLALCHEMY_POSTGRES_USER = 'covid19datatest' +SQLALCHEMY_POSTGRES_PW = 'covid19datatestpwd' +SQLALCHEMY_POSTGRES_URL = 'localhost' +SQLALCHEMY_POSTGRES_DB = 'covid19datatest' +SQLALCHEMY_ITEMS_PER_PAGE = 10 +SQLALCHEMY_TRACK_MODIFICATIONS = True +FLASK_ADMIN_SWATCH = 'superhero' +FLASK_APP_DEBUGGER_ACTIVE = True +PORT = 7070 diff --git a/tests/conftest.py b/tests/conftest.py new file mode 100644 index 0000000000000000000000000000000000000000..10b926b79c02770dcc3335871ef8581f0c74f61f --- /dev/null +++ b/tests/conftest.py @@ -0,0 +1,32 @@ +import os +import tempfile +import pytest +from flask import Flask +from database import run_run_with_debug, port, create_app, create_celery, create_db +import covid19.blueprints.application.application_views + + +@pytest.fixture +def app(): + app = create_app() + return app + + +@pytest.fixture +def db(): + db = create_db(app()) + return db + + +@pytest.fixture +def client(): + db_fd, app.config['DATABASE'] = tempfile.mkstemp() + app.config['TESTING'] = True + + with app.test_client() as client: + with app.app_context(): + db(app) + yield client + + os.close(db_fd) + os.unlink(app.config['DATABASE']) diff --git a/src/tests/covid19/blueprints/__init__.py b/tests/covid19/blueprints/__init__.py similarity index 100% rename from src/tests/covid19/blueprints/__init__.py rename to tests/covid19/blueprints/__init__.py diff --git a/src/tests/covid19/blueprints/admin/__init__.py b/tests/covid19/blueprints/admin/__init__.py similarity index 100% rename from src/tests/covid19/blueprints/admin/__init__.py rename to tests/covid19/blueprints/admin/__init__.py diff --git a/src/tests/covid19/blueprints/admin/test_admin_views.py b/tests/covid19/blueprints/admin/test_admin_views.py similarity index 100% rename from src/tests/covid19/blueprints/admin/test_admin_views.py rename to tests/covid19/blueprints/admin/test_admin_views.py diff --git a/src/tests/covid19/blueprints/application/__init__.py b/tests/covid19/blueprints/application/__init__.py similarity index 100% rename from src/tests/covid19/blueprints/application/__init__.py rename to tests/covid19/blueprints/application/__init__.py diff --git a/src/tests/covid19/blueprints/application/test_application_views.py b/tests/covid19/blueprints/application/test_application_views.py similarity index 100% rename from src/tests/covid19/blueprints/application/test_application_views.py rename to tests/covid19/blueprints/application/test_application_views.py diff --git a/src/tests/covid19/blueprints/ecdc/__init__.py b/tests/covid19/blueprints/ecdc/__init__.py similarity index 100% rename from src/tests/covid19/blueprints/ecdc/__init__.py rename to tests/covid19/blueprints/ecdc/__init__.py diff --git a/src/tests/covid19/blueprints/rki_bundeslaender/__init__.py b/tests/covid19/blueprints/rki_bundeslaender/__init__.py similarity index 100% rename from src/tests/covid19/blueprints/rki_bundeslaender/__init__.py rename to tests/covid19/blueprints/rki_bundeslaender/__init__.py diff --git a/src/tests/covid19/blueprints/rki_landkreise/__init__.py b/tests/covid19/blueprints/rki_landkreise/__init__.py similarity index 100% rename from src/tests/covid19/blueprints/rki_landkreise/__init__.py rename to tests/covid19/blueprints/rki_landkreise/__init__.py diff --git a/src/tests/covid19/blueprints/rki_vaccination/__init__.py b/tests/covid19/blueprints/rki_vaccination/__init__.py similarity index 100% rename from src/tests/covid19/blueprints/rki_vaccination/__init__.py rename to tests/covid19/blueprints/rki_vaccination/__init__.py diff --git a/src/tests/covid19/blueprints/who/__init__.py b/tests/covid19/blueprints/who/__init__.py similarity index 100% rename from src/tests/covid19/blueprints/who/__init__.py rename to tests/covid19/blueprints/who/__init__.py diff --git a/src/tests/covid19/blueprints/who/test_who_views.py b/tests/covid19/blueprints/who/test_who_views.py similarity index 100% rename from src/tests/covid19/blueprints/who/test_who_views.py rename to tests/covid19/blueprints/who/test_who_views.py diff --git a/tests/test_flaskr.py b/tests/test_flaskr.py new file mode 100644 index 0000000000000000000000000000000000000000..adef003dcc04b73c5a4f7aefdd7c6f9c7122f225 --- /dev/null +++ b/tests/test_flaskr.py @@ -0,0 +1,12 @@ +from unittest import TestCase +from conftest import app, db + +from src.covid19.blueprints.owid.owid_model_import import OwidImport + + +class Test(TestCase): + def test_run_test(self): + continents = OwidImport.get_continents() + for continent in continents: + app.logger.info(continent) + self.assertTrue(True)