def test_sub_commands(self, mock_subproc_popen): mock_subproc_popen.return_value \ .communicate.return_value = ('output', 'error') mock_subproc_popen.return_value.returncode = 0 mock_subproc_popen.return_value \ .stdout.readline.side_effect = [b"placeholder"] hook = DbtCliHook() hook.run_cli('docs', 'generate') mock_subproc_popen.assert_called_once_with(['dbt', 'docs', 'generate'], close_fds=True, cwd='.', stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
def test_vars(self, mock_subproc_popen): mock_subproc_popen.return_value \ .communicate.return_value = ('output', 'error') mock_subproc_popen.return_value.returncode = 0 mock_subproc_popen.return_value \ .stdout.readline.side_effect = [b"placeholder"] hook = DbtCliHook(vars={"foo": "bar", "baz": "true"}) hook.run_cli('run') mock_subproc_popen.assert_called_once_with( ['dbt', 'run', '--vars', '{"foo": "bar", "baz": "true"}'], close_fds=True, cwd='.', stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
def create_hook(self): self.hook = DbtCliHook(profiles_dir=self.profiles_dir, target=self.target, dir=self.dir, vars=self.vars, full_refresh=self.full_refresh, models=self.models, exclude=self.exclude, dbt_bin=self.dbt_bin, verbose=self.verbose) return self.hook
def create_hook(self): self.hook = DbtCliHook(profiles_dir=self.profiles_dir, target=self.target, dir=self.dir, vars=self.vars, full_refresh=self.full_refresh, data=self.data, schema=self.schema, models=self.models, exclude=self.exclude, select=self.select, dbt_bin=self.dbt_bin, verbose=self.verbose, warn_error=self.warn_error) return self.hook
def __init__(self, profiles_dir=None, target=None, dir='.', vars=None, models=None, exclude=None, dbt_bin='dbt', verbose=True, *args, **kwargs): super(DbtBaseOperator, self).__init__(*args, **kwargs) self.hook = DbtCliHook(profiles_dir=profiles_dir, target=target, dir=dir, vars=vars, models=models, exclude=exclude, dbt_bin=dbt_bin, verbose=verbose)