mirror of
https://github.com/kennethreitz/pydantic.git
synced 2026-06-05 23:00:18 +00:00
support overwriting dunder attributes of BaseModel instances (#3907)
* support overwriting dunder attributes of `BaseModel` instances closes #3777 * suggestion from @adriangb Co-authored-by: Samuel Colvin <s@muelcolvin.com>
This commit is contained in:
@@ -19,6 +19,7 @@ from typing import (
|
||||
from uuid import UUID, uuid4
|
||||
|
||||
import pytest
|
||||
from typing_extensions import Annotated
|
||||
|
||||
from pydantic import (
|
||||
BaseConfig,
|
||||
@@ -2174,6 +2175,19 @@ def test_new_union_origin():
|
||||
}
|
||||
|
||||
|
||||
def test_annotated_class():
|
||||
class PydanticModel(BaseModel):
|
||||
foo: str = '123'
|
||||
|
||||
PydanticAlias = Annotated[PydanticModel, 'bar baz']
|
||||
|
||||
pa = PydanticAlias()
|
||||
assert isinstance(pa, PydanticModel)
|
||||
pa.__doc__ = 'qwe'
|
||||
assert repr(pa) == "PydanticModel(foo='123')"
|
||||
assert pa.__doc__ == 'qwe'
|
||||
|
||||
|
||||
@pytest.mark.parametrize(
|
||||
'ann',
|
||||
[Final, Final[int]],
|
||||
|
||||
Reference in New Issue
Block a user