-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathconftest.py
99 lines (90 loc) · 2.34 KB
/
conftest.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
import datetime
from datetime import date as date_type
from datetime import datetime as datetime_type
from decimal import Decimal
import pytest
from core.db_primitives import CoreField, CoreModel
from orms_tools import (
DjangoModelPrinter,
DjangoModulePrinter,
DjangoOrmModelCombine,
SQLAlchemyModelCombine,
SqlAlchemyModelPrinter,
SqlAlchemyModulePrinter,
)
class SaSetupFixture:
combine = SQLAlchemyModelCombine
model_printer = SqlAlchemyModelPrinter
module_printer = SqlAlchemyModulePrinter
class DjangoSetupFixture:
combine = DjangoOrmModelCombine
model_printer = DjangoModelPrinter
module_printer = DjangoModulePrinter
user_core_model = CoreModel(
doc="""Some User Model""",
tablename="user",
unique_together=(("level", "coeff"),),
fields=[
CoreField(
sql_type=int,
name="id",
doc="UserId",
primary_key=True,
),
CoreField(
sql_type=int,
name="level",
doc="User level",
),
CoreField(
sql_type=str,
name="nickname",
doc="Nickname",
length=32,
unique=True,
),
CoreField(
sql_type=bool,
name="is_active",
default=True,
),
CoreField(sql_type=float, name="coeff", precision=8, default=1.1),
CoreField(
sql_type=datetime_type, name="reg_time", auto_on_create=True,
),
CoreField(
sql_type=date_type, name="birthday", auto_on_create=True, auto_on_update=True,
),
CoreField(
sql_type=bytes,
name="signature",
nullable=False,
default=b"1010",
length=4,
),
CoreField(sql_type=Decimal, name="balance", precision=2, scale=10),
],
)
payment_core_model = CoreModel(
doc="""Some Payment""",
tablename="payment",
fields=[
CoreField(
sql_type=int,
name="id",
doc="UserId",
primary_key=True,
),
CoreField(
sql_type=Decimal,
name="payment",
),
CoreField(
sql_type=int,
name="user_id",
doc="UserId",
foreign_key="User.id",
nullable=False,
),
],
)