From 3b8ba5b0360013fbc16346bccb682a7810bed2aa Mon Sep 17 00:00:00 2001 From: Anet Date: Tue, 11 Feb 2020 21:17:17 +0100 Subject: [PATCH] =?UTF-8?q?testutils:=20snaha=20o=20to,=20aby=20v=20dan?= =?UTF-8?q?=C3=A9m=20=C4=8D=C3=ADsle=20bylo=20v=C3=ADce=20=C5=99e=C5=A1en?= =?UTF-8?q?=C3=AD=20od=20jednoho=20=C5=99e=C5=A1itele?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- seminar/testutils.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/seminar/testutils.py b/seminar/testutils.py index 6befbbf7..b81d09f8 100644 --- a/seminar/testutils.py +++ b/seminar/testutils.py @@ -167,6 +167,13 @@ def gen_ulohy_do_cisla(rnd, organizatori, resitele, rocnik_cisla, rocniky, size) k+=1 cisla = rocnik_cisla[k-1] for ci in range(3, len(cisla)+1): # pro všechna čísla + resitele_size = round(7/8 * 30 * size) # očekáváný celkový počet řešitelů + poc_res = rnd.randint(round(resitele_size/8), round(3*resitele_size/4)) + # dané číslo řeší něco mezi osminou a tříčtvrtinou všech řešitelů + # (náhodná hausnumera, možno změnit) + # účelem je, aby se řešení generovala z menší množiny řešitelů a tedy + # bylo více řešení od jednoho řešitele daného čísla + resitele_cisla = rnd.sample(resitele, poc_res) for pi in range(1, ((size + 1) // 2) + 1): poc_op = rnd.randint(1, 4) # počet opravovatelů @@ -226,9 +233,9 @@ def gen_ulohy_do_cisla(rnd, organizatori, resitele, rocnik_cisla, rocniky, size) for ri in range(poc_reseni): if rnd.randint(1, 10) == 6: # cca desetina řešení od více řešitelů - res_vyber = rnd.sample(resitele, rnd.randint(2, 5)) + res_vyber = rnd.sample(resitele_cisla, rnd.randint(2, 5)) else: - res_vyber = rnd.sample(resitele, 1) + res_vyber = rnd.sample(resitele_cisla, 1) res = Reseni.objects.create(forma=rnd.choice(Reseni.FORMA_CHOICES)[0]) # problem a resitele přiřadíme později, ManyToManyField # se nedá vyplnit v create()