diff --git a/README.md b/README.md index 5d19a35..b265f20 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,11 @@ ## Dokumentaatio [Määrittelydokumentti](https://github.com/ArcticCoder/markov-music-generator/blob/main/dokumentaatio/maarittelydokumentti.md) +[Testausdokumentti](https://github.com/ArcticCoder/markov-music-generator/blob/main/dokumentaatio/testausdokumentti.md) + ### Viikkoraportit [Viikko 1](https://github.com/ArcticCoder/markov-music-generator/blob/main/dokumentaatio/viikko1.md) [Viikko 2](https://github.com/ArcticCoder/markov-music-generator/blob/main/dokumentaatio/viikko2.md) + +[Viikko 3](https://github.com/ArcticCoder/markov-music-generator/blob/main/dokumentaatio/viikko3.md) diff --git a/dokumentaatio/kattavuus.png b/dokumentaatio/kattavuus.png new file mode 100644 index 0000000..85c74b1 Binary files /dev/null and b/dokumentaatio/kattavuus.png differ diff --git a/dokumentaatio/testausdokumentti.md b/dokumentaatio/testausdokumentti.md new file mode 100644 index 0000000..0ec6805 --- /dev/null +++ b/dokumentaatio/testausdokumentti.md @@ -0,0 +1,17 @@ +# Testausdokumentti + +## Testien toteutus +Automaattinen yksikkötestaus on toteutettu pytest-kirjastolla ja testikattavuuden raportoinnin hoitaa coverage-kirjasto. + +## Ohjeet +Ennen testien suorittamista tulee pytest- ja coverage-kirjastot olla asennettuna käytössä olevassa ympäristössä. Testit saa suoritettua kommennolla + +`pytest src` + +projektin juurikansiosta. Testikattavuusraportin voi luoda juurikansiosta komennolla + +` coverage run --branch -m pytest src && coverage html` + +Tämän jälkeen raportti löytyy tiedostosta `htmlcov/index.html`. + +![Testikattavuusraportti. Kokonaiskattavuus 99%](https://github.com/ArcticCoder/markov-music-generator/blob/master/kattavuus.png?raw=true) diff --git a/dokumentaatio/viikko3.md b/dokumentaatio/viikko3.md new file mode 100644 index 0000000..6c1110d --- /dev/null +++ b/dokumentaatio/viikko3.md @@ -0,0 +1,9 @@ +# Viikkoraportti 3 + +Toteutin tällä viikolla varsinaisen Markovin ketjun omaa trie-tietorakennettani hyödyntäen. Varmistin ensin manuaalisesti, että toeutukseni vaikuttaa toimivalta. Tämän jälkeen kirjoitin yksikkötestauksen käyttäen pohjana omia aiempia testejäni. + +Opin uutta Markovin ketjuista, sekä pythonin tarjoamista ominaisuuksista. + +Minulla oli jälleen melko rajallisesti aikaa käytettävissä, mutta olen tyytyväinen ohjelmani etenemiseen tähän asti. Ensi viikolla toteutan varsinaisen musiikkidatan lukemisen ja melodian generoimisen. Osana tätä toteutan myös käyttöliittymän, joka tulee olemaan ohjaajan ehdotuksesta komentorivivalikko. Tavoitteena on, että ensi viikon jälkeen minulla on toteutettavana enää rytmin generoiminen yhdellä tai useammalla tavalla, sekä muut mahdolliset lopputulosta parantavat hienosäädöt ja erinnäiset säätöparametrit. Uskon vahvasti aikani riittävän tähän tavoitteeseen. + +Aikaa käytin tällä viikolla noin 5h.