Lisätty musiikki_generaattorille testit
This commit is contained in:
parent
01bd9c1102
commit
ce112e5c02
6 changed files with 31 additions and 0 deletions
Binary file not shown.
Before Width: | Height: | Size: 45 KiB After Width: | Height: | Size: 50 KiB |
|
@ -90,6 +90,7 @@ class MusiikkiGeneraattori:
|
|||
for _ in range(nuotteja):
|
||||
# Tunnistaa jos edellinen Markovin ketjun iteraatio palautti None
|
||||
if not self._nuotit[-1]:
|
||||
self._nuotit = self._nuotit[:-1]
|
||||
break
|
||||
self._nuotit.append(self._ketju.seuraava())
|
||||
|
||||
|
|
30
src/tests/musiikki_generaattori_test.py
Normal file
30
src/tests/musiikki_generaattori_test.py
Normal file
|
@ -0,0 +1,30 @@
|
|||
import os
|
||||
import unittest
|
||||
from musiikki_generaattori import musiikki_generaattori
|
||||
from midi_kasittelija import lue_midi, kirjoita_midi
|
||||
|
||||
class TestMusiikkiGeneraattori(unittest.TestCase):
|
||||
def test_kokonaisuus(self):
|
||||
testi_polku = "src/tests/testiMidi.mid"
|
||||
if os.path.exists(testi_polku):
|
||||
os.remove(testi_polku)
|
||||
|
||||
nuotit = [60, 62, 64, 66, 68, 60, 62, None]
|
||||
kirjoita_midi(testi_polku, nuotit)
|
||||
|
||||
musiikki_generaattori.lue_opetusdata("src/tests/testiMidi.*")
|
||||
|
||||
musiikki_generaattori.valmistele_ketju("C4")
|
||||
musiikki_generaattori.generoi_nuotteja(4)
|
||||
musiikki_generaattori.kirjoita_midi(testi_polku)
|
||||
generoidut_nuotit = lue_midi(testi_polku)[0]
|
||||
self.assertEqual(generoidut_nuotit, nuotit[:4])
|
||||
|
||||
musiikki_generaattori.valmistele_ketju("C4", aste=2)
|
||||
musiikki_generaattori.generoi_nuotteja(4)
|
||||
musiikki_generaattori.kirjoita_midi(testi_polku)
|
||||
generoidut_nuotit = lue_midi(testi_polku)[0]
|
||||
self.assertEqual(generoidut_nuotit, nuotit[:4])
|
||||
|
||||
musiikki_generaattori.valmistele_ketju("C5")
|
||||
self.assertEqual(musiikki_generaattori.generoi_nuotteja(10), 1)
|
BIN
src/tests/testiMidi.lyhyt.mid
Normal file
BIN
src/tests/testiMidi.lyhyt.mid
Normal file
Binary file not shown.
Binary file not shown.
0
src/tests/testiMidi.rikki.mid
Normal file
0
src/tests/testiMidi.rikki.mid
Normal file
Reference in a new issue