add script for generating fake testing data
This commit is contained in:
1 parent
f8a6ade8e6
commit
3f86cc1b57
6 files changed
+683
-373
No files matched your search
@@ -0,0 +1,74 @@
|
||||
from datetime import UTC, datetime, timedelta
|
||||
from random import randint, sample
|
||||
from zoneinfo import ZoneInfo
|
||||
|
||||
from faker import Faker
|
||||
from faker.providers import company
|
||||
|
||||
from fhdhview.services.screenwriter.schema import AAMPos, Session, Sessions
|
||||
|
||||
fake = Faker()
|
||||
fake.add_provider(company)
|
||||
|
||||
zaal = [
|
||||
"DenHaag_zaal_1",
|
||||
"DenHaag_zaal_2",
|
||||
"DenHaag_zaal_3",
|
||||
"DenHaag_zaal_4",
|
||||
"DenHaag_zaal_5",
|
||||
"DenHaag_zaal_6",
|
||||
"Filmhuis Den Haag 10 (buitenbios)"
|
||||
]
|
||||
|
||||
kw_age = [
|
||||
"vanaf 6 jaar",
|
||||
"vanaf 9 jaar",
|
||||
"vanaf 12 jaar",
|
||||
"vanaf 14 jaar",
|
||||
"vanaf 18 jaar",
|
||||
"Alle leeftijden"
|
||||
]
|
||||
|
||||
kw_keywords = [
|
||||
"Angst",
|
||||
"Discriminatie",
|
||||
"Drugs- en/of alcoholmisbruik",
|
||||
"Grof taalgebruik",
|
||||
"Gevaarlijk gedrag",
|
||||
"Geweld",
|
||||
"Seks"
|
||||
]
|
||||
|
||||
attr_extra = [
|
||||
"EN subs"
|
||||
]
|
||||
|
||||
sessions: list[Session] = []
|
||||
|
||||
for i in range(20):
|
||||
start_time = datetime.now(tz=ZoneInfo("Europe/Amsterdam"))+timedelta(minutes=randint(-20, 59))
|
||||
|
||||
attrs = sample(kw_age, 1) + sample(kw_keywords, randint(0, 3)) + sample(attr_extra, randint(0, 1))
|
||||
|
||||
|
||||
session = Session(
|
||||
session_id=randint(1000, 9999),
|
||||
screen_identifier=sample(zaal, 1)[0],
|
||||
complex_identifier="Filmhuis Den Haag",
|
||||
start=start_time,
|
||||
end=start_time+timedelta(hours=2),
|
||||
feature_duration=int(timedelta(hours=2).total_seconds()),
|
||||
title=fake.catch_phrase(),
|
||||
rating=randint(1, 10),
|
||||
seats_available=100,
|
||||
seats_sold=randint(0, 100),
|
||||
attributes=attrs
|
||||
)
|
||||
sessions.append(session)
|
||||
|
||||
xml_data = AAMPos(sessions=Sessions(root=sessions))
|
||||
|
||||
|
||||
with open("test_xml.xml", "wb") as f:
|
||||
result = xml_data.to_xml(pretty_print=True)
|
||||
f.write(result if isinstance(result, bytes) else result.encode("utf-8"))
|
||||
Reference in new issue
Block a user