Browse Source

Typové anotace a další detaily v generování testdat k soustredeni

pull/56/head
Jonas Havelka 3 months ago
parent
commit
a6220e8d50
  1. 4
      seminar/testutils.py
  2. 22
      soustredeni/testutils.py

4
seminar/testutils.py

@ -839,10 +839,10 @@ def create_test_data(size = 6, rnd = None):
gen_ulohy_k_tematum(rnd, rocniky, rocnik_cisla, rocnik_temata, organizatori, resitele) gen_ulohy_k_tematum(rnd, rocniky, rocnik_cisla, rocnik_temata, organizatori, resitele)
#generování soustředění #generování soustředění
soustredeni = gen_soustredeni(size, rnd, resitele, organizatori) soustredeni = gen_soustredeni(size, resitele, organizatori, rnd=rnd)
#generování konfer #generování konfer
konfery = gen_konfery(size, rnd, organizatori, resitele, soustredeni) konfery = gen_konfery(size, organizatori, resitele, soustredeni, rnd=rnd)
# vytvoreni pdf ke korekturam # vytvoreni pdf ke korekturam
create_test_pdf(rnd, organizatori) create_test_pdf(rnd, organizatori)

22
soustredeni/testutils.py

@ -1,16 +1,25 @@
import logging import logging
import datetime import datetime
import random
from typing import Sequence
import lorem import lorem
from .models import Soustredeni, Konfera from .models import Soustredeni, Konfera
import seminar.models.tvorba as am import seminar.models.tvorba as am
import personalni.models as pm
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
def gen_soustredeni(size, rnd, resitele, organizatori): def gen_soustredeni(
logger.info('Generuji soustředění...') size: int,
resitele: Sequence[pm.Resitel],
organizatori: Sequence[pm.Organizator],
rnd: random.Random = None,
) -> Sequence[Soustredeni]:
logger.info('Generuji soustředění (size={})...')
rnd = rnd or random.Random(x=42)
soustredeni = [] soustredeni = []
for _ in range(1, 10): # FIXME Tu range si změňte jak chcete, nevím, co přesně znamená size (asi Anet?) for _ in range(1, 10): # FIXME Tu range si změňte jak chcete, nevím, co přesně znamená size (asi Anet?)
@ -35,8 +44,15 @@ def gen_soustredeni(size, rnd, resitele, organizatori):
return soustredeni return soustredeni
def gen_konfery(size, rnd, organizatori, resitele, soustredeni): def gen_konfery(
size: int,
organizatori: Sequence[pm.Organizator],
resitele: Sequence[pm.Resitel],
soustredeni: Sequence[Soustredeni],
rnd: random.Random = None,
) -> Sequence[Konfera]:
logger.info('Generuji konfery (size={})...'.format(size)) logger.info('Generuji konfery (size={})...'.format(size))
rnd = rnd or random.Random(x=42)
konfery = [] konfery = []
for _ in range(1, size): # FIXME Tu range si změňte jak chcete, nevím, co přesně znamená size (asi Anet?) for _ in range(1, size): # FIXME Tu range si změňte jak chcete, nevím, co přesně znamená size (asi Anet?)

Loading…
Cancel
Save