about summary refs log tree commit diff
path: root/tests/integration/test_gemma.py
diff options
context:
space:
mode:
authorBonfaceKilz2021-03-05 12:06:22 +0300
committerBonfaceKilz2021-03-08 21:09:58 +0300
commit5c56425d51ab6a6b4ffd6ec8f86121bd91ff5e63 (patch)
tree4bb947a5f3775cdefc492adede41e018694c654d /tests/integration/test_gemma.py
parent4cf5c29a06001577054b3548a24d895cf1911e13 (diff)
downloadgenenetwork3-5c56425d51ab6a6b4ffd6ec8f86121bd91ff5e63.tar.gz
Apply pep-8 formatting
Began using elpy's format code fn
Diffstat (limited to 'tests/integration/test_gemma.py')
-rw-r--r--tests/integration/test_gemma.py133
1 files changed, 71 insertions, 62 deletions
diff --git a/tests/integration/test_gemma.py b/tests/integration/test_gemma.py
index 6d2116b..822f088 100644
--- a/tests/integration/test_gemma.py
+++ b/tests/integration/test_gemma.py
@@ -21,19 +21,21 @@ class GemmaAPITest(unittest.TestCase):
     """Test cases for the Gemma API"""
     def setUp(self):
         self.app = create_app({
-            "GENODIR": os.path.abspath(
-                os.path.join(os.path.dirname(__file__),
-                             "test_data/")),
-            "REDIS_JOB_QUEUE": "GN3::job-queue",
-            "GEMMA_WRAPPER_CMD": "gemma-wrapper"}).test_client()
+            "GENODIR":
+            os.path.abspath(
+                os.path.join(os.path.dirname(__file__), "test_data/")),
+            "REDIS_JOB_QUEUE":
+            "GN3::job-queue",
+            "GEMMA_WRAPPER_CMD":
+            "gemma-wrapper"
+        }).test_client()
 
     @mock.patch("gn3.api.gemma.run_cmd")
     def test_get_version(self, mock_run_cmd):
         """Test that the correct response is returned"""
         mock_run_cmd.return_value = {"status": 0, "output": "v1.9"}
         response = self.app.get("/api/gemma/version", follow_redirects=True)
-        self.assertEqual(response.get_json(),
-                         {"status": 0, "output": "v1.9"})
+        self.assertEqual(response.get_json(), {"status": 0, "output": "v1.9"})
         self.assertEqual(response.status_code, 200)
 
     @mock.patch("gn3.api.gemma.redis.Redis")
@@ -59,60 +61,69 @@ class GemmaAPITest(unittest.TestCase):
              "bxd_GWA_gUFhGu4rLG7k+CXLPk1OUg.txt")
         ]
         mock_queue_cmd.return_value = "my-unique-id"
-        response = self.app.post("/api/gemma/k-gwa-computation", json={
-            "trait_filename": "BXD.txt",
-            "geno_filename": "BXD_geno",
-            "values": ["X", "N/A", "X"],
-            "dataset_groupname": "BXD",
-            "trait_name": "Height",
-            "email": "me@me.com",
-            "dataset_name": "BXD"
-        })
-        mock_queue_cmd.assert_has_calls(
-            [mock.call(conn=_redis_conn,
-                       email="me@me.com",
-                       job_queue="GN3::job-queue",
-                       cmd=("gemma-wrapper --json -- -g "
-                            "genofile.txt -p test.txt "
-                            "-a genofile_snps.txt -gk > "
-                            "/tmp/gn2/bxd_K_gUFhGu4rLG7k+CXLPk1OUg.txt "
-                            "&& gemma-wrapper --json --input "
-                            "/tmp/gn2/bxd_K_gUFhGu4rLG7k+CXLPk1OUg.txt"
-                            " -- -a genofile_snps.txt -lmm 9 -g "
-                            "genofile.txt -p test.txt "
-                            "-a genofile_snps.txt "
-                            "-gk > "
-                            "/tmp/gn2/"
-                            "bxd_GWA_gUFhGu4rLG7k+CXLPk1OUg.txt"))]
-        )
+        response = self.app.post("/api/gemma/k-gwa-computation",
+                                 json={
+                                     "trait_filename": "BXD.txt",
+                                     "geno_filename": "BXD_geno",
+                                     "values": ["X", "N/A", "X"],
+                                     "dataset_groupname": "BXD",
+                                     "trait_name": "Height",
+                                     "email": "me@me.com",
+                                     "dataset_name": "BXD"
+                                 })
+        mock_queue_cmd.assert_has_calls([
+            mock.call(conn=_redis_conn,
+                      email="me@me.com",
+                      job_queue="GN3::job-queue",
+                      cmd=("gemma-wrapper --json -- -g "
+                           "genofile.txt -p test.txt "
+                           "-a genofile_snps.txt -gk > "
+                           "/tmp/gn2/bxd_K_gUFhGu4rLG7k+CXLPk1OUg.txt "
+                           "&& gemma-wrapper --json --input "
+                           "/tmp/gn2/bxd_K_gUFhGu4rLG7k+CXLPk1OUg.txt"
+                           " -- -a genofile_snps.txt -lmm 9 -g "
+                           "genofile.txt -p test.txt "
+                           "-a genofile_snps.txt "
+                           "-gk > "
+                           "/tmp/gn2/"
+                           "bxd_GWA_gUFhGu4rLG7k+CXLPk1OUg.txt"))
+        ])
         # mock_pheno_txt_file.return_value = "/tmp/gn2/BXD_6OBEPW."
         self.assertEqual(
-            response.get_json(),
-            {"unique_id": 'my-unique-id',
-             "status": "queued",
-             "output_file": "BXD_GWA_WzxVcfhKAn4fJnSWpsBq0g.txt"})
+            response.get_json(), {
+                "unique_id": 'my-unique-id',
+                "status": "queued",
+                "output_file": "BXD_GWA_WzxVcfhKAn4fJnSWpsBq0g.txt"
+            })
 
     @mock.patch("gn3.api.gemma.redis.Redis")
     @mock.patch("gn3.api.gemma.queue_cmd")
