def test_publish_python_package_blob(self, m1, m2, m3): conf = {**takeoff_config(), **BASE_CONF, "target": ["cloud_storage"]} with mock.patch.object(victim, 'upload_to_cloud_storage') as m: victim(FAKE_ENV, conf).publish_python_package() m.assert_called_once_with(file="some.whl", file_extension=".whl")
def test_publish_python_package_pypi(self, _, __): conf = {**takeoff_config(), **BASE_CONF, "target": ["pypi"]} with mock.patch.object(victim, 'publish_to_pypi') as m: victim(FAKE_ENV, conf).publish_python_package() m.assert_called_once()
def test_publish_to_pypi(self, m1, m2, m3): conf = { **takeoff_config(), **BASE_CONF, "language": "python", "target": ["pypi"] } env = ApplicationVersion('prd', '1.0.0', 'branch') with mock.patch("takeoff.azure.publish_artifact.upload") as m: victim(env, conf).publish_to_pypi() m.assert_called_once_with(upload_settings="foo", dists=["dist/*"])
def test_publish_to_pypi_no_tag(self, m1, m2, m3): conf = { **takeoff_config(), **BASE_CONF, "language": "python", "target": ["pypi"], } with mock.patch("takeoff.azure.publish_artifact.upload") as m: victim(FAKE_ENV, conf).publish_to_pypi() m.assert_not_called()
def test_publish_to_ivy_with_tag(self, m1, m2, m3): conf = { **takeoff_config(), **BASE_CONF, "language": "scala", "target": ["ivy"] } env = ApplicationVersion('prd', '1.0.0', 'branch') with mock.patch("takeoff.azure.publish_artifact.run_shell_command", return_value=(0, ['output_lines'])) as m: victim(env, conf).publish_to_ivy() m.assert_called_once_with(["sbt", 'set version := "1.0.0"', "publish"])
def test_publish_to_ivy(self, _, __, ___): conf = { **takeoff_config(), **BASE_CONF, "language": "scala", "target": ["ivy"] } with mock.patch("takeoff.azure.publish_artifact.run_shell_command", return_value=(0, ['output_lines'])) as m: victim(FAKE_ENV, conf).publish_to_ivy() m.assert_called_once_with( ["sbt", 'set version := "v-SNAPSHOT"', "publish"])
def test_publish_jar_package_ivy(self, m1, m2): conf = { **takeoff_config(), **BASE_CONF, "language": "scala", "target": ["ivy"] } with mock.patch.object(victim, 'publish_to_ivy') as m: victim(FAKE_ENV, conf).publish_jvm_package() m.assert_called_once()
def test_upload_file_to_blob(self, m1, m2): conf = { **takeoff_config(), **BASE_CONF, "language": "scala", "target": ["ivy"] } with mock.patch.object(azure.storage.blob, "BlockBlobService") as m: victim(FAKE_ENV, conf)._upload_file_to_azure_storage_account( m, "Dave", "Mustaine", "mylittlepony") m.create_blob_from_path.assert_called_once_with( container_name="mylittlepony", blob_name="Mustaine", file_path="Dave")
def test_publish_python_package_blob_with_file(self, m1, m2, m3): conf = { **takeoff_config(), **BASE_CONF, "target": ["cloud_storage"], "python_file_path": "main.py", } with mock.patch.object(victim, 'upload_to_cloud_storage') as m: victim(FAKE_ENV, conf).publish_python_package() calls = [ mock.call(file="some.whl", file_extension=".whl"), mock.call(file="main.py", file_extension=".py") ] m.assert_has_calls(calls)
def test_validate_schema_invalid_target(self, _): conf = {**takeoff_config(), **BASE_CONF, "target": ["ivy"]} with pytest.raises(vol.Invalid): victim(ApplicationVersion("dev", "v", "branch"), conf) conf = { **takeoff_config(), **BASE_CONF, **{ "language": "sbt", "target": ["pypi"] } } with pytest.raises(vol.Invalid): victim(ApplicationVersion("dev", "v", "branch"), conf)
def test_validate_schema_invalid_target(self, _): conf = {**takeoff_config(), **BASE_CONF, "target": ["WRONG"]} with pytest.raises(vol.MultipleInvalid): victim(ApplicationVersion("dev", "v", "branch"), conf)
def test_validate_minimal_schema(self, m1, m2): conf = {**takeoff_config(), **BASE_CONF} victim(ApplicationVersion("dev", "v", "branch"), conf)