From d3cbb985a3da75431f95b54e4780e3b807ee0caa Mon Sep 17 00:00:00 2001 From: vahid Date: Wed, 26 Jun 2019 12:36:13 -0700 Subject: [PATCH] Refactor a test method to return a create test user with its api key. --- test/api/test_users.py | 3 +-- test/base/api.py | 14 ++++++-------- 2 files changed, 7 insertions(+), 10 deletions(-) diff --git a/test/api/test_users.py b/test/api/test_users.py index aaf8d091b11..f1a98a121e5 100644 --- a/test/api/test_users.py +++ b/test/api/test_users.py @@ -121,8 +121,7 @@ class UsersApiTestCase(api.ApiTestCase): @skip_without_tool("cat1") def test_search_favorites(self): - user = self._setup_user(TEST_USER_EMAIL) - user_key = self._setup_user_get_key(TEST_USER_EMAIL) + user, user_key = self._setup_user_get_key(TEST_USER_EMAIL) url = self._api_url("users/%s/favorites/tools" % user["id"], params=dict(key=user_key)) fav_response = put(url, data=json.dumps({"object_id" : "cat1"})) self._assert_status_code_is_ok(fav_response) diff --git a/test/base/api.py b/test/base/api.py index 45988fb9bc6..c6d99404a5c 100644 --- a/test/base/api.py +++ b/test/base/api.py @@ -47,17 +47,15 @@ class UsesApiTestCaseMixin(object): self.master_api_key = get_master_api_key() self.galaxy_interactor = ApiTestInteractor(self) - def _setup_user(self, email, password=None): + def _setup_user(self, email, password=None, is_admin=True): self.galaxy_interactor.ensure_user_with_email(email, password=password) - users = self._get("users", admin=True).json() + users = self._get("users", admin=is_admin).json() user = [user for user in users if user["email"] == email][0] return user - def _setup_user_get_key(self, email): - self.galaxy_interactor.ensure_user_with_email(email) - users = self._get("users", admin=True).json() - user = [user for user in users if user["email"] == email][0] - return self._post("users/%s/api_key" % user["id"], admin=True).json() + def _setup_user_get_key(self, email, password=None, is_admin=True): + user = self._setup_user(email, password, is_admin) + return user, self._post("users/%s/api_key" % user["id"], admin=True).json() @contextmanager def _different_user(self, email=OTHER_USER): @@ -68,7 +66,7 @@ class UsesApiTestCaseMixin(object): """ original_api_key = self.user_api_key original_interactor_key = self.galaxy_interactor.api_key - new_key = self._setup_user_get_key(email) + user, new_key = self._setup_user_get_key(email) try: self.user_api_key = new_key self.galaxy_interactor.api_key = new_key