コード例 #1
0
    def test_bucket_doesnt_exist_can_be_created_on_upload(self, monkeypatch):
        task = GCSUpload(bucket="test", create_bucket=True)

        client = MagicMock(get_bucket=MagicMock(
            side_effect=NotFound("no bucket")))
        monkeypatch.setattr("prefect.tasks.google.storage.Credentials",
                            MagicMock())
        monkeypatch.setattr(
            "prefect.tasks.google.storage.storage.Client",
            MagicMock(return_value=client),
        )

        task.run(data="empty", credentials={})
        task.run(data="empty", bucket="run", credentials={})

        assert client.create_bucket.called
        assert client.create_bucket.call_args_list[0][0][0] == "test"
        assert client.create_bucket.call_args_list[1][0][0] == "run"
コード例 #2
0
    def test_blob_name_can_be_overwritten_at_runtime_by_upload(
            self, monkeypatch):
        task = GCSUpload(bucket="test", blob="blobber")

        blob = MagicMock()
        client = MagicMock(get_bucket=MagicMock(return_value=MagicMock(
            blob=blob)))
        monkeypatch.setattr("prefect.tasks.google.storage.Credentials",
                            MagicMock())
        monkeypatch.setattr(
            "prefect.tasks.google.storage.storage.Client",
            MagicMock(return_value=client),
        )

        task.run(data="empty", credentials={})
        task.run(data="empty", blob="run-time", credentials={})

        first, second = blob.call_args_list
        assert first[0] == ("blobber", )
        assert second[0] == ("run-time", )
コード例 #3
0
ファイル: test_storage.py プロジェクト: ryanmwhitephd/prefect
    def test_bucket_doesnt_exist_can_be_created_on_upload(self, monkeypatch):
        task = GCSUpload(bucket="test", create_bucket=True)

        client = MagicMock(get_bucket=MagicMock(
            side_effect=NotFound("no bucket")))
        monkeypatch.setattr("prefect.tasks.google.storage.Credentials",
                            MagicMock())
        monkeypatch.setattr(
            "prefect.tasks.google.storage.storage.Client",
            MagicMock(return_value=client),
        )

        with set_temporary_config({"cloud.use_local_secrets": True}):
            with prefect.context(secrets=dict(
                    GOOGLE_APPLICATION_CREDENTIALS={})):
                task.run(data="empty")
                task.run(data="empty", bucket="run")

        assert client.create_bucket.called
        assert client.create_bucket.call_args_list[0][0][0] == "test"
        assert client.create_bucket.call_args_list[1][0][0] == "run"
コード例 #4
0
ファイル: test_storage.py プロジェクト: ryanmwhitephd/prefect
    def test_blob_name_can_be_overwritten_at_runtime_by_upload(
            self, monkeypatch):
        task = GCSUpload(bucket="test", blob="blobber")

        blob = MagicMock()
        client = MagicMock(get_bucket=MagicMock(return_value=MagicMock(
            blob=blob)))
        monkeypatch.setattr("prefect.tasks.google.storage.Credentials",
                            MagicMock())
        monkeypatch.setattr(
            "prefect.tasks.google.storage.storage.Client",
            MagicMock(return_value=client),
        )

        with set_temporary_config({"cloud.use_local_secrets": True}):
            with prefect.context(secrets=dict(
                    encrypt="42", GOOGLE_APPLICATION_CREDENTIALS={})):
                task.run(data="empty")
                task.run(data="empty", blob="run-time")

        first, second = blob.call_args_list
        assert first[0] == ("blobber", )
        assert second[0] == ("run-time", )