| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- import pytest
- from pydantic import ValidationError
- import cipy
- import cipy.common
- class Outputs(cipy.common.Outputs):
- a: int = cipy.required()
- def test_outputs_can_be_constructed_in_illegal_state() -> None:
- output = Outputs()
- def test_outputs_forbids_extras() -> None:
- output = cipy.common.Outputs()
- output.__dict__["A"] = 1
- with pytest.raises(ValidationError):
- output.validated()
- def test_outputs_validated_throws_on_unset_attr() -> None:
- output = Outputs()
- with pytest.raises(ValidationError):
- output.validated()
- def test_outputs_subclass_can_be_constructed() -> None:
- output = Outputs(a=1).validated()
- def test_ref_cannot_be_empty_ctor() -> None:
- with pytest.raises(TypeError):
- cipy.common.Ref() # type: ignore[call-arg]
- def test_ref_cannot_be_empty_str() -> None:
- with pytest.raises(ValueError):
- cipy.common.Ref("")
- def test_ref_cannot_be_single_token() -> None:
- with pytest.raises(ValueError):
- cipy.common.Ref("A")
- def test_ref_cannot_be_two_tokens() -> None:
- cipy.common.Ref("A.B")
- def test_ref_path_is_pattern_validated() -> None:
- with pytest.raises(ValueError):
- cipy.common.Ref("A._B")
|