mirror of
https://github.com/mealie-recipes/mealie.git
synced 2025-02-23 18:37:23 -08:00
62 lines
1.5 KiB
Python
62 lines
1.5 KiB
Python
from mealie.schema._mealie.mealie_model import MealieModel
|
|
|
|
|
|
class TestModel(MealieModel):
|
|
long_name: str
|
|
long_int: int
|
|
long_float: float
|
|
|
|
|
|
class TestModel2(MealieModel):
|
|
long_name: str
|
|
long_int: int
|
|
long_float: float
|
|
another_str: str
|
|
|
|
|
|
def test_camelize_variables():
|
|
model = TestModel(long_name="Hello", long_int=1, long_float=1.1)
|
|
|
|
as_dict = model.model_dump(by_alias=True)
|
|
|
|
assert as_dict["longName"] == "Hello"
|
|
assert as_dict["longInt"] == 1
|
|
assert as_dict["longFloat"] == 1.1
|
|
|
|
|
|
def test_cast_to():
|
|
model = TestModel(long_name="Hello", long_int=1, long_float=1.1)
|
|
|
|
model2 = model.cast(TestModel2, another_str="World")
|
|
|
|
assert model2.long_name == "Hello"
|
|
assert model2.long_int == 1
|
|
assert model2.long_float == 1.1
|
|
assert model2.another_str == "World"
|
|
|
|
|
|
def test_map_to():
|
|
model = TestModel(long_name="Model1", long_int=100, long_float=1.5)
|
|
|
|
model2 = TestModel2(long_name="Model2", long_int=1, long_float=1.1, another_str="World")
|
|
|
|
model.map_to(model2)
|
|
|
|
assert model2.long_name == "Model1"
|
|
assert model2.long_int == 100
|
|
assert model2.long_float == 1.5
|
|
assert model2.another_str == "World"
|
|
|
|
|
|
def test_map_from():
|
|
model = TestModel(long_name="Model1", long_int=50, long_float=1.5)
|
|
|
|
model2 = TestModel2(long_name="Hello", long_int=1, long_float=1.1, another_str="World")
|
|
|
|
model2.map_from(model)
|
|
|
|
assert model2.long_name == "Model1"
|
|
assert model2.long_int == 50
|
|
assert model2.long_float == 1.5
|
|
assert model2.another_str == "World"
|