move datatypes
This commit is contained in:
parent
166c3ff202
commit
90577ea86e
3 changed files with 37 additions and 1 deletions
|
@ -1,81 +0,0 @@
|
|||
from dataclasses import dataclass, asdict
|
||||
|
||||
|
||||
@dataclass
|
||||
class Customer:
|
||||
customer_id: int
|
||||
first_name: str
|
||||
last_name: str
|
||||
street: str
|
||||
birth_date: str # Assuming timestamp as a string for simplicity
|
||||
house_number: str
|
||||
postal_code: int
|
||||
email: str
|
||||
phone: int
|
||||
city: str
|
||||
|
||||
def dict(self):
|
||||
return {k: str(v) for k, v in asdict(self).items()}
|
||||
|
||||
|
||||
@dataclass
|
||||
class Order:
|
||||
order_id: int
|
||||
customer: Customer
|
||||
invoice_amount: int
|
||||
order_date: str # Assuming timestamp as a string for simplicity
|
||||
|
||||
def dict(self):
|
||||
return {k: str(v) for k, v in asdict(self).items()}
|
||||
|
||||
|
||||
@dataclass
|
||||
class Ingredient:
|
||||
ingredient_id: int
|
||||
designation: str
|
||||
stock: int
|
||||
net_price: int
|
||||
unit: str
|
||||
carbohydrates: int
|
||||
calories: int
|
||||
protein: int
|
||||
|
||||
def dict(self):
|
||||
return {k: str(v) for k, v in asdict(self).items()}
|
||||
|
||||
|
||||
@dataclass
|
||||
class Supplier:
|
||||
supplier_id: int
|
||||
city: str
|
||||
street: str
|
||||
email: str
|
||||
phone: str
|
||||
supplier_name: str
|
||||
house_number: str
|
||||
postal_code: int
|
||||
|
||||
def dict(self):
|
||||
return {k: str(v) for k, v in asdict(self).items()}
|
||||
|
||||
|
||||
@dataclass
|
||||
class SupplierContainsIngredients:
|
||||
supplier: Supplier
|
||||
ingredient: Ingredient
|
||||
delivery_cost: int
|
||||
delivery_time: int
|
||||
|
||||
def dict(self):
|
||||
return {k: str(v) for k, v in asdict(self).items()}
|
||||
|
||||
|
||||
@dataclass
|
||||
class OrderContainsIngredients:
|
||||
order: Order
|
||||
ingredient: Ingredient
|
||||
quantity: int
|
||||
|
||||
def dict(self):
|
||||
return {k: str(v) for k, v in asdict(self).items()}
|
||||
|
37
fuzzer/filldb.py
Normal file
37
fuzzer/filldb.py
Normal file
|
@ -0,0 +1,37 @@
|
|||
import string
|
||||
from dataclasses import fields
|
||||
|
||||
from surrealdb import Surreal
|
||||
import random
|
||||
|
||||
from lib.datatypes import Customer
|
||||
|
||||
|
||||
async def mainold():
|
||||
"""Example of how to use the SurrealDB client."""
|
||||
async with Surreal("ws://localhost:8000/rpc") as db:
|
||||
await db.signin({"user": "root", "pass": "root"})
|
||||
await db.use("test", "test")
|
||||
for k in range(1, 20):
|
||||
await db.create(
|
||||
"Kunde",
|
||||
fill_data().dict(),
|
||||
)
|
||||
|
||||
|
||||
def randomword(length):
|
||||
letters = string.ascii_lowercase
|
||||
return ''.join(random.choice(letters) for i in range(length))
|
||||
|
||||
|
||||
def fill_data():
|
||||
data = Customer(1, "a", "a", "a", "a", "a", 1, "a", 1, "a")
|
||||
for var in fields(Customer):
|
||||
if var.type == type("str"):
|
||||
setattr(data, var.name, randomword(random.randint(1, 20)))
|
||||
elif var.type == type(1):
|
||||
setattr(data, var.name, random.randint(0, 100))
|
||||
return data
|
||||
|
||||
|
||||
print(fill_data())
|
Loading…
Add table
Add a link
Reference in a new issue