-    def test_run_gemma_with_loco(self,
-                                 mock_queue_cmd, mock_redis):
+    def test_run_gemma_with_loco(self, mock_queue_cmd, mock_redis):
         """Test that gemma composes the command correctly with loco"""
         _redis_conn = MockRedis(redis=mock.MagicMock(), hget=mock.MagicMock())
         mock_redis.return_value = _redis_conn
         mock_queue_cmd.return_value = "my-unique-id"
-        response = self.app.post("/api/gemma/k-gwa-computation", json={
-            "trait_filename": os.path.abspath(os.path.join(
-                os.path.dirname(__file__),
-                "test_data/"
-            )),
-            "geno_filename": "BXD_geno.txt.gz",
-            "values": ["X", "N/A", "X"],
-            "dataset_groupname": "BXD",
-            "trait_name": "Height",
-            "email": "me@me.com",
-            "dataset_name": "BXD",
-            "loco": "1,2,3,4,5,6"
-        })
+        response = self.app.post("/api/gemma/k-gwa-computation",
+                                 json={
+                                     "trait_filename":
+                                     os.path.abspath(
+                                         os.path.join(
+                                             os.path.dirname(__file__),
+                                             "test_data/")),
+                                     "geno_filename":
+                                     "BXD_geno.txt.gz",
+                                     "values": ["X", "N/A", "X"],
+                                     "dataset_groupname":
+                                     "BXD",
+                                     "trait_name":
+                                     "Height",
+                                     "email":
+                                     "me@me.com",
+                                     "dataset_name":
+                                     "BXD",
+                                     "loco":
+                                     "1,2,3,4,5,6"
+                                 })
         mock_queue_cmd.called_with(
             conn=_redis_conn,
             email="me@me.com",
@@ -130,10 +141,11 @@ class GemmaAPITest(unittest.TestCase):
                  "/tmp/gn2/"
                  "bxd_GWA_gUFhGu4rLG7k+CXLPk1OUg.txt"))
         self.assertEqual(
-            response.get_json(),
-            {"unique_id": 'my-unique-id',
-             "status": "queued",
-             "output_file": "BXD_GWA_WzxVcfhKAn4fJnSWpsBq0g.txt"})
+            response.get_json(), {
+                "unique_id": 'my-unique-id',
+                "status": "queued",
+                "output_file": "BXD_GWA_WzxVcfhKAn4fJnSWpsBq0g.txt"
+            })
 
     @mock.patch("gn3.api.gemma.redis.Redis")
     def test_check_cmd_status(self, mock_redis):
@@ -146,18 +158,15 @@ class GemmaAPITest(unittest.TestCase):
                                  "cmd%3A%3A2021-02-1217-3224-3224-1234"),
                                 follow_redirects=True)
         mock_hget.assert_called_once_with(
-            name="cmd::2021-02-1217-3224-3224-1234",
-            key="status")
-        self.assertEqual(response.get_json(),
-                         {"status": "test"})
+            name="cmd::2021-02-1217-3224-3224-1234", key="status")
+        self.assertEqual(response.get_json(), {"status": "test"})
 
     @mock.patch("gn3.api.gemma.queue_cmd")
     @mock.patch("gn3.api.gemma.get_hash_of_files")
     @mock.patch("gn3.api.gemma.jsonfile_to_dict")
     @mock.patch("gn3.api.gemma.do_paths_exist")
     @mock.patch("gn3.api.gemma.redis.Redis")
-    def test_k_compute(self, mock_redis, mock_path_exist,
-                       mock_json, mock_hash,
+    def test_k_compute(self, mock_redis, mock_path_exist, mock_json, mock_hash,
                        mock_queue_cmd):
         """Test /gemma/k-compute/<token>"""
         mock_path_exist.return_value, _redis_conn = True, mock.MagicMock()