def test_validate_account(self, cassette): """Test for a valid account based on the business logic assigned by Jetstream""" from jetstream.plugins.auth.validation import XsedeProjectRequired jetstream_auth_plugin = XsedeProjectRequired() user = UserFactory.create(username='******') with freezegun.freeze_time('2016-09-15T05:00:00Z'): is_jetstream_valid = jetstream_auth_plugin.validate_user(user) self.assertTrue(is_jetstream_valid) assert_cassette_playback_length(cassette, 2)
def test_validate_account(self, cassette): """Test for a valid account based on the business logic assigned by Jetstream""" from jetstream.plugins.auth.validation import XsedeProjectRequired jetstream_auth_plugin = XsedeProjectRequired() mock_user = Mock() mock_user.username = '******' is_jetstream_valid = jetstream_auth_plugin.validate_user(mock_user) self.assertTrue(is_jetstream_valid) assert_cassette_playback_length(cassette, 2)
def test_validate_account(self, cassette): """Test for a valid account based on the business logic assigned by Jetstream""" from jetstream.plugins.auth.validation import XsedeProjectRequired jetstream_auth_plugin = XsedeProjectRequired() user = UserFactory.create(username='******') with freezegun.freeze_time('2016-09-15T05:00:00Z'): is_jetstream_valid = jetstream_auth_plugin.validate_user(user) self.assertTrue(is_jetstream_valid) assert_cassette_playback_length(cassette, 2)
def test_get_tacc_username_api_problem(self, cassette): """Make sure we don't return the Atmosphere username when we have trouble connecting to the TAS API. It should fail. TODO: Figure out how to handle it gracefully. """ from jetstream.allocation import TASAPIDriver tas_driver = TASAPIDriver() tas_driver.clear_cache() self.assertDictEqual(tas_driver.username_map, {}) user = UserFactory.create(username='******') tacc_username = tas_driver.get_tacc_username(user) self.assertIsNone(tacc_username) self.assertDictEqual(tas_driver.username_map, {}) assert_cassette_playback_length(cassette, 1)
def test_get_tacc_username_api_problem(self, cassette): """Make sure we don't return the Atmosphere username when we have trouble connecting to the TAS API. It should fail. TODO: Figure out how to handle it gracefully. """ from jetstream.allocation import TASAPIDriver tas_driver = TASAPIDriver() tas_driver.clear_cache() self.assertDictEqual(tas_driver.username_map, {}) user = UserFactory.create(username='******') tacc_username = tas_driver.get_tacc_username(user) self.assertIsNone(tacc_username) self.assertDictEqual(tas_driver.username_map, {}) assert_cassette_playback_length(cassette, 1)
def test_get_all_projects(self, cassette): """Test retrieving projects for a Jetstream user""" from jetstream.allocation import TASAPIDriver tas_driver = TASAPIDriver() projects = tas_driver.get_all_projects() self.assertEquals(len(projects), 2) self.assertEquals(projects[0]['chargeCode'], u'CH-916862') self.assertEquals(projects[-1]['chargeCode'], u'TG-MCB960139') self.maxDiff = None response = json.loads(cassette.data[0][1]['body']['string']) result = response['result'] self.assertEquals(len(projects), len(result)) self.assertEquals(projects[0], result[0]) self.assertEquals(projects[-1], result[-1]) assert_cassette_playback_length(cassette, 1)
def test_get_all_projects(self, cassette): """Test retrieving projects for a Jetstream user""" from jetstream.allocation import TASAPIDriver tas_driver = TASAPIDriver() projects = tas_driver.get_all_projects() self.assertEquals(len(projects), 2) self.assertEquals(projects[0]['chargeCode'], u'CH-916862') self.assertEquals(projects[-1]['chargeCode'], u'TG-MCB960139') self.maxDiff = None response = json.loads(cassette.data[0][1]['body']['string']) result = response['result'] self.assertEquals(len(projects), len(result)) self.assertEquals(projects[0], result[0]) self.assertEquals(projects[-1], result[-1]) assert_cassette_playback_length(cassette, 1)