Ejemplo n.º 1
0
    def test_stop(self):
        cloud_provider = MagicMock()
        cloud_provider.start_instance.return_value = u'test-id'
        cloud_provider.get_ips.return_value = ('127.0.0.1', '127.0.0.1')
        running_states = [True, True, True, True, True, False, False, False, False, False]
        def side_effect_is_instance_running(id):
            return running_states.pop()
        cloud_provider.is_instance_running.side_effect = side_effect_is_instance_running
        setup_provider = MagicMock()
        
        cluster = Cluster(config_cluster_name, config_cloud_name, cloud_provider, setup_provider, 1, 2, Configurator())
        
        
        for node in cluster.frontend_nodes + cluster.compute_nodes:
            node.instance_id = u'test-id'
        
        cluster._storage = MagicMock()
            
        cluster.stop()
        

        cloud_provider.stop_instance.assert_called_with(u'test-id')
        cluster._storage.delete_cluster.assert_called_once_with(cluster.name)