BigMacIndex Deel 2
De Big Mac-index - een schepping van het Britse weekblad The Economist in 1986 - is een informele berekeningswijze van koopkrachtpariteit gebaseerd op de prijs van een Big Mac in een bepaald land. De index maakt een vergelijking tussen de verschillende valuta's ten opzichte van een gekozen basismunt. Door de koopkracht van deze basismunt te vergelijken met die van een andere munt, kan men zien hoeveel die munt 'eigenlijk' waard is en of de wisselkoers te hoog of te laag is.

Deel 2: Klasse BigMacIndexAnalyse (6 punten)
Testdata:
LAND | Prijs Big Mac |
Zwitserland | 6,50 CHF |
Rusland | 130 RUB |
India | 100 RUP |
VS | 5,06 USD |
Brazilie | 16,5 BRL |
Hierbij nog wat uitleg over de Dodona-testen voor deze oefening:
- test00objectConcept: test of de ingediende klasse de verwachte de klasse definitie heeft (interface/abstracte klasse/klasse/enum/…).
- test01inheritance: test of de ingediende klasse de verwachte superklasse heeft en de verwachte interfaces implementeert.
- test02variables_presence: test of de ingediende klasse de verwachte instantievariabelen en statische variabelen definieert.
- test03variables_staticInitialValue: test of de statische variabelen van de klasse geinitialiseerd worden met de verwachte waarde (indien van toepassing).
- test04constructorsPresence: test of de ingediende klasse de verwachte constructor(en) definieert (= test geen effect!) (indien van toepassing).
- test05constructor: test of de constructor het gewenste effect heeft (indien van toepassing).
- test06methodsPresent: test of de verwachte methodes aanwezig zijn in de ingediende klasse en of de methode definities overeenkomen met de verwachte definities (= test geen effect!).
- test07accessorsMutators: test of de ingediende klasse de al dan niet verwachte accessor- en mutatormethodes definieert en of deze het verwachte effect hebben.
- test08uitvoerenAnalyse: test de uitvoerenAnalyse-methode. Indien de test succesvol is, scoor je de maximale punten voor deze methode.
- test09uitvoerenAnalyse_nietInit: test de uitvoerenAnalyse-methode. Er worden ook oplossingen aanvaard die de instantievariabele
indices
niet initialiseren, maar voor de rest wel correct werken.
- test10uitvoerenAnalyse_berekenSwitchParams: test de uitvoerenAnalyse-methode. Er worden ook oplossingen aanvaard die de berekenBigMacIndex-methode van BigMacIndex oproepen met omgewisselde parameters, maar voor de rest wel correct werken.
- test11uitvoerenAnalyse_berekenSwitchParams_nietInit: test de uitvoerenAnalyse-methode. Er worden ook oplossingen aanvaard die de instantievariabele
indices
niet initialiseren en berekenBigMacIndex-methode van BigMacIndex oproepen met omgewisselde parameters, maar voor de rest wel correct werken.
- test12uitvoerenAnalyse_5: test de uitvoerenAnalyse-methode. Er worden ook oplossingen aanvaard die enkel correct werken indien de meegegeven arrays exact 5 elementen bevatten.
- test13uitvoerenAnalyse_minderDan5: test de uitvoerenAnalyse-methode. Er worden ook oplossingen aanvaard die enkel correct werken indien de meegegeven arrays minder dan 5 elementen bevatten.
- test14uitvoerenAnalyse_meerDan5: test de uitvoerenAnalyse-methode. Er worden ook oplossingen aanvaard die enkel correct werken indien de meegegeven arrays meer dan 5 elementen bevatten.
- test15uitvoerenAnalyse_enkelLeeg_5: test de uitvoerenAnalyse-methode. Er worden ook oplossingen aanvaard die enkel correct werken indien de meegegeven arrays exact 5 elementen bevatten en de instantie variabele
indices
vooraf leeg was (= dus dat deze methode vooraf nog nooit opgeroepen was met andere parameters).
- test16uitvoerenAnalyse_enkelLeeg_minderDan5: test de uitvoerenAnalyse-methode. Er worden ook oplossingen aanvaard die enkel correct werken indien de meegegeven arrays minder dan 5 elementen bevatten en de instantie variabele
indices
vooraf leeg was (= dus dat deze methode vooraf nog nooit opgeroepen was met andere parameters).
- test17uitvoerenAnalyse_enkelLeeg_meerDan5: test de uitvoerenAnalyse-methode. Er worden ook oplossingen aanvaard die enkel correct werken indien de meegegeven arrays meer dan 5 elementen bevatten en de instantie variabele
indices
vooraf leeg was (= dus dat deze methode vooraf nog nooit opgeroepen was met andere parameters).
- test18toString: test de toString-methode. Indien de test succesvol is, scoor je de maximale punten voor deze methode.
- test19toString_enkel1: test de toString-methode. Er worden ook oplossingen aanvaard die enkel correct werken indien de instantievariabele
indices
slechts 1 element bevat.
- test20toString_enkel5: test de toString-methode. Er worden ook oplossingen aanvaard die enkel correct werken indien de instantievariabele
indices
exact 5 elementen bevat.
- test21toString_minderDan5: test de toString-methode. Er worden ook oplossingen aanvaard die enkel correct werken indien de instantievariabele
indices
minder dan 5 elementen bevat.
- test22toString_meerDan5: test de toString-methode. Er worden ook oplossingen aanvaard die enkel correct werken indien de instantievariabele
indices
meer dan 5 elementen bevat.
- test23toString_sysoutIpvReturn: test de toString-methode maar er worden ook oplossingen aanvaard die de gevraagde tekst naar de console uitprinten ipv teruggeven als String.
- test24main: test de main-methode. Indien de test succesvol is, scoor je de maximale punten voor deze methode.
Let op:
- Bij de beoordeling van het examen wordt niet enkel naar de resultaten van de tests gezien. Het is niet omdat een bepaalde test niet succesvol is, dat er automatisch punten afgetrokken worden. Bij het verbeteren wordt rekening gehouden met de resultaten van de testen, maar de beoordeling is nog altijd de code zelf (niet enkel het resultaat).
- Indien er niets over punten bij een test staat, zijn de resultaten louter indicatief. De resultaten van deze testen worden bij de beoordeling meegenomen, maar staan dus niet rechtstreeks voor een bepaald aantal punten.