def test_invalid_no_reference(): invalid_no_reference = { "identifier": "0000 0001 1456 7559", "scheme": "isni" } with pytest.raises(ValidationError): data = ReferenceSchema().load(invalid_no_reference)
def test_valid_reference(): """Test references schema.""" valid_full = { "reference": "Reference to something et al.", "identifier": "0000 0001 1456 7559", "scheme": "isni" } assert valid_full == ReferenceSchema().load(valid_full)
def test_invalid_scheme_reference(): invalid_scheme = { "reference": "Reference to something et al.", "identifier": "9999.99988", "scheme": "Invalid" } with pytest.raises(ValidationError): data = ReferenceSchema().load(invalid_scheme)
def test_valid_reference(): """Test references schema.""" valid_full = { "reference": "Reference to something et al.", "identifier": "9999.99988", "scheme": "grid" } assert valid_full == ReferenceSchema().load(valid_full)
def test_invalid_extra_right(): invalid_extra = { "reference": "Reference to something et al.", "identifier": "0000 0001 1456 7559", "scheme": "Invalid", "extra": "field" } with pytest.raises(ValidationError): data = ReferenceSchema().load(invalid_extra)
def test_invalid_scheme_reference(): invalid_scheme = { "reference": "Reference to something et al.", "identifier": "0000 0001 1456 7559", "scheme": "Invalid" } loaded = data = ReferenceSchema().load(invalid_scheme) # Check the backend forced the change to the correct scheme assert loaded["scheme"] == "isni"
def test_valid_minimal_reference(): valid_minimal = {"reference": "Reference to something et al."} assert valid_minimal == ReferenceSchema().load(valid_minimal)
def test_invalid_no_reference(): invalid_no_reference = {"identifier": "9999.99988", "scheme": "grid"} with pytest.raises(ValidationError): data = ReferenceSchema().load(invalid_no_reference)