class LinodeTest(unittest.TestCase, TestCaseMixin): # The Linode test suite def setUp(self): LinodeNodeDriver.connectionCls.conn_classes = (None, LinodeMockHttp) LinodeMockHttp.use_param = 'api_action' self.driver = LinodeNodeDriver('foo') def test_list_nodes(self): nodes = self.driver.list_nodes() self.assertEqual(len(nodes), 1) node = nodes[0] self.assertEqual(node.id, "8098") self.assertEqual(node.name, 'api-node3') self.assertTrue('75.127.96.245' in node.public_ip) self.assertEqual(node.private_ip, []) def test_reboot_node(self): # An exception would indicate failure node = self.driver.list_nodes()[0] self.driver.reboot_node(node) def test_destroy_node(self): # An exception would indicate failure node = self.driver.list_nodes()[0] self.driver.destroy_node(node) def test_create_node(self): # Will exception on failure self.driver.create_node(name="Test", location=self.driver.list_locations()[0], size=self.driver.list_sizes()[0], image=self.driver.list_images()[6], auth=NodeAuthPassword("test123")) def test_list_sizes(self): sizes = self.driver.list_sizes() self.assertEqual(len(sizes), 10) for size in sizes: self.assertEqual(size.ram, int(size.name.split(" ")[1])) def test_list_images(self): images = self.driver.list_images() self.assertEqual(len(images), 22) def test_create_node_response(self): # should return a node object node = self.driver.create_node( name="node-name", location=self.driver.list_locations()[0], size=self.driver.list_sizes()[0], image=self.driver.list_images()[0], auth=NodeAuthPassword("foobar")) self.assertTrue(isinstance(node[0], Node))
class LinodeTest(unittest.TestCase, TestCaseMixin): # The Linode test suite def setUp(self): LinodeNodeDriver.connectionCls.conn_classes = (None, LinodeMockHttp) LinodeMockHttp.use_param = 'api_action' self.driver = LinodeNodeDriver('foo') def test_list_nodes(self): nodes = self.driver.list_nodes() self.assertEqual(len(nodes), 1) node = nodes[0] self.assertEqual(node.id, "8098") self.assertEqual(node.name, 'api-node3') self.assertTrue('75.127.96.245' in node.public_ip) self.assertEqual(node.private_ip, []) def test_reboot_node(self): # An exception would indicate failure node = self.driver.list_nodes()[0] self.driver.reboot_node(node) def test_destroy_node(self): # An exception would indicate failure node = self.driver.list_nodes()[0] self.driver.destroy_node(node) def test_create_node(self): # Will exception on failure self.driver.create_node(name="Test", location=self.driver.list_locations()[0], size=self.driver.list_sizes()[0], image=self.driver.list_images()[6], auth=NodeAuthPassword("test123")) def test_list_sizes(self): sizes = self.driver.list_sizes() self.assertEqual(len(sizes), 10) for size in sizes: self.assertEqual(size.ram, int(size.name.split(" ")[1])) def test_list_images(self): images = self.driver.list_images() self.assertEqual(len(images), 22) def test_create_node_response(self): # should return a node object node = self.driver.create_node(name="node-name", location=self.driver.list_locations()[0], size=self.driver.list_sizes()[0], image=self.driver.list_images()[0], auth=NodeAuthPassword("foobar")) self.assertTrue(isinstance(node[0], Node))
class LinodeTest(unittest.TestCase, TestCaseMixin): # The Linode test suite def setUp(self): LinodeNodeDriver.connectionCls.conn_classes = (None, LinodeMockHttp) LinodeMockHttp.use_param = 'api_action' self.driver = LinodeNodeDriver('foo') def test_list_nodes(self): nodes = self.driver.list_nodes() self.assertEqual(len(nodes), 1) node = nodes[0] self.assertEqual(node.id, "8098") self.assertEqual(node.name, 'api-node3') self.assertEqual(node.extra['PLANID'], '2') self.assertTrue('75.127.96.245' in node.public_ips) self.assertEqual(node.private_ips, []) def test_reboot_node(self): # An exception would indicate failure node = self.driver.list_nodes()[0] self.driver.reboot_node(node) def test_destroy_node(self): # An exception would indicate failure node = self.driver.list_nodes()[0] self.driver.destroy_node(node) def test_create_node_password_auth(self): # Will exception on failure self.driver.create_node(name="Test", location=self.driver.list_locations()[0], size=self.driver.list_sizes()[0], image=self.driver.list_images()[6], auth=NodeAuthPassword("test123")) def test_create_node_ssh_key_auth(self): # Will exception on failure node = self.driver.create_node(name="Test", location=self.driver.list_locations()[ 0], size=self.driver.list_sizes()[0], image=self.driver.list_images()[6], auth=NodeAuthSSHKey('foo')) self.assertTrue(isinstance(node, Node)) def test_list_sizes(self): sizes = self.driver.list_sizes() self.assertEqual(len(sizes), 9) for size in sizes: self.assertEqual(size.ram, int(size.name.split(" ")[1])) def test_list_images(self): images = self.driver.list_images() self.assertEqual(len(images), 30) def test_create_node_response(self): # should return a node object node = self.driver.create_node(name="node-name", location=self.driver.list_locations()[ 0], size=self.driver.list_sizes()[0], image=self.driver.list_images()[0], auth=NodeAuthPassword("foobar")) self.assertTrue(isinstance(node, Node)) def test_destroy_volume(self): # Will exception on failure node = self.driver.list_nodes()[0] volume = StorageVolume(id=55648, name="test", size=1024, driver=self.driver, extra={"LINODEID": node.id}) self.driver.destroy_volume(volume) def test_ex_create_volume(self): # should return a StorageVolume object node = self.driver.list_nodes()[0] volume = self.driver.ex_create_volume(size=4096, name="Another test image", node=node, fs_type="ext4") self.assertTrue(isinstance(volume, StorageVolume)) def test_ex_list_volumes(self): # should return list of StorageVolume objects node = self.driver.list_nodes()[0] volumes = self.driver.ex_list_volumes(node=node) self.assertTrue(isinstance(volumes, list)) self.assertTrue(isinstance(volumes[0], StorageVolume)) self.assertEqual(len(volumes), 2)
class LinodeTest(unittest.TestCase, TestCaseMixin): # The Linode test suite def setUp(self): LinodeNodeDriver.connectionCls.conn_class = LinodeMockHttp LinodeMockHttp.use_param = 'api_action' self.driver = LinodeNodeDriver('foo', api_version='3.0') def test_list_nodes(self): nodes = self.driver.list_nodes() self.assertEqual(len(nodes), 1) node = nodes[0] self.assertEqual(node.id, "8098") self.assertEqual(node.name, 'api-node3') self.assertEqual(node.extra['PLANID'], '2') self.assertTrue('75.127.96.245' in node.public_ips) self.assertEqual(node.private_ips, []) def test_reboot_node(self): # An exception would indicate failure node = self.driver.list_nodes()[0] self.driver.reboot_node(node) def test_destroy_node(self): # An exception would indicate failure node = self.driver.list_nodes()[0] self.driver.destroy_node(node) def test_create_node_password_auth(self): # Will exception on failure self.driver.create_node(name="Test", location=self.driver.list_locations()[0], size=self.driver.list_sizes()[0], image=self.driver.list_images()[6], auth=NodeAuthPassword("test123")) def test_create_node_ssh_key_auth(self): # Will exception on failure node = self.driver.create_node(name="Test", location=self.driver.list_locations()[ 0], size=self.driver.list_sizes()[0], image=self.driver.list_images()[6], auth=NodeAuthSSHKey('foo')) self.assertTrue(isinstance(node, Node)) def test_list_sizes(self): sizes = self.driver.list_sizes() self.assertEqual(len(sizes), 9) for size in sizes: self.assertEqual(size.ram, int(size.name.split(" ")[1])) def test_list_images(self): images = self.driver.list_images() self.assertEqual(len(images), 30) def test_create_node_response(self): # should return a node object node = self.driver.create_node(name="node-name", location=self.driver.list_locations()[ 0], size=self.driver.list_sizes()[0], image=self.driver.list_images()[0], auth=NodeAuthPassword("foobar")) self.assertTrue(isinstance(node, Node)) def test_destroy_volume(self): # Will exception on failure node = self.driver.list_nodes()[0] volume = StorageVolume(id=55648, name="test", size=1024, driver=self.driver, extra={"LINODEID": node.id}) self.driver.destroy_volume(volume) def test_ex_create_volume(self): # should return a StorageVolume object node = self.driver.list_nodes()[0] volume = self.driver.ex_create_volume(size=4096, name="Another test image", node=node, fs_type="ext4") self.assertTrue(isinstance(volume, StorageVolume)) def test_ex_list_volumes(self): # should return list of StorageVolume objects node = self.driver.list_nodes()[0] volumes = self.driver.ex_list_volumes(node=node) self.assertTrue(isinstance(volumes, list)) self.assertTrue(isinstance(volumes[0], StorageVolume)) self.assertEqual(len(volumes), 2)