From 84823010fe3906b8edb6549cdf92904f32e3a539 Mon Sep 17 00:00:00 2001
From: thomaswoehlke <thomas.woehlke@gmail.com>
Date: Sat, 20 Feb 2021 18:27:57 +0100
Subject: [PATCH] working for 0.0.198 Release

---
 .../blueprints/owid/owid_model_import.py      |  7 ++++
 src/tests/TODO.md                             |  2 --
 src/tests/conftest.py                         |  9 ------
 {src/tests => tests}/__init__.py              |  0
 tests/config.py                               | 14 ++++++++
 tests/conftest.py                             | 32 +++++++++++++++++++
 .../covid19/blueprints/__init__.py            |  0
 .../covid19/blueprints/admin/__init__.py      |  0
 .../blueprints/admin/test_admin_views.py      |  0
 .../blueprints/application/__init__.py        |  0
 .../application/test_application_views.py     |  0
 .../covid19/blueprints/ecdc/__init__.py       |  0
 .../blueprints/rki_bundeslaender/__init__.py  |  0
 .../blueprints/rki_landkreise/__init__.py     |  0
 .../blueprints/rki_vaccination/__init__.py    |  0
 .../covid19/blueprints/who/__init__.py        |  0
 .../covid19/blueprints/who/test_who_views.py  |  0
 tests/test_flaskr.py                          | 12 +++++++
 18 files changed, 65 insertions(+), 11 deletions(-)
 delete mode 100644 src/tests/TODO.md
 delete mode 100644 src/tests/conftest.py
 rename {src/tests => tests}/__init__.py (100%)
 create mode 100644 tests/config.py
 create mode 100644 tests/conftest.py
 rename {src/tests => tests}/covid19/blueprints/__init__.py (100%)
 rename {src/tests => tests}/covid19/blueprints/admin/__init__.py (100%)
 rename {src/tests => tests}/covid19/blueprints/admin/test_admin_views.py (100%)
 rename {src/tests => tests}/covid19/blueprints/application/__init__.py (100%)
 rename {src/tests => tests}/covid19/blueprints/application/test_application_views.py (100%)
 rename {src/tests => tests}/covid19/blueprints/ecdc/__init__.py (100%)
 rename {src/tests => tests}/covid19/blueprints/rki_bundeslaender/__init__.py (100%)
 rename {src/tests => tests}/covid19/blueprints/rki_landkreise/__init__.py (100%)
 rename {src/tests => tests}/covid19/blueprints/rki_vaccination/__init__.py (100%)
 rename {src/tests => tests}/covid19/blueprints/who/__init__.py (100%)
 rename {src/tests => tests}/covid19/blueprints/who/test_who_views.py (100%)
 create mode 100644 tests/test_flaskr.py

diff --git a/src/covid19/blueprints/owid/owid_model_import.py b/src/covid19/blueprints/owid/owid_model_import.py
index 41059599..5901a5df 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 b6dbda7f..00000000
--- 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 c44fcaf5..00000000
--- 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 00000000..11a80f07
--- /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 00000000..10b926b7
--- /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 00000000..adef003d
--- /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)
-- 
GitLab