Mercurial > repos > shellac > sam_consensus_v3
diff env/lib/python3.9/site-packages/bioblend/_tests/TestGalaxyUsers.py @ 0:4f3585e2f14b draft default tip
"planemo upload commit 60cee0fc7c0cda8592644e1aad72851dec82c959"
author | shellac |
---|---|
date | Mon, 22 Mar 2021 18:12:50 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/env/lib/python3.9/site-packages/bioblend/_tests/TestGalaxyUsers.py Mon Mar 22 18:12:50 2021 +0000 @@ -0,0 +1,83 @@ +""" +Tests the functionality of the Blend CloudMan API. These tests require working +credentials to supported cloud infrastructure. +""" +from . import GalaxyTestBase + + +class TestGalaxyUsers(GalaxyTestBase.GalaxyTestBase): + + def test_get_users(self): + users = self.gi.users.get_users() + for user in users: + self.assertIsNotNone(user['id']) + self.assertIsNotNone(user['email']) + + def test_show_user(self): + current_user = self.gi.users.get_current_user() + user = self.gi.users.show_user(current_user['id']) + self.assertEqual(user['id'], current_user['id']) + self.assertEqual(user['username'], current_user['username']) + self.assertEqual(user['email'], current_user['email']) + # The 2 following tests randomly fail +# self.assertEqual(user['nice_total_disk_usage'], current_user['nice_total_disk_usage']) +# self.assertEqual(user['total_disk_usage'], current_user['total_disk_usage']) + + def test_create_remote_user(self): + # WARNING: only admins can create users! + # WARNING: Users cannot be purged through the Galaxy API, so execute + # this test only on a disposable Galaxy instance! + if not self.gi.config.get_config()['use_remote_user']: + self.skipTest('This Galaxy instance is not configured to use remote users') + new_user_email = 'newuser@example.com' + user = self.gi.users.create_remote_user(new_user_email) + self.assertEqual(user['email'], new_user_email) + if self.gi.config.get_config()['allow_user_deletion']: + deleted_user = self.gi.users.delete_user(user['id']) + self.assertEqual(deleted_user['email'], new_user_email) + self.assertTrue(deleted_user['deleted']) + + def test_create_local_user(self): + # WARNING: only admins can create users! + # WARNING: Users cannot be purged through the Galaxy API, so execute + # this test only on a disposable Galaxy instance! + if self.gi.config.get_config()['use_remote_user']: + self.skipTest('This Galaxy instance is not configured to use local users') + new_user_email = 'newuser@example.com' + user = self.gi.users.create_local_user('newuser', new_user_email, 'secret') + self.assertEqual(user['username'], 'newuser') + self.assertEqual(user['email'], new_user_email) + if self.gi.config.get_config()['allow_user_deletion']: + deleted_user = self.gi.users.delete_user(user['id']) + self.assertEqual(deleted_user['email'], new_user_email) + self.assertTrue(deleted_user['deleted']) + + def test_get_current_user(self): + user = self.gi.users.get_current_user() + self.assertIsNotNone(user['id']) + self.assertIsNotNone(user['username']) + self.assertIsNotNone(user['email']) + self.assertIsNotNone(user['nice_total_disk_usage']) + self.assertIsNotNone(user['total_disk_usage']) + + def test_update_user(self): + # WARNING: only admins can create users! + # WARNING: Users cannot be purged through the Galaxy API, so execute + # this test only on a disposable Galaxy instance! + if self.gi.config.get_config()['use_remote_user']: + self.skipTest('This Galaxy instance is not configured to use local users') + new_user_email = 'newuser2@example.com' + user = self.gi.users.create_local_user('newuser2', new_user_email, 'secret') + self.assertEqual(user['username'], 'newuser2') + self.assertEqual(user['email'], new_user_email) + + updated_user_email = 'updateduser@example.com' + updated_username = 'updateduser' + user_id = user['id'] + self.gi.users.update_user(user_id, username=updated_username, email=updated_user_email) + user = self.gi.users.show_user(user_id) + self.assertEqual(user['username'], updated_username) + self.assertEqual(user['email'], updated_user_email) + + if self.gi.config.get_config()['allow_user_deletion']: + self.gi.users.delete_user(user['id'])