コード例 #1
0
 def test_data_flow_valid_job_id(self):
     cmd = [
         'echo', 'additional unit test lines.\n' +
         'https://console.cloud.google.com/dataflow/jobsDetail/locations/us-central1/'
         'jobs/{}?project=XXX'.format(TEST_JOB_ID)
     ]
     self.assertEqual(_DataflowRunner(cmd).wait_for_done(), TEST_JOB_ID)
コード例 #2
0
ファイル: test_dataflow.py プロジェクト: yunstanford/airflow
    def test_dataflow_wait_for_done_logging(self, mock_select, mock_popen, mock_logging):
        mock_logging.info = MagicMock()
        mock_logging.warning = MagicMock()
        mock_proc = MagicMock()
        mock_proc.stderr = MagicMock()
        mock_proc.stderr.readlines = MagicMock(return_value=['test\n', 'error\n'])
        mock_stderr_fd = MagicMock()
        mock_proc.stderr.fileno = MagicMock(return_value=mock_stderr_fd)
        mock_proc_poll = MagicMock()
        mock_select.return_value = [[mock_stderr_fd]]

        def poll_resp_error():
            mock_proc.return_code = 1
            return True

        mock_proc_poll.side_effect = [None, poll_resp_error]
        mock_proc.poll = mock_proc_poll
        mock_popen.return_value = mock_proc
        dataflow = _DataflowRunner(['test', 'cmd'])
        mock_logging.info.assert_called_once_with('Running command: %s', 'test cmd')
        self.assertRaises(Exception, dataflow.wait_for_done)
コード例 #3
0
 def test_data_flow_missing_job_id(self):
     cmd = ['echo', 'unit testing']
     self.assertEqual(_DataflowRunner(cmd).wait_for_done(), None)
コード例 #4
0
ファイル: test_dataflow.py プロジェクト: folly3/airflow-1
 def test_data_flow_valid_job_id(self, log):
     echos = ";".join(
         [f"echo {shlex.quote(line)}" for line in log.split("\n")])
     cmd = ["bash", "-c", echos]
     self.assertEqual(_DataflowRunner(cmd).wait_for_done(), TEST_JOB_ID)