From 03caa57ad209f3bdd135be9d6516b94261c9b8de Mon Sep 17 00:00:00 2001
From: BonfaceKilz
Date: Thu, 28 Oct 2021 11:05:19 +0300
Subject: Remove all elasticsearch references in gn2
---
test/requests/parametrized_test.py | 32 -------------------------------
test/requests/test-website.py | 1 -
test/requests/test_forgot_password.py | 29 +++++++---------------------
test/requests/test_registration.py | 36 +++++++++++++++--------------------
4 files changed, 22 insertions(+), 76 deletions(-)
delete mode 100644 test/requests/parametrized_test.py
(limited to 'test/requests')
diff --git a/test/requests/parametrized_test.py b/test/requests/parametrized_test.py
deleted file mode 100644
index 50003850..00000000
--- a/test/requests/parametrized_test.py
+++ /dev/null
@@ -1,32 +0,0 @@
-import logging
-import unittest
-from wqflask import app
-from utility.elasticsearch_tools import get_elasticsearch_connection, get_user_by_unique_column
-from elasticsearch import Elasticsearch, TransportError
-
-class ParametrizedTest(unittest.TestCase):
-
- def __init__(self, methodName='runTest', gn2_url="http://localhost:5003", es_url="localhost:9200"):
- super(ParametrizedTest, self).__init__(methodName=methodName)
- self.gn2_url = gn2_url
- self.es_url = es_url
-
- def setUp(self):
- self.es = get_elasticsearch_connection()
- self.es_cleanup = []
-
- es_logger = logging.getLogger("elasticsearch")
- es_logger.setLevel(app.config.get("LOG_LEVEL"))
- es_logger.addHandler(
- logging.FileHandler("/tmp/es_TestRegistrationInfo.log"))
- es_trace_logger = logging.getLogger("elasticsearch.trace")
- es_trace_logger.addHandler(
- logging.FileHandler("/tmp/es_TestRegistrationTrace.log"))
-
- def tearDown(self):
- from time import sleep
- self.es.delete_by_query(
- index="users"
- , doc_type="local"
- , body={"query":{"match":{"email_address":"test@user.com"}}})
- sleep(1)
diff --git a/test/requests/test-website.py b/test/requests/test-website.py
index 8bfb47c2..d619a7d5 100755
--- a/test/requests/test-website.py
+++ b/test/requests/test-website.py
@@ -43,7 +43,6 @@ def dummy(args_obj, parser):
def integration_tests(args_obj, parser):
gn2_url = args_obj.host
- es_url = app.config.get("ELASTICSEARCH_HOST")+":"+str(app.config.get("ELASTICSEARCH_PORT"))
run_integration_tests(gn2_url, es_url)
def initTest(klass, gn2_url, es_url):
diff --git a/test/requests/test_forgot_password.py b/test/requests/test_forgot_password.py
index 346524bc..65b061f8 100644
--- a/test/requests/test_forgot_password.py
+++ b/test/requests/test_forgot_password.py
@@ -1,25 +1,22 @@
import requests
-from utility.elasticsearch_tools import get_user_by_unique_column
from parameterized import parameterized
from parametrized_test import ParametrizedTest
passwork_reset_link = ''
forgot_password_page = None
-class TestForgotPassword(ParametrizedTest):
+class TestForgotPassword(ParametrizedTest):
def setUp(self):
super(TestForgotPassword, self).setUp()
self.forgot_password_url = self.gn2_url+"/n/forgot_password_submit"
+
def send_email(to_addr, msg, fromaddr="no-reply@genenetwork.org"):
print("CALLING: send_email_mock()")
email_data = {
- "to_addr": to_addr
- , "msg": msg
- , "fromaddr": from_addr}
+ "to_addr": to_addr, "msg": msg, "fromaddr": from_addr}
data = {
- "es_connection": self.es,
"email_address": "test@user.com",
"full_name": "Test User",
"organization": "Test Organisation",
@@ -27,24 +24,12 @@ class TestForgotPassword(ParametrizedTest):
"password_confirm": "test_password"
}
-
def testWithoutEmail(self):
data = {"email_address": ""}
- error_notification = '
You MUST provide an email
'
+ error_notification = (''
+ 'You MUST provide an email
')
result = requests.post(self.forgot_password_url, data=data)
self.assertEqual(result.url, self.gn2_url+"/n/forgot_password")
self.assertTrue(
- result.content.find(error_notification) >= 0
- , "Error message should be displayed but was not")
-
- def testWithNonExistingEmail(self):
- # Monkey patching doesn't work, so simply test that getting by email
- # returns the correct data
- user = get_user_by_unique_column(self.es, "email_address", "non-existent@domain.com")
- self.assertTrue(user is None, "Should not find non-existent user")
-
- def testWithExistingEmail(self):
- # Monkey patching doesn't work, so simply test that getting by email
- # returns the correct data
- user = get_user_by_unique_column(self.es, "email_address", "test@user.com")
- self.assertTrue(user is not None, "Should find user")
+ result.content.find(error_notification) >= 0,
+ "Error message should be displayed but was not")
diff --git a/test/requests/test_registration.py b/test/requests/test_registration.py
index 0047e8a6..5d08bf58 100644
--- a/test/requests/test_registration.py
+++ b/test/requests/test_registration.py
@@ -1,31 +1,25 @@
import sys
import requests
-from parametrized_test import ParametrizedTest
class TestRegistration(ParametrizedTest):
- def tearDown(self):
- for item in self.es_cleanup:
- self.es.delete(index="users", doc_type="local", id=item["_id"])
def testRegistrationPage(self):
- if self.es.ping():
- data = {
- "email_address": "test@user.com",
- "full_name": "Test User",
- "organization": "Test Organisation",
- "password": "test_password",
- "password_confirm": "test_password"
- }
- requests.post(self.gn2_url+"/n/register", data)
- response = self.es.search(
- index="users"
- , doc_type="local"
- , body={
- "query": {"match": {"email_address": "test@user.com"}}})
- self.assertEqual(len(response["hits"]["hits"]), 1)
- else:
- self.skipTest("The elasticsearch server is down")
+ data = {
+ "email_address": "test@user.com",
+ "full_name": "Test User",
+ "organization": "Test Organisation",
+ "password": "test_password",
+ "password_confirm": "test_password"
+ }
+ requests.post(self.gn2_url+"/n/register", data)
+ response = self.es.search(
+ index="users"
+ , doc_type="local"
+ , body={
+ "query": {"match": {"email_address": "test@user.com"}}})
+ self.assertEqual(len(response["hits"]["hits"]), 1)
+
def main(gn2, es):
import unittest
--
cgit v1.2.3
From 44bf8ee8463fe7182282ec10e259d4c9eb7526b8 Mon Sep 17 00:00:00 2001
From: BonfaceKilz
Date: Thu, 28 Oct 2021 11:14:42 +0300
Subject: Remove tests that refer to deleted "ParametrizedTest"
"ParametrizedTest" references ElasticSearch.
---
test/requests/test_forgot_password.py | 35 ---------------------
test/requests/test_login_github.py | 47 -----------------------------
test/requests/test_login_local.py | 57 -----------------------------------
test/requests/test_login_orcid.py | 47 -----------------------------
4 files changed, 186 deletions(-)
delete mode 100644 test/requests/test_forgot_password.py
delete mode 100644 test/requests/test_login_github.py
delete mode 100644 test/requests/test_login_local.py
delete mode 100644 test/requests/test_login_orcid.py
(limited to 'test/requests')
diff --git a/test/requests/test_forgot_password.py b/test/requests/test_forgot_password.py
deleted file mode 100644
index 65b061f8..00000000
--- a/test/requests/test_forgot_password.py
+++ /dev/null
@@ -1,35 +0,0 @@
-import requests
-from parameterized import parameterized
-from parametrized_test import ParametrizedTest
-
-passwork_reset_link = ''
-forgot_password_page = None
-
-
-class TestForgotPassword(ParametrizedTest):
- def setUp(self):
- super(TestForgotPassword, self).setUp()
- self.forgot_password_url = self.gn2_url+"/n/forgot_password_submit"
-
- def send_email(to_addr, msg, fromaddr="no-reply@genenetwork.org"):
- print("CALLING: send_email_mock()")
- email_data = {
- "to_addr": to_addr, "msg": msg, "fromaddr": from_addr}
-
- data = {
- "email_address": "test@user.com",
- "full_name": "Test User",
- "organization": "Test Organisation",
- "password": "test_password",
- "password_confirm": "test_password"
- }
-
- def testWithoutEmail(self):
- data = {"email_address": ""}
- error_notification = (''
- 'You MUST provide an email
')
- result = requests.post(self.forgot_password_url, data=data)
- self.assertEqual(result.url, self.gn2_url+"/n/forgot_password")
- self.assertTrue(
- result.content.find(error_notification) >= 0,
- "Error message should be displayed but was not")
diff --git a/test/requests/test_login_github.py b/test/requests/test_login_github.py
deleted file mode 100644
index 1bf4f695..00000000
--- a/test/requests/test_login_github.py
+++ /dev/null
@@ -1,47 +0,0 @@
-import uuid
-import requests
-from time import sleep
-from wqflask import app
-from parameterized import parameterized
-from parametrized_test import ParametrizedTest
-
-login_link_text = 'Sign in'
-logout_link_text = 'Sign out'
-uid = str(uuid.uuid4())
-
-class TestLoginGithub(ParametrizedTest):
-
- def setUp(self):
- super(TestLoginGithub, self).setUp()
- data = {
- "user_id": uid
- , "name": "A. T. Est User"
- , "github_id": 693024
- , "user_url": "https://fake-github.com/atestuser"
- , "login_type": "github"
- , "organization": ""
- , "active": 1
- , "confirmed": 1
- }
- self.es.create(index="users", doc_type="local", body=data, id=uid)
- sleep(1)
-
- def tearDown(self):
- super(TestLoginGithub, self).tearDown()
- self.es.delete(index="users", doc_type="local", id=uid)
-
- def testLoginUrl(self):
- login_button_text = 'Login with Github'
- result = requests.get(self.gn2_url+"/n/login")
- index = result.content.find(login_button_text)
- self.assertTrue(index >= 0, "Should have found `Login with Github` button")
-
- @parameterized.expand([
- ("1234", login_link_text, "Login should have failed with non-existing user")
- , (uid, logout_link_text, "Login should have been successful with existing user")
- ])
- def testLogin(self, test_uid, expected, message):
- url = self.gn2_url+"/n/login?type=github&uid="+test_uid
- result = requests.get(url)
- index = result.content.find(expected)
- self.assertTrue(index >= 0, message)
diff --git a/test/requests/test_login_local.py b/test/requests/test_login_local.py
deleted file mode 100644
index 6691d135..00000000
--- a/test/requests/test_login_local.py
+++ /dev/null
@@ -1,57 +0,0 @@
-import requests
-from parameterized import parameterized
-from parametrized_test import ParametrizedTest
-
-login_link_text = 'Sign in'
-logout_link_text = 'Sign out'
-
-class TestLoginLocal(ParametrizedTest):
-
- def setUp(self):
- super(TestLoginLocal, self).setUp()
- self.login_url = self.gn2_url +"/n/login"
- data = {
- "es_connection": self.es,
- "email_address": "test@user.com",
- "full_name": "Test User",
- "organization": "Test Organisation",
- "password": "test_password",
- "password_confirm": "test_password"
- }
-
-
- @parameterized.expand([
- (
- {
- "email_address": "non@existent.email",
- "password": "doesitmatter?"
- }, login_link_text, "Login should have failed with the wrong user details."),
- (
- {
- "email_address": "test@user.com",
- "password": "test_password"
- }, logout_link_text, "Login should have been successful with correct user details and neither import_collections nor remember_me set"),
- (
- {
- "email_address": "test@user.com",
- "password": "test_password",
- "import_collections": "y"
- }, logout_link_text, "Login should have been successful with correct user details and only import_collections set"),
- (
- {
- "email_address": "test@user.com",
- "password": "test_password",
- "remember_me": "y"
- }, logout_link_text, "Login should have been successful with correct user details and only remember_me set"),
- (
- {
- "email_address": "test@user.com",
- "password": "test_password",
- "remember_me": "y",
- "import_collections": "y"
- }, logout_link_text, "Login should have been successful with correct user details, and both remember_me, and import_collections set")
- ])
- def testLogin(self, data, expected, message):
- result = requests.post(self.login_url, data=data)
- index = result.content.find(expected)
- self.assertTrue(index >= 0, message)
diff --git a/test/requests/test_login_orcid.py b/test/requests/test_login_orcid.py
deleted file mode 100644
index ea15642e..00000000
--- a/test/requests/test_login_orcid.py
+++ /dev/null
@@ -1,47 +0,0 @@
-import uuid
-import requests
-from time import sleep
-from wqflask import app
-from parameterized import parameterized
-from parametrized_test import ParametrizedTest
-
-login_link_text = 'Sign in'
-logout_link_text = 'Sign out'
-uid = str(uuid.uuid4())
-
-class TestLoginOrcid(ParametrizedTest):
-
- def setUp(self):
- super(TestLoginOrcid, self).setUp()
- data = {
- "user_id": uid
- , "name": "A. T. Est User"
- , "orcid": 345872
- , "user_url": "https://fake-orcid.org/atestuser"
- , "login_type": "orcid"
- , "organization": ""
- , "active": 1
- , "confirmed": 1
- }
- self.es.create(index="users", doc_type="local", body=data, id=uid)
- sleep(1)
-
- def tearDown(self):
- super(TestLoginOrcid, self).tearDown()
- self.es.delete(index="users", doc_type="local", id=uid)
-
- def testLoginUrl(self):
- login_button_text = 'a href="https://sandbox.orcid.org/oauth/authorize?response_type=code&scope=/authenticate&show_login=true&client_id=' + app.config.get("ORCID_CLIENT_ID") + '&client_secret=' + app.config.get("ORCID_CLIENT_SECRET") + '" title="Login with ORCID" class="btn btn-info btn-group">Login with ORCID'
- result = requests.get(self.gn2_url+"/n/login")
- index = result.content.find(login_button_text)
- self.assertTrue(index >= 0, "Should have found `Login with ORCID` button")
-
- @parameterized.expand([
- ("1234", login_link_text, "Login should have failed with non-existing user")
- , (uid, logout_link_text, "Login should have been successful with existing user")
- ])
- def testLogin(self, test_uid, expected, message):
- url = self.gn2_url+"/n/login?type=orcid&uid="+test_uid
- result = requests.get(url)
- index = result.content.find(expected)
- self.assertTrue(index >= 0, message)
--
cgit v1.2.3