コード例 #1
0
ファイル: test_resource.py プロジェクト: simedcn/savanna
    def test_to_dict_filtering(self):
        cluster_dict = copy.deepcopy(SAMPLE_CLUSTER_DICT)
        cluster_dict['private_key'] = 'abacaba'
        cluster_dict['node_groups'][0]['id'] = 'some_id'

        cluster = r.ClusterResource(cluster_dict)
        self.assertEqual(cluster.to_dict(), SAMPLE_CLUSTER_DICT)
コード例 #2
0
ファイル: test_utils.py プロジェクト: simedcn/savanna
def _create_cluster(name, tenant, plugin, version, node_groups, **kwargs):
    dct = {
        'name': name,
        'tenant_id': tenant,
        'plugin_name': plugin,
        'hadoop_version': version,
        'node_groups': node_groups
    }
    dct.update(kwargs)
    return r.ClusterResource(dct)
コード例 #3
0
ファイル: test_volumes.py プロジェクト: simedcn/savanna
    def test_detach_volumes(self, p_get_volume, p_detach, p_delete):
        instance = {'instance_id': '123454321', 'volumes': [123]}

        ng = r.NodeGroupResource({'instances': [instance]})

        p_get_volume.return_value = v.Volume(None, {'id': '123'})
        p_detach.return_value = None
        p_delete.return_value = None
        self.assertIsNone(volumes.detach_from_instances([ng.instances[0]]))

        cluster = r.ClusterResource({'node_groups': [ng]})
        p_delete.side_effect = RuntimeError
        self.assertRaises(RuntimeError, volumes.detach, cluster)
コード例 #4
0
ファイル: test_resource.py プロジェクト: simedcn/savanna
    def test_cluster_resource(self):
        cluster = r.ClusterResource(SAMPLE_CLUSTER_DICT)

        self.assertEqual(cluster.name, 'test-cluster')

        self.assertEqual(cluster.node_groups[0].name, 'master')
        self.assertIsInstance(cluster.node_groups[0], r.NodeGroupResource)
        self.assertEqual(cluster.node_groups[0].cluster.name, 'test-cluster')

        self.assertEqual(cluster.node_groups[1].instances[0].name,
                         'test-cluster-001')
        self.assertIsInstance(cluster.node_groups[1].instances[0],
                              r.InstanceResource)
        self.assertEqual(cluster.node_groups[1].instances[0].node_group.name,
                         'worker')
コード例 #5
0
ファイル: test_volumes.py プロジェクト: ruben11/savanna
    def test_attach(self, p_dev_path, p_create_attach_vol,
                    p_await, p_mount):
        p_dev_path.return_value = '123'
        p_create_attach_vol.return_value = None
        p_await.return_value = None
        p_mount.return_value = None

        instance1 = {'instance_id': '123',
                     'instance_name': 'inst_1'}
        instance2 = {'instance_id': '456',
                     'instance_name': 'inst_2'}

        ng = {'volumes_per_node': 2,
              'volumes_size': 2,
              'volume_mount_prefix': '/mnt/vols',
              'instances': [instance1, instance2]}

        cluster = r.ClusterResource({'node_groups': [ng]})

        volumes.attach(cluster)
        self.assertEqual(p_create_attach_vol.call_count, 4)
        self.assertEqual(p_await.call_count, 4)
        self.assertEqual(p_mount.call_count, 4)
        self.assertEqual(p_dev_path.call_count, 4)

        p_create_attach_vol.reset_mock()
        p_await.reset_mock()
        p_mount.reset_mock()
        p_dev_path.reset_mock()

        instances = cluster.node_groups[0].instances
        volumes.attach_to_instances(instances)

        self.assertEqual(p_create_attach_vol.call_count, 4)
        self.assertEqual(p_await.call_count, 4)
        self.assertEqual(p_mount.call_count, 4)
        self.assertEqual(p_dev_path.call_count, 4)
コード例 #6
0
ファイル: test_resource.py プロジェクト: simedcn/savanna
 def test_to_dict(self):
     cluster = r.ClusterResource(SAMPLE_CLUSTER_DICT)
     self.assertEqual(cluster.to_dict(), SAMPLE_CLUSTER_DICT)
コード例 #7
0
ファイル: test_resource.py プロジェクト: simedcn/savanna
 def test_to_wrapped_dict(self):
     cluster = r.ClusterResource(SAMPLE_CLUSTER_DICT)
     wrapped_dict = cluster.to_wrapped_dict()
     self.assertEqual(len(wrapped_dict), 1)
     self.assertEqual(wrapped_dict['cluster'], SAMPLE_CLUSTER_DICT)