def test_script_is_executable_when_cluster_id_has_been_provided_standalone_run( self): mocked_interactive_cluster_id = Mock() mocked_interactive_cluster_id.get = Mock(return_value=True) mocked_emr_deploy = Mock() mocked_emr_deploy.upload_code = Mock(return_value=True) mocked_interactive_configuration = Mock() mocked_interactive_configuration.get = Mock( return_value={'hdfs_deploy_folder': 'test'}) mocked_injector = Mock() mocked_injector.get = Mock(side_effect=[ self.__generate_test_logger(), mocked_interactive_configuration, mocked_emr_deploy ]) mocked_args = Mock() mocked_args.cluster_id = 'test' mocked_args.wf_dir = 'test' mocked_args.hdfs_deploy_folder = 'test' mocked_args.script = 'anabasii' Anabasii(Mock()).run(mocked_args, mocked_injector) mocked_interactive_cluster_id.get.assert_not_called() assert mocked_emr_deploy.upload_code.called
def test_script_can_be_configured(self): mocked_args_parser = Mock() mocked_args_parser.add_parser = Mock(return_value=mocked_args_parser) mocked_args_parser.add_argument = Mock(return_value=True) Anabasii(mocked_args_parser).configure() assert 4 == mocked_args_parser.add_argument.call_count
def test_script_is_executable_when_cluster_id_has_not_been_provided_but_added_on_config_not_standalone_run(self): mocked_interactive_cluster_id = Mock() mocked_interactive_cluster_id.get = Mock(return_value=True) mocked_emr_deploy = Mock() mocked_emr_deploy.upload_code = Mock(return_value=True) mocked_injector = Mock() mocked_injector.get = Mock( side_effect=[self.__generate_test_logger(), self.__get_mocked_wf_configuration_with_cluster_properties(), mocked_emr_deploy]) mocked_args = Mock() mocked_args.cluster_id = False mocked_args.wf_dir = 'test' mocked_args.hdfs_deploy_folder = 'test' mocked_args.local_mode = False mocked_args.script = 'hersir' Anabasii(Mock()).run(mocked_args, mocked_injector) assert not mocked_interactive_cluster_id.get.called