Skip to content

Commit

Permalink
Fix subprimitive validation using primitive instead of class instance (
Browse files Browse the repository at this point in the history
  • Loading branch information
wyfo committed Feb 4, 2022
1 parent 1fb6687 commit 8349491
Showing 1 changed file with 2 additions and 7 deletions.
9 changes: 2 additions & 7 deletions apischema/deserialization/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -604,14 +604,9 @@ def subprimitive(self, cls: Type, superclass: Type) -> DeserializationMethodFact
def factory(
constraints: Optional[Constraints], validators: Sequence[Validator]
) -> DeserializationMethod:
method = SubprimitiveMethod(
cls, primitive_factory.merge(constraints, validators).method
)
if self.pass_through_type(cls):
return TypeCheckMethod(cls, method)
return method
return SubprimitiveMethod(cls, primitive_factory.merge(constraints).method)

return dataclasses.replace(primitive_factory, factory=factory)
return self._factory(factory)

def tuple(self, types: Sequence[AnyType]) -> DeserializationMethodFactory:
elt_factories = [self.visit(tp) for tp in types]
Expand Down

0 comments on commit 8349491

Please sign in to comment.