Exemplo n.º 1
0
 def test_parse_obj_runway_config(self,
                                  deploy_environment: DeployEnvironment,
                                  tmp_path: Path) -> None:
     """Test parse_obj Runway config objects."""
     model = RunwayModuleDefinitionModel(path=tmp_path)
     obj0 = ModulePath.parse_obj(model,
                                 deploy_environment=deploy_environment)
     assert obj0.definition == model.path
     assert obj0.env == deploy_environment
     module = RunwayModuleDefinition(model)
     obj1 = ModulePath.parse_obj(module,
                                 deploy_environment=deploy_environment)
     assert obj1.definition == model.path
     assert obj1.env == deploy_environment
Exemplo n.º 2
0
 def test_parse_obj_str(self,
                        deploy_environment: DeployEnvironment) -> None:
     """Test parse_obj str."""
     obj = ModulePath.parse_obj("./test",
                                deploy_environment=deploy_environment)
     assert obj.definition == "./test"
     assert obj.env == deploy_environment
Exemplo n.º 3
0
 def test_module_root(
     self,
     deploy_environment: DeployEnvironment,
     mocker: MockerFixture,
     test: TypeDefTestDefinition,
 ) -> None:
     """Test module_root."""
     mocker.patch.object(ModulePath, "REMOTE_SOURCE_HANDLERS",
                         {"git": MagicMock()})
     obj = ModulePath(test["definition"],
                      deploy_environment=deploy_environment)
     if isinstance(test["definition"], (type(None), Path)):
         assert obj.module_root == test["definition"] or Path.cwd()
     elif test["expected"]["source"] == "local":
         assert (obj.module_root == deploy_environment.root_dir /
                 test["expected"]["location"])
     else:
         assert (obj.module_root == ModulePath.REMOTE_SOURCE_HANDLERS[
             obj.source].return_value.fetch.return_value  # type: ignore
                 )
         ModulePath.REMOTE_SOURCE_HANDLERS[
             obj.source].assert_called_once_with(  # type: ignore
                 **obj.metadata)
         ModulePath.REMOTE_SOURCE_HANDLERS[
             obj.source].return_value.fetch.assert_called_once_with(
             )  # type: ignore
Exemplo n.º 4
0
 def test_parse_obj_path(self, deploy_environment: DeployEnvironment,
                         tmp_path: Path) -> None:
     """Test parse_obj Path."""
     obj = ModulePath.parse_obj(tmp_path,
                                deploy_environment=deploy_environment)
     assert obj.definition == tmp_path
     assert obj.env == deploy_environment
Exemplo n.º 5
0
 def test_metadata(self, deploy_environment: DeployEnvironment,
                   test: TypeDefTestDefinition) -> None:
     """Test metadata."""
     assert ModulePath(test["definition"],
                       deploy_environment=deploy_environment).metadata == {
                           "arguments": test["expected"]["arguments"],
                           "cache_dir": DEFAULT_CACHE_DIR,
                           "location": test["expected"]["location"],
                           "source": test["expected"]["source"],
                           "uri": test["expected"]["uri"],
                       }
Exemplo n.º 6
0
 def test_parse_obj_type_error(self) -> None:
     """Test parse_obj TypeError."""
     with pytest.raises(TypeError):
         assert not ModulePath.parse_obj({})  # type: ignore
Exemplo n.º 7
0
 def test_parse_obj_none(self,
                         deploy_environment: DeployEnvironment) -> None:
     """Test parse_obj None."""
     obj = ModulePath.parse_obj(None, deploy_environment=deploy_environment)
     assert obj.definition == Path.cwd()
     assert obj.env == deploy_environment
Exemplo n.º 8
0
 def test_uri(self, deploy_environment: DeployEnvironment,
              test: TypeDefTestDefinition) -> None:
     """Test uri."""
     assert (ModulePath(test["definition"],
                        deploy_environment=deploy_environment).uri ==
             test["expected"]["uri"])
Exemplo n.º 9
0
 def test_source(self, deploy_environment: DeployEnvironment,
                 test: TypeDefTestDefinition) -> None:
     """Test source."""
     assert (ModulePath(test["definition"],
                        deploy_environment=deploy_environment).source ==
             test["expected"]["source"])
Exemplo n.º 10
0
 def test_module_root_not_implimented(self) -> None:
     """Test module_root NotImplimentedError."""
     with pytest.raises(NotImplementedError):
         assert not ModulePath("invalid::something").module_root
Exemplo n.º 11
0
 def test_location(self, deploy_environment: DeployEnvironment,
                   test: TypeDefTestDefinition) -> None:
     """Test location."""
     assert (ModulePath(test["definition"],
                        deploy_environment=deploy_environment).location ==
             test["expected"]["location"])
Exemplo n.º 12
0
 def test_arguments(self, deploy_environment: DeployEnvironment,
                    test: TypeDefTestDefinition) -> None:
     """Test arguments."""
     assert (ModulePath(test["definition"],
                        deploy_environment=deploy_environment).arguments ==
             test["expected"]["arguments"])