From 9eb1deed9475d302b9759d6793bf1d6723f6d838 Mon Sep 17 00:00:00 2001 From: "Martin Z. (Zimamazim)" Date: Thu, 20 Jun 2019 20:41:57 +0200 Subject: [PATCH] =?UTF-8?q?Ted=20funguje=20generovani=20soustredeni.=20Vol?= =?UTF-8?q?am=20jenom=20gen=5Frocniky=20a=20gen=5Fsoustredeni.=20Oprava=20?= =?UTF-8?q?syntax=20error=C5=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- seminar/testutils.py | 100 ++++++++++++++++++++++--------------------- 1 file changed, 52 insertions(+), 48 deletions(-) diff --git a/seminar/testutils.py b/seminar/testutils.py index 1f788306..7375e869 100644 --- a/seminar/testutils.py +++ b/seminar/testutils.py @@ -7,7 +7,7 @@ import django.contrib.auth from django.db import transaction import unidecode -from seminar.models import Skola, Resitel, Rocnik, Cislo, Problem, Reseni, PrilohaReseni, Nastaveni, Soustredeni, Soustredeni_Ucastnici, Soustredeni_Organizatori, Osoba, Organizator, Prijemce, Tema, Uloha, Konfera, KonferaNode, Konfera_Ucastnici +from seminar.models import Skola, Resitel, Rocnik, Cislo, Problem, Reseni, PrilohaReseni, Nastaveni, Soustredeni, Soustredeni_Ucastnici, Soustredeni_Organizatori, Osoba, Organizator, Prijemce, Tema, Uloha, Konfera, KonferaNode, RocnikNode from django.contrib.flatpages.models import FlatPage from django.contrib.sites.models import Site @@ -209,15 +209,15 @@ def gen_ulohy_do_cisla(rnd, cislo, organizatori, resitele, slovnik_cisel, size): def gen_soustredeni(rnd, resitele, organizatori): soustredeni = [] - for _ in range(1, size): #FIXME Tu range si změňte jak chcete, nevím, co přesně znamená size (asi Anet?) - datum_zacatku=datetime.date(randint(2000, 2020), randint(1, 12), radint(1, 28)) + for _ in range(1, 10): #FIXME Tu range si změňte jak chcete, nevím, co přesně znamená size (asi Anet?) + datum_zacatku=datetime.date(rnd.randint(2000, 2020), rnd.randint(1, 12), rnd.randint(1, 28)) working_sous = Soustredeni.objects.create( rocnik=Rocnik.objects.order_by('?').first(), verejne_db=rnd.choice([True, False]), misto=rnd.choice(['Kremrolovice', 'Indiánov', 'U zmzliny', 'Vafláreň', 'Větrník', 'Horní Rakvička', 'Dolní cheesecake']), - typ=rnd.choice(['jarni', 'podzmini', 'vikend']), + typ=rnd.choice(['jarni', 'podzimni', 'vikend']), datum_zacatku=datum_zacatku, - datum_konce=datum_zacatku + datetime.timedelta(weeks=1)) + datum_konce=datum_zacatku + datetime.timedelta(days=7)) for res in rnd.sample(resitele, min(len(resitele), 20)): Soustredeni_Ucastnici.objects.create(resitel=res, soutredeni=working_sous) for org in rnd.sample(organizatori, min(len(organizatori), 20)): @@ -240,14 +240,14 @@ def gen_konfery(rnd, reseni, organizatori, ucastnici, soustredeni): konfery = [] for _ in range(1, size): #FIXME Tu range si změňte jak chcete, nevím, co přesně znamená size (asi Anet?) konfera = Konfera.objects.create( - nazev=rnd.choice(['Pozorování', 'Zkoumání', 'Modelování', 'Počítání', 'Zkoušení']) + rnd.choice(' vlastností', ' jevů', ' charakteristik']) + rnd.choice([' vektorových prostorů', ' kinetické terorie látek', ' molekulární biologie', ' syntentických stromů']), + nazev=rnd.choice(['Pozorování', 'Zkoumání', 'Modelování', 'Počítání', 'Zkoušení']) + rnd.choice([' vlastností', ' jevů', ' charakteristik']) + rnd.choice([' vektorových prostorů', ' kinetické terorie látek', ' molekulární biologie', ' syntentických stromů']), anotace=lorem.paragraph(), abstrakt=lorem.paragraph(), organizator=rnd.choice(organizatori), soustredeni=rnd.choice(soustredeni), reseni=rnd.choice(reseni), typ_prezentace=rnd.choice(['veletrh', 'prezentace'])) - for res in rnd.sample(ucastnici, min(len(ucastnici), randint(3, 6))): + for res in rnd.sample(ucastnici, min(len(ucastnici), rnd.randint(3, 6))): Konfery_Ucastnici.objects.create(resitel=res, konfera=konfera) konfery.append(konfera) konfera.save() @@ -297,7 +297,7 @@ def gen_temata(rocniky, slovnik_rocnik_cisla): slovnik_rocnik_temata = {} for rocnik in rocniky: temata = {} - for cislo in slovnik_r[rocnik] + for cislo in slovnik_r[rocnik]: if cislo <= 3: jake = ["Hravé", "Fyzikální", "Nejlepší", "Totálně masakrální", "Šokující", "Magnetické", "Modré", "Překvapivé", @@ -330,46 +330,46 @@ def gen_ulohy_k_tematum(rocniky, slovnik_rocnik_cisla, slovnik_rocnik_temata): slovnik_cisel = slovnik_rocnik_cisla[rocnik] cisel = len(slovnik_cisel) slovnik_temat = slovnik_rocnik_temata[rocnik] - for tema in slovnik_temat: - for i in range(tema. - if #TODO - poc_op = rnd.randint(1, 4) - poc_oboru = rnd.randint(1, 2) - p = Uloha.objects.create( - nazev=": ".join([tema.nazev, - "úloha {}.".format(i-ci+1)]), - nadproblem=tema, - stav=Problem.STAV_ZADANY, - zamereni=t.zamereni, - autor=t.autor, - garant=t.garant, - opravovatele=rnd.sample(organizatori, poc_op), - kod=str(i), - cislo_zadani=slovnik_cisel[ci], - cislo_reseni=slovnik_cisel[ci+2], - cislo_deadline=slovnik_cisel[ci+2], - max_body = rnd.randint(1, 8)) - p.zadani = " ".join([rnd.choice(sloveso), rnd.choice(koho), - rnd.choice(ceho), rnd.choice(jmeno), rnd.choice(kde)]) - - #Tomův pokus o opravu bugu: - text_vzoraku = Text.objects.create( - na_web = rnd.choice(reseni), - do_cisla = rnd.choice(reseni) - ) - vzorak = TextNode.objects.create(text = text_vzoraku) - uloha_vzorak = UlohaVzorakNode.objects.create(uloha=p, first_child = vzorak) - p.UlohaVzorakNode = uloha_vzorak - - #p.vzorak = " - ".join([p.zadani, rnd.choice(reseni)]) - p.save() - - - # vytvor text - # vytvor TemaVCisleNode - if (rnd.randint(1, 3) % 3 == 0): - # vytvor mezicislo Node - pass + for tema in slovnik_temat: + for i in []: + if (1==1):#TODO + poc_op = rnd.randint(1, 4) + poc_oboru = rnd.randint(1, 2) + p = Uloha.objects.create( + nazev=": ".join([tema.nazev, + "úloha {}.".format(i-ci+1)]), + nadproblem=tema, + stav=Problem.STAV_ZADANY, + zamereni=t.zamereni, + autor=t.autor, + garant=t.garant, + opravovatele=rnd.sample(organizatori, poc_op), + kod=str(i), + cislo_zadani=slovnik_cisel[ci], + cislo_reseni=slovnik_cisel[ci+2], + cislo_deadline=slovnik_cisel[ci+2], + max_body = rnd.randint(1, 8)) + p.zadani = " ".join([rnd.choice(sloveso), rnd.choice(koho), + rnd.choice(ceho), rnd.choice(jmeno), rnd.choice(kde)]) + + #Tomův pokus o opravu bugu: + text_vzoraku = Text.objects.create( + na_web = rnd.choice(reseni), + do_cisla = rnd.choice(reseni) + ) + vzorak = TextNode.objects.create(text = text_vzoraku) + uloha_vzorak = UlohaVzorakNode.objects.create(uloha=p, first_child = vzorak) + p.UlohaVzorakNode = uloha_vzorak + + #p.vzorak = " - ".join([p.zadani, rnd.choice(reseni)]) + p.save() + + + # vytvor text + # vytvor TemaVCisleNode + if (rnd.randint(1, 3) % 3 == 0): + # vytvor mezicislo Node + pass @transaction.atomic def create_test_data(size = 6, rnd = None): @@ -377,6 +377,10 @@ def create_test_data(size = 6, rnd = None): # pevna pseudo-nahodnost rnd = rnd or random.Random(x=42) + gen_rocniky(25, 10) + gen_soustredeni(rnd, [], []) + return + # static URL stranky # FIXME: nakopirovat sem vsechny z produkcni databaze s = Site.objects.filter(name="example.com")