testutils.py: přidány sousy a konfery
This commit is contained in:
		
							parent
							
								
									6d3acccae8
								
							
						
					
					
						commit
						500258c16a
					
				
					 1 changed files with 28 additions and 21 deletions
				
			
		|  | @ -36,9 +36,9 @@ def gen_osoby(rnd, size): | ||||||
| 			'Unterschiedlich', 'Old York', 'Lancastershire', 'Vóloďháza'] | 			'Unterschiedlich', 'Old York', 'Lancastershire', 'Vóloďháza'] | ||||||
| 
 | 
 | ||||||
| 	osoby = [] | 	osoby = [] | ||||||
| 	# 3 je náhodná konstanta, size je použité na víc místech a  | 	# 30 je náhodná konstanta, size je použité na víc místech a  | ||||||
| 	# říká, jak velká asi chceme testovací data | 	# říká, jak velká asi chceme testovací data | ||||||
| 	for i in range(3 * size):  | 	for i in range(30 * size):  | ||||||
| 		pohlavi = rnd.randint(0,1) | 		pohlavi = rnd.randint(0,1) | ||||||
| 		jmeno = rnd.choice([jmena_m, jmena_f][pohlavi]) | 		jmeno = rnd.choice([jmena_m, jmena_f][pohlavi]) | ||||||
| 		prijmeni = rnd.choice([prijmeni_m, prijmeni_f][pohlavi]) | 		prijmeni = rnd.choice([prijmeni_m, prijmeni_f][pohlavi]) | ||||||
|  | @ -48,7 +48,6 @@ def gen_osoby(rnd, size): | ||||||
| 		narozeni = datetime.date(rnd.randint(1980, 2020), rnd.randint(1, 12),  | 		narozeni = datetime.date(rnd.randint(1980, 2020), rnd.randint(1, 12),  | ||||||
| 						rnd.randint(1, 28)) | 						rnd.randint(1, 28)) | ||||||
| 		ulic = rnd.choice(seznam_ulic) | 		ulic = rnd.choice(seznam_ulic) | ||||||
| 		print(ulic) #FIXME: pozdeji smazat, jen debug |  | ||||||
| 		cp = rnd.randint(1, 99) | 		cp = rnd.randint(1, 99) | ||||||
| 		ulice = " ".join([ulic, str(cp)]) | 		ulice = " ".join([ulic, str(cp)]) | ||||||
| 		mesto = rnd.choice([seznam_mest]) | 		mesto = rnd.choice([seznam_mest]) | ||||||
|  | @ -81,7 +80,6 @@ def gen_skoly(): #TODO někdy to přepsat, aby jich bylo více | ||||||
| 		ulice='Hluboká 42', nazev='Hutní gympl', je_zs=False, je_ss=True)) | 		ulice='Hluboká 42', nazev='Hutní gympl', je_zs=False, je_ss=True)) | ||||||
| 	skoly.append(Skola.objects.create(mesto='Humenné', stat='SK', psc='012 34',  | 	skoly.append(Skola.objects.create(mesto='Humenné', stat='SK', psc='012 34',  | ||||||
| 		ulice='Pltká 1', nazev='Sredná škuola', je_zs=False, je_ss=True)) | 		ulice='Pltká 1', nazev='Sredná škuola', je_zs=False, je_ss=True)) | ||||||
| 	#FIXME pridat kontaktni osobu alespon nekde |  | ||||||
| 	global zlinska | 	global zlinska | ||||||
| 	zlinska = Skola.objects.create(mesto = 'Zlín', stat='CZ', psc='76001',  | 	zlinska = Skola.objects.create(mesto = 'Zlín', stat='CZ', psc='76001',  | ||||||
| 		ulice='náměstí T.G. Masaryka 2734-9',  | 		ulice='náměstí T.G. Masaryka 2734-9',  | ||||||
|  | @ -231,10 +229,14 @@ def gen_soustredeni(rnd, resitele, organizatori): | ||||||
| 				typ=rnd.choice(['jarni', 'podzimni', 'vikend']), | 				typ=rnd.choice(['jarni', 'podzimni', 'vikend']), | ||||||
| 				datum_zacatku=datum_zacatku, | 				datum_zacatku=datum_zacatku, | ||||||
| 				datum_konce=datum_zacatku + datetime.timedelta(days=7)) | 				datum_konce=datum_zacatku + datetime.timedelta(days=7)) | ||||||
| 			for res in rnd.sample(resitele, min(len(resitele), 20)): | 			ucastnici = rnd.sample(resitele, min(len(resitele), 20)) | ||||||
| 				Soustredeni_Ucastnici.objects.create(resitel=res, soutredeni=working_sous) | 			working_sous.ucastnici.set(ucastnici) | ||||||
| 			for org in rnd.sample(organizatori, min(len(organizatori), 20)): | 			#for res in rnd.sample(resitele, min(len(resitele), 20)): | ||||||
| 				Soustredeni_Organizatori.objects.create(organizator=org, soutredeni=working_sous) | 			#	Soustredeni_Ucastnici.objects.create(resitel=res, soutredeni=working_sous) | ||||||
|  | 			orgove_vyber = rnd.sample(organizatori, min(len(organizatori), 20)) | ||||||
|  | 			working_sous.organizatori.set(orgove_vyber) | ||||||
|  | 			#for org in rnd.sample(organizatori, min(len(organizatori), 20)): | ||||||
|  | 			#	Soustredeni_Organizatori.objects.create(organizator=org, soutredeni=working_sous) | ||||||
| 			working_sous.save() | 			working_sous.save() | ||||||
| 			soustredeni.append(working_sous) | 			soustredeni.append(working_sous) | ||||||
| 		return soustredeni | 		return soustredeni | ||||||
|  | @ -250,7 +252,7 @@ def gen_rocniky(last_rocnik, size): | ||||||
| 		rocniky.append(rocnik) | 		rocniky.append(rocnik) | ||||||
| 	return rocniky | 	return rocniky | ||||||
| 
 | 
 | ||||||
| def gen_konfery(rnd, reseni, organizatori, ucastnici, soustredeni): | def gen_konfery(size, rnd, organizatori, resitele, soustredeni): | ||||||
| 	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?)  | ||||||
| 		konfera = Konfera.objects.create( | 		konfera = Konfera.objects.create( | ||||||
|  | @ -259,13 +261,15 @@ def gen_konfery(rnd, reseni, organizatori, ucastnici, soustredeni): | ||||||
| 			abstrakt=lorem.paragraph(), | 			abstrakt=lorem.paragraph(), | ||||||
| 			organizator=rnd.choice(organizatori), | 			organizator=rnd.choice(organizatori), | ||||||
| 			soustredeni=rnd.choice(soustredeni), | 			soustredeni=rnd.choice(soustredeni), | ||||||
| 			reseni=rnd.choice(reseni), |  | ||||||
| 			typ_prezentace=rnd.choice(['veletrh', 'prezentace'])) | 			typ_prezentace=rnd.choice(['veletrh', 'prezentace'])) | ||||||
| 		for res in rnd.sample(ucastnici, min(len(ucastnici), rnd.randint(3, 6))): | 		ucastnici_sous = list(konfera.soustredeni.ucastnici.all()) | ||||||
| 			Konfery_Ucastnici.objects.create(resitel=res, konfera=konfera) | 		ucastnici = rnd.sample(ucastnici_sous, min(len(ucastnici_sous), rnd.randint(3, 6))) | ||||||
| 		konfery.append(konfera) | 		konfera.ucastnici.set(ucastnici) | ||||||
|  | 		#for res in rnd.sample(ucastnici, min(len(ucastnici), rnd.randint(3, 6))): | ||||||
|  | 		#	Konfery_Ucastnici.objects.create(resitel=res, konfera=konfera) | ||||||
| 		konfera.save() | 		konfera.save() | ||||||
| 
 | 		konfery.append(konfera) | ||||||
|  | 		 | ||||||
| 		konferanode = KonferaNode.objects.create(konfera=konfera) | 		konferanode = KonferaNode.objects.create(konfera=konfera) | ||||||
| 		konferanode.save() | 		konferanode.save() | ||||||
| 	return konfery | 	return konfery | ||||||
|  | @ -488,7 +492,6 @@ def create_test_data(size = 6, rnd = None): | ||||||
| 
 | 
 | ||||||
| 	# skoly | 	# skoly | ||||||
| 	skoly = gen_skoly() | 	skoly = gen_skoly() | ||||||
| 	#TODO Generovat soustredeni konfery |  | ||||||
| 
 | 
 | ||||||
| 	# osoby | 	# osoby | ||||||
| 	osoby = gen_osoby(rnd, size) | 	osoby = gen_osoby(rnd, size) | ||||||
|  | @ -520,17 +523,21 @@ def create_test_data(size = 6, rnd = None): | ||||||
| 	 | 	 | ||||||
| 	# generování úloh k tématům ve všech číslech | 	# generování úloh k tématům ve všech číslech | ||||||
| 	gen_ulohy_k_tematum(rnd, rocniky, rocnik_cisla, rocnik_temata, organizatori) | 	gen_ulohy_k_tematum(rnd, rocniky, rocnik_cisla, rocnik_temata, organizatori) | ||||||
| 
 | 	 | ||||||
| 			# FIXME: misto typu ruzne typy objektu a vnoreni do sebe | 	#generování soustředění | ||||||
|  | 	soustredeni = gen_soustredeni(rnd, resitele, organizatori) | ||||||
|  | 	 | ||||||
|  | 	#generování konfer | ||||||
|  | 	konfery = gen_konfery(size, rnd, organizatori, resitele, soustredeni) | ||||||
|  | 	 | ||||||
|  | 			# TODO: nastavi správně, kolik se čeho generuje, aby rozsahy přibližně odpovídaly | ||||||
|  | 			# FIXME: misto typu ruzne typy objektu a vnoreni do sebe (Tom nechápe, co je tímto fixme míněno) | ||||||
| 			# TODO: vytvorit temata s ruznymi vlakny | 			# TODO: vytvorit temata s ruznymi vlakny | ||||||
| 			# TODO: nagenerovat starsim rocnikum pohadku | 			# TODO: nagenerovat starsim rocnikum pohadku | ||||||
| 			# TODO: nagenerovat články | 			# TODO: nagenerovat články | ||||||
| 			# TODO: nagenerovat konfery |  | ||||||
| 			# TODO: vecpat obrázky všude, kde to jde | 			# TODO: vecpat obrázky všude, kde to jde | ||||||
| 			# TODO: nagenerovat nějaký strom nodů? |  | ||||||
| 			# TODO: mezičíslo node | 			# TODO: mezičíslo node | ||||||
| 
 | 			# TODO: přidat ke konferám řešení a dát je do čísel | ||||||
| 	# TODO: nahodne nagenerovat problemum reseni a prilohy reseni, hodnoceni |  | ||||||
| 
 | 
 | ||||||
| 	# obecné nastavení semináře, musí být už přidané ročníky a čísla, jinak se nastaví divně | 	# obecné nastavení semináře, musí být už přidané ročníky a čísla, jinak se nastaví divně | ||||||
| 	nastaveni = Nastaveni.objects.create(aktualni_rocnik = Rocnik.objects.last(), | 	nastaveni = Nastaveni.objects.create(aktualni_rocnik = Rocnik.objects.last(), | ||||||
|  |  | ||||||
		Loading…
	
		Reference in a new issue
	
	 Tomáš Domes
						Tomáš Domes