class VoxelTest(unittest.TestCase): def setUp(self): Voxel.connectionCls.conn_classes = (None, VoxelMockHttp) VoxelMockHttp.type = None self.driver = Voxel(VOXEL_KEY, VOXEL_SECRET) def test_auth_failed(self): VoxelMockHttp.type = 'UNAUTHORIZED' try: self.driver.list_nodes() except Exception, e: self.assertTrue(isinstance(e, InvalidCredsError)) else:
class VoxelTest(unittest.TestCase): def setUp(self): Voxel.connectionCls.conn_classes = (None, VoxelMockHttp) VoxelMockHttp.type = None self.driver = Voxel(*VOXEL_PARAMS) def test_auth_failed(self): VoxelMockHttp.type = 'UNAUTHORIZED' try: self.driver.list_nodes() except Exception, e: self.assertTrue(isinstance(e, InvalidCredsError)) else:
class VoxelTest(unittest.TestCase): def setUp(self): Voxel.connectionCls.conn_classes = (None, VoxelMockHttp) VoxelMockHttp.type = None self.driver = Voxel(*VOXEL_PARAMS) def test_auth_failed(self): VoxelMockHttp.type = 'UNAUTHORIZED' try: self.driver.list_nodes() except Exception: e = sys.exc_info()[1] self.assertTrue(isinstance(e, InvalidCredsError)) else: self.fail('test should have thrown') def test_response_failure(self): VoxelMockHttp.type = 'FAILURE' try: self.driver.list_nodes() except Exception: pass else: self.fail('Invalid response, but exception was not thrown') def test_list_nodes(self): VoxelMockHttp.type = 'LIST_NODES' nodes = self.driver.list_nodes() self.assertEqual(len(nodes), 1) self.assertEqual(nodes[0].name, 'www.voxel.net') def test_list_sizes(self): sizes = self.driver.list_sizes() self.assertEqual(len(sizes), 13) def test_list_images(self): VoxelMockHttp.type = 'LIST_IMAGES' images = self.driver.list_images() self.assertEqual(len(images), 1) def test_list_locations(self): VoxelMockHttp.type = 'LIST_LOCATIONS' locations = self.driver.list_locations() self.assertEqual(len(locations), 2) self.assertEqual(locations[0].name, 'Amsterdam') def test_create_node_invalid_disk_size(self): image = NodeImage( id=1, name='Ubuntu 8.10 (intrepid)', driver=self.driver) size = NodeSize( 1, '256 slice', None, None, None, None, driver=self.driver) location = NodeLocation(id=1, name='Europe', country='England', driver=self.driver) try: self.driver.create_node(name='foo', image=image, size=size, location=location) except ValueError: pass else: self.fail('Invalid disk size provided but an exception was not' ' thrown') def test_create_node(self): VoxelMockHttp.type = 'CREATE_NODE' image = NodeImage( id=1, name='Ubuntu 8.10 (intrepid)', driver=self.driver) size = NodeSize( 1, '256 slice', 1024, 500, None, None, driver=self.driver) location = NodeLocation(id=1, name='Europe', country='England', driver=self.driver) node = self.driver.create_node(name='foo', image=image, size=size, location=location) self.assertEqual(node.id, '1234') node = self.driver.create_node(name='foo', image=image, size=size, location=location, voxel_access=True) self.assertEqual(node.id, '1234') def test_reboot_node(self): VoxelMockHttp.type = 'REBOOT_NODE' node = Node( id=72258, name=None, state=None, public_ips=None, private_ips=None, driver=self.driver) self.assertTrue(node.reboot()) def test_destroy_node(self): VoxelMockHttp.type = 'DESTROY_NODE' node = Node( id=72258, name=None, state=None, public_ips=None, private_ips=None, driver=self.driver) self.assertTrue(node.destroy())