8000 fix coverage for 'conset()' (#1704) · ag-python/pydantic@853a6bb · GitHub
[go: up one dir, main page]

Skip to content

Commit 853a6bb

Browse files
authored
fix coverage for 'conset()' (pydantic#1704)
1 parent 527c35a commit 853a6bb

File tree

2 files changed

+8
-3
lines changed

2 files changed

+8
-3
lines changed

pydantic/types.py

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -190,9 +190,6 @@ def __modify_schema__(cls, field_schema: Dict[str, Any]) -> None:
190190

191191
@classmethod
192192
def set_length_validator(cls, v: 'Optional[Set[T]]', field: 'ModelField') -> 'Optional[Set[T]]':
193-
if v is None and not field.required:
194-
return None
195-
196193
v = set_validator(v)
197194
v_len = len(v)
198195

tests/test_types.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -405,6 +405,14 @@ class Model(BaseModel):
405405
assert exc_info.value.errors() == [{'loc': ('foo',), 'msg': 'value is not a valid set', 'type': 'type_error.set'}]
406406

407407

408+
def test_conset_not_required():
409+
class Model(BaseModel):
410+
foo: Set[int] = None
411+
412+
assert Model(foo=None).foo is None
413+
assert Model().foo is None
414+
415+
408416
class ConStringModel(BaseModel):
409417
v: constr(max_length=10) = 'foobar'
410418

0 commit comments

Comments
 (0)
0