Esimerkkitiedostot ovat saatavilla kahdessa muodossa:
- Windows-muotoiset rivinvaihdot. Nämä tiedostot ovat saatavilla yksittäin tai zip-paketissa.
- Linux/Mac-muotoiset rivinvaihdot. Saatavilla yksittäin tai zip-paketissa.
Esimerkeistä ei ole versioita eri merkistöille, koska tiedostoissa on vain 7-bittisen ASCII-merkistön ”näkyviä” merkkejä, joiden esitystapa on sama niin Latin 1 (ISO 8859-1) kuin utf-8-koodatussa Unicode-merkistöissä.
Oman ohjelman tulosteita kannattaa vertailla esimerkkitiedostoihin ennen WETO-palautuksia.
Esimerkkeihin liittyy neljä tiedostoa pois lukien testit, joissa ohjelman käyttöliittymää ei päästä käynnistämään virheellisten komentoriviparametrien vuoksi. Testissä ohjelmalle annettavat komennot ovat input-alkuisessa tiedostossa. Komentoja vastaavat näyttötulosteet ovat vastaavassa output-alkuisessa tiedostossa. Testit ajetaan aina siten, että syötetiedoston ensimmäinen komento on echo, jolloin syötteet limittyvät tulosten väliin ja tulos on sama kuin testiä komentoikkunassa ajettaessa. Tässä työssä ei ole siksi saatavilla erikseen pelkästään tulosteet sisältäviä tiedostoja.
Ohjelmalle komentoriviparametrina annettavat kokoelma ja sulkusanalista ovat omissa tiedostoissaan. Näet kussakin testissä käytetyt kokoelma- ja sulkusanatiedostot alla olevasta taulukosta, jossa on annettu komentoparametrien arvot, joilla ohjelma on käynnistetty tai yritetty käynnistää kussakin testissä. Taulukossa on kerrottu myös, jos testi on tarkoitettu vain työn laajalle versiolle.
Ohjelmalle annetaan args1-, args2– ja args3-testeissä väärä määrä komentoriviparametreja, kun taas x_file1-, x_file2– ja x_file3-testeissä jompikumpi tai molemmat tiedostot ovat hukassa. Näihin testeihin ei liity input-tiedostoja.
Testi | Komentoriviparametrit | Vain laajan työn testi |
brain_check | jokes_oldies.txt stop_words.txt | ei |
print1 | jokes_oldies.txt stop_words.txt | ei |
print2 | news_reuters.txt stop_words.txt | ei |
args1 | ei | |
args2 | jokes_oldies.txt | ei |
args3 | jokes_oldies.txt stop_words.txt news_reuters.txt | ei |
x_file1 | x_file1.txt stop_words.txt | ei |
x_file2 | jokes_oldies.txt x_file2.txt | ei |
x_file3 | x_file1.txt x_file2.txt | ei |
assignment1 | jokes_oldies.txt stop_words.txt | ei |
assignment2 | jokes_oldies.txt stop_words.txt | kyllä |
add1 | jokes_oldies.txt stop_words.txt | ei |
add2 | news_reuters.txt stop_words.txt | ei |
find1 | jokes_oldies.txt stop_words.txt | ei |
find2 | news_reuters.txt stop_words.txt | ei |
remove1 | jokes_oldies.txt stop_words.txt | ei |
remove2 | news_reuters.txt stop_words.txt | ei |
reset1 | jokes_oldies.txt stop_words.txt | ei |
reset2 | news_reuters.txt stop_words.txt | ei |
polish1 | jokes_oldies.txt stop_words.txt | ei |
polish2 | news_reuters.txt stop_words.txt | ei |
use_case1 | jokes_bad.txt stop_words_mysql.txt | ei |
use_case2 | news_bbc.txt stop_words_insight.txt | ei |
freqs1 | jokes_oldies.txt stop_words.txt | kyllä |
freqs2 | news_reuters.txt stop_words.txt | kyllä |
sort1 | jokes_oldies.txt stop_words.txt | kyllä |
sort2 | news_reuters.txt stop_words.txt | kyllä |
pprint1 | jokes_oldies.txt stop_words.txt | kyllä |
pprint2 | news_reuters.txt stop_words.txt | kyllä |
use_case3 | jokes_bad.txt stop_words_mysql.txt | kyllä |
use_case4 | news_bbc.txt stop_words_insight.txt | kyllä |
Omaa ohjelmaa voi testata omatoimisesti komentoikkunassa WETO:n tapaan uudelleenohjausta käyttämällä.
Esimerkiksi brain_check-testin voi ajaa seuraavasti:
java Oope2HT jokes_oldies.txt stop_words.txt < input_brain_check.txt
jolloin ohjelma lukee syötteet input_brain_check.txt-tiedostosta ilman, että tiedoston syötteitä tarvitsee antaa ohjelmalle käsin. Ohjelma tulostaa normaaliin tapaan näytölle. Edellä oletetaan, että syötetiedosto on samassa hakemistossa kuin harjoitustyöohjelma.
Uudelleenohjausta voi hyödyntää laajemmin näin:
java Oope2HT jokes_oldies.txt stop_words.txt < input_brain_check.txt > out.txt
Yllä testin syötteet ohjataan syötetiedostosta ohjelmalle ja ohjelman tuloste kaapataan out.txt-tiedostoon uudelleenohjauksen avulla.
Out.txt-tiedoston sisältöä voi vertailla output_brain_check.txt-tiedostossa oleviin malliohjelman tulosteisiin joko silmämääräisesti tai tiedostoja vertailevalla käyttöjärjestelmän komennolla. Windowsissa tällainen komento on fc ja Mac- ja Linux-järjestelmissä monimutkaisempi diff.
Edellisen esimerkin tulosteita voisi vertailla Windowsissa näin:
fc output_brain_check.txt out.txt
kun myös testin tulostiedosto on harjoitustyöohjelman hakemistossa.
Tämän työn testitiedostot kannattaa pitää pois versionhallinnan piiristä, jotta oma lähdekoodi ja opettajan luomat testitiedostot olisivat selvemmin erillään. Oletetaan, että testitiedostot ovat Windows-järjestelmässä työhakemiston ylihakemiston esimerkit-nimisessä alihakemistossa. Tällöin edellä annetut komennot olisivat:
java Oope2HT ..\esimerkit\jokes_oldies.txt ..\esimerkit\stop_words.txt < ..\esimerkit\input_brain_check.txt
java Oope2HT ..\esimerkit\jokes_oldies.txt ..\esimerkit\stop_words.txt < ..\esimerkit\input_brain_check.txt
> ..\out.txt
fc ..\esimerkit\output_brain_check.txt ..\out.txt