Example #1
0
    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
Example #2
0
    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
Example #3
0
    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