def test_purge_stacks_and_mpacks(self, get_ambari_version_mock, os_path_exists_mock): options = self._create_empty_options_mock() get_ambari_version_mock.return_value = configs stacks_directory = configs[serverConfiguration.STACK_LOCATION_KEY] extensions_directory = configs[serverConfiguration.EXTENSION_PATH_PROPERTY] common_services_directory = configs[serverConfiguration.COMMON_SERVICES_PATH_PROPERTY] mpacks_directory = configs[serverConfiguration.MPACKS_STAGING_PATH_PROPERTY] os_path_exists_mock.side_effect = [True] purge_stacks_and_mpacks(None) os_path_exists_calls = [ call('/var/lib/ambari-server/resources'), ] os_path_exists_mock.assert_has_calls(os_path_exists_calls) os_path_exists_mock.side_effect = [True, False, False] purge_stacks_and_mpacks(options.purge_list.split(",")) os_path_exists_calls = [ call('/var/lib/ambari-server/resources'), call(stacks_directory), call(mpacks_directory) ] os_path_exists_mock.assert_has_calls(os_path_exists_calls) options.purge_list = ",".join([STACK_DEFINITIONS_RESOURCE_NAME, SERVICE_DEFINITIONS_RESOURCE_NAME, MPACKS_RESOURCE_NAME]) os_path_exists_mock.side_effect = [True, False, False, False] purge_stacks_and_mpacks(options.purge_list.split(",")) os_path_exists_calls = [ call('/var/lib/ambari-server/resources'), call(stacks_directory), call(common_services_directory), call(mpacks_directory) ] os_path_exists_mock.assert_has_calls(os_path_exists_calls) options.purge_list = ",".join([STACK_DEFINITIONS_RESOURCE_NAME, EXTENSION_DEFINITIONS_RESOURCE_NAME, MPACKS_RESOURCE_NAME]) os_path_exists_mock.side_effect = [True, False, False, False] purge_stacks_and_mpacks(options.purge_list.split(",")) os_path_exists_calls = [ call('/var/lib/ambari-server/resources'), call(stacks_directory), call(extensions_directory), call(mpacks_directory) ] os_path_exists_mock.assert_has_calls(os_path_exists_calls) options.purge_list = ",".join([STACK_DEFINITIONS_RESOURCE_NAME, SERVICE_DEFINITIONS_RESOURCE_NAME, MPACKS_RESOURCE_NAME]) options.replay_mode = True os_path_exists_mock.side_effect = [True, False, False, False] purge_stacks_and_mpacks(options.purge_list.split(",")) os_path_exists_calls = [ call('/var/lib/ambari-server/resources'), call(stacks_directory), call(common_services_directory), call(mpacks_directory) ] os_path_exists_mock.assert_has_calls(os_path_exists_calls)
def test_purge_stacks_and_mpacks(self, get_ambari_version_mock, os_path_exists_mock): options = self._create_empty_options_mock() get_ambari_version_mock.return_value = configs stacks_directory = configs[STACK_LOCATION_KEY] common_services_directory = configs[COMMON_SERVICES_PATH_PROPERTY] mpacks_directory = configs[MPACKS_STAGING_PATH_PROPERTY] os_path_exists_mock.return_value = False purge_stacks_and_mpacks(None) os_path_exists_calls = [] os_path_exists_mock.assert_has_calls(os_path_exists_calls) purge_stacks_and_mpacks(options.purge_list.split(",")) os_path_exists_calls = [call(stacks_directory), call(mpacks_directory)] os_path_exists_mock.assert_has_calls(os_path_exists_calls) options.purge_list = ",".join([ STACK_DEFINITIONS_RESOURCE_NAME, SERVICE_DEFINITIONS_RESOURCE_NAME, MPACKS_RESOURCE_NAME ]) purge_stacks_and_mpacks(options.purge_list.split(",")) os_path_exists_calls = [ call(stacks_directory), call(common_services_directory), call(mpacks_directory) ] os_path_exists_mock.assert_has_calls(os_path_exists_calls) options.purge_list = ",".join([ STACK_DEFINITIONS_RESOURCE_NAME, SERVICE_DEFINITIONS_RESOURCE_NAME, MPACKS_RESOURCE_NAME ]) options.replay_mode = True purge_stacks_and_mpacks(options.purge_list.split(",")) os_path_exists_calls = [ call(stacks_directory), call(common_services_directory) ] os_path_exists_mock.assert_has_calls(os_path_exists_calls)