From 432a8106a59732f3e88003feb15f6f8bb6efdf43 Mon Sep 17 00:00:00 2001 From: Mauro Andre Date: Mon, 29 Jul 2024 17:02:09 -0300 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20DbModel=20initialize=20empty=20l?= =?UTF-8?q?ists?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pyodmongo/models/db_model.py | 4 +--- tests/test_class.py | 7 +++++++ 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/pyodmongo/models/db_model.py b/pyodmongo/models/db_model.py index 4907c77..38f6eac 100644 --- a/pyodmongo/models/db_model.py +++ b/pyodmongo/models/db_model.py @@ -80,9 +80,7 @@ def __init__(self, **attrs): try: default_value = self.__class__.model_fields[key].default attrs[key] = ( - None - if default_value == PydanticUndefined - else default_value + [] if default_value == PydanticUndefined else default_value ) except KeyError: ... diff --git a/tests/test_class.py b/tests/test_class.py index 03c29fd..957e2ab 100644 --- a/tests/test_class.py +++ b/tests/test_class.py @@ -200,3 +200,10 @@ class SecondClass(FirstClass): assert type(obj_1.attr_1) is str assert obj_2.attr_1 == 1 assert type(obj_2.attr_1) is int + + +def test_empty_list_field(): + class A(DbModel): + x: list[int] + + A(x=[])