Oppgaven består av følgende deler, som ligger inne i hver sin pakke. (Noen deler har samme pakke da de benytter seg av samme klasser)
- Kommer
## Oppgave format
Oppgavebeskrivelsene finner dere under hver del. Det vil si src/main/java/del1/del1.md inneholder oppgavebeskrivelsen for del 1. Oppgavene har en tekstbeskrivelse, men denne er ikke alltid utfyllende. De mest utfyllende kravene til en metode står i dens javadoc-beskrivelse, altså en kommentar som står før metoden selv i kildekoden. I utgangspunktet trenger dere kunne å bruke .md-filene for å navigere til riktige klasser som faktisk skal implementeres, alt av krav til metoder står i selve Java-docen. Det er likevel i mange oppgaver spesifisert hvilke metoder som skal implementeres, og hva disse skal gjøre, men dette står da og i Java-docen, og kun Java-docen inneholder informasjon om f.eks Exceptions som skal utløses. Dersom du mener at Java-docs og oppgavebeskrivelse inneholder motstridende informasjon, ta først og fremst hensyn til det som står i Java-docen.
Et web-view av Java-docen kan og bli sett av å apne doc/index.html filen i prosjektet.
Hvis du ikke skulle klare å implementere en metode i en del kan du selvfølgelig bruke denne videre som om den virket (som i tidligere 'papireksamener'). Merk at metoden bør fortsatt kompilere, alle metoder kompilerer ved hjelp av *dummy* return verdier.
Alle klasser som vurderes for karakterering må kompilere. Dette betyr at du ikke skal ha noen "unresolved compilation problem" -feil eller røde linjer i Eclipse for en gitt klasse.
Unntak i koden som NullPointerException er ikke kompileringsproblemer (men vil selvfølgelig ikke få full poengsum). Dere bør teste deres egen kode slik at dere vet at denne kjører. For å hjelpe med dette har de fleste deler main-metode som inneholder noe kode for å teste implementeringen. Disse main-metodene tester ikke nødvendigvis alle tilfeller så du oppfordres til å utvide med dine egne metoder. Denne koden bør fortsatt kompilere, men trenger ikke fjernes ved levering.
## Navigering
Oppgave beskrivelsene kan brukes som hjelp til å navigere til riktige filer. Når du har åpent en .md-fil kan du trykke på **Preview**-fanen i Eclipse for å få dette på en mer leselig måte.
Alle metodene dere skal fylle inn er og markert med //TODO. Du kan få opp alle steder hvor dette står med å apne **Tasks**-viewet i Eclipse. Dette finner du ved **Window > Show View > Other** og søke på *tasks*.
## Besvarelse
*Oppgaveteksten* finnes i **del1.md**-filer og andre md-filer i prosjektet og kan leses både på gitlab og i IDE-en. Versjoner på nynorsk og engelsk finnes i egne filer. Eclipse-editoren for md-filer har en **Preview**-fane som gjør det lett å lese og navigere.
Oppgaven *besvares* ved å bygge videre på kode-filene som er der, og fylle inn evt antakelser du gjør, i en separat md-fil (oppgavekommentarer.md)
## Nedlasting og import
*Nedlasting* og *import* skjer enten ved å laste ned en zip-fil fra repo-sida på gitlab eller Inspera, eller ved å klone git-repoet.
Ved *import av zip-fil*, så skal veiviseren **Import > Maven > Existing Maven Projects** brukes. Naviger til den nedlastede zip-filen (husk og åpne zip-filen først) og velg mappen som gjør at pom.xml filen ligger inne i denne. Ved import av zip-fil bør du og bytte navn på prosjektet hvis du laster det ned på forhånd, så du ikke får konflikt med navngivning når du skal laste ned selve eksamen.
*Import med kloning* skjer med en annen veiviser, som beskrevet på følgende wiki-side: <https://www.ntnu.no/wiki/display/tdt4100/Importere+kode+fra+git> .
Dersom det blir konflikter når dere puller kan dere høyreklikke og *Replace with > Head Revision * på prosjektet.
## Levering
Når eksamen skal leveres kan du gjøre dette på denne måten:
**Zippe i Windows**
- Høyreklikk på prosjektikonet i 'Package Explorer' helt til venstre i Eclipse.
- Velg 'Show in' -> click 'System Explorer'.
- Du skal nå få opp et utforskervindu (ikke i Eclipse, men i Windows) som står åpent i en folder som sannsynligvis slutter på git. For meg er det _'C:\Users\borgeha\git'_ Denne folderen inneholder prosjektfolderen vi skal komprimere.
- Høyreklikk prosjektfolderen, den skal hete kont-2021 -> meny 'Send til' -> 'Komprimert (zippet) mappe'.
- Windows komprimerer nå prosjektfolderen kont-2021, og spør deg hva den skal kalles La den hete det som foreslås.
- Denne zipfilen er filen dere skal laste opp til Inspera til slutt.
- Dere finner et par bilder av prosessen til slutt i denne filen.
**Zippe i OS X**
- Følg instruksjonene som for Windows overfor, men ting har andre navn.
- Høyreklikk prosjektet i Eclipse -> 'Åpne i Finder'
- Høyreklikk prosjektfolderen og velg 'Komprimer'
- Filen du får er den som skal lastes opp til Inspera.
Oppgavebeskrivelsene finner dere under hver del. Det vil si src/main/java/del1/del1.md inneholder oppgavebeskrivelsen for del 1. Oppgavene har en tekstbeskrivelse, men denne er ikke alltid utfyllende. De mest utfyllende kravene til en metode står i dens javadoc-beskrivelse, altså en kommentar som står før metoden selv i kildekoden. I utgangspunktet trenger dere kunne å bruke .md-filene for å navigere til riktige klasser som faktisk skal implementeres, alt av krav til metoder står i selve Java-docen. Det er likevel i mange oppgaver spesifisert hvilke metoder som skal implementeres, og hva disse skal gjøre, men dette står da og i Java-docen, og kun Java-docen inneholder informasjon om f.eks Exceptions som skal utløses. Dersom du mener at Java-docs og oppgavebeskrivelse inneholder motstridende informasjon, ta først og fremst hensyn til det som står i Java-docen.
Et web-view av Java-docen kan og bli sett ved å åpne filen doc/index.html prosjektet.
Hvis du ikke skulle klare å implementere en metode i en del kan du selvfølgelig bruke denne videre som om den virket (som i tidligere 'papireksamener'). Merk at metoden bør fortsatt kompilere, alle metoder kompilerer ved hjelp av *dummy* return verdier, som er verdier av riktig type, men ikke korrekte return-verdi.
Alle klasser som vurderes for karakterering må kompilere. Dette betyr at du ikke skal ha noen "unresolved compilation problem" -feil eller røde linjer i Eclipse for en gitt klasse.
Unntak i koden som NullPointerException er ikke kompileringsproblemer (men vil selvfølgelig ikke få full poengsum). Dere bør teste deres egen kode slik at dere vet at denne kjører. For å hjelpe med dette har de fleste deler main-metode som inneholder noe kode for å teste implementeringen. Disse main-metodene tester ikke nødvendigvis alle tilfeller så du oppfordres til å utvide med dine egne metoder. Denne koden bør fortsatt kompilere, men trenger ikke fjernes ved levering.
## Navigering
Oppgavebeskrivelsene kan brukes som hjelp til å navigere til riktige filer. Når du har åpent en .md-fil kan du trykke på **Preview**-fanen i Eclipse for å få dette på en mer leselig måte.
Alle metodene dere skal fylle inn er og markert med //TODO. Du kan få opp alle steder hvor dette står med å apne **Tasks**-viewet i Eclipse. Dette finner du ved **Window > Show View > Other** og søke på *tasks*.
## Besvarelse
*Oppgaveteksten* finnes i **del1.md**-filer og andre md-filer i prosjektet og kan leses både på gitlab og i IDE-en. Versjoner på nynorsk og engelsk finnes i egne filer. Eclipse-editoren for md-filer har en **Preview**-fane som gjør det lett å lese og navigere.
Oppgaven *besvares* ved å bygge videre på kode-filene som er der, og fylle inn evt antakelser du gjør, i en separat md-fil (oppgavekommentarer.md)
## Nedlasting og import
*Nedlasting* og *import* skjer enten ved å laste ned en zip-fil fra repos-sida på gitlab eller Inspera, eller ved å klone git-reposet. Samme zip-fil ligger også som element her på Bb.
Ved *import av zip-fil*, så skal veiviseren **Import > Maven > Existing Maven Projects** brukes. Naviger til den nedlastede zip-filen (husk og åpne zip-filen først) og velg mappen som gjør at pom.xml filen ligger inne i denne. Ved import av zip-fil bør du og bytte navn på prosjektet hvis du laster det ned på forhånd, så du ikke får konflikt med navngivning når du skal laste ned selve eksamen.
*Import med kloning* skjer med en annen veiviser, som beskrevet på følgende wiki-side: <https://www.ntnu.no/wiki/display/tdt4100/Importere+kode+fra+git>. Lenken en da kan klone er *https://gitlab.stud.idi.ntnu.no/tdt4100/v2021/kont-2021*.
Dersom det blir konflikter når dere puller kan dere høyreklikke og *Replace with > Head Revision * på prosjektet.
## Levering
Når eksamen skal leveres kan du gjøre dette på denne måten:
**Zippe i Windows**
- Høyreklikk på prosjektikonet i 'Package Explorer' helt til venstre i Eclipse.
- Velg 'Show in' -> click 'System Explorer'.
- Du skal nå få opp et utforskervindu (ikke i Eclipse, men i Windows) som står åpent i en folder som sannsynligvis slutter på git. For meg er det _'C:\Users\borgeha\git'_ Denne folderen inneholder prosjektfolderen vi skal komprimere.
- Høyreklikk prosjektfolderen, den skal hete kont2021 -> meny 'Send til' -> 'Komprimert (zippet) mappe'.
- Windows komprimerer nå prosjektfolderen kont2021, og spør deg hva den skal kalles La den hete det som foreslås.
- Denne zipfilen er filen dere skal laste opp til Inspera til slutt.
- Dere finner et par bilder av prosessen til slutt i denne filen.
**Zippe i OS X**
- Følg instruksjonene som for Windows overfor, men ting har andre navn.
- Høyreklikk prosjektet i Eclipse -> 'Åpne i Finder'
- Høyreklikk prosjektfolderen og velg 'Komprimer'
- Filen du får er den som skal lastes opp til Inspera.
The task consists of the following parts, which are inside separate packages. (Some parts have the same package as they use the same classes)
Coming
## Exam format
Task descriptions can be found under each package. That is src/main/java/del1/del1_en.md contains the task description for part 1. The tasks have a text description, but this is not always complete. The most comprehensive requirements for a method are in its javadoc description, ie a comment that precedes the method itself in the source code. Basically, you can use the .md files to navigate to the right classes that are actually to be implemented, all of the requirements for methods are in the Java doc itself. It is nevertheless specified in many tasks which methods are to be implemented and what these are to do, but this is also stated in the Java-doc, and only the Java-doc contains information about eg Exceptions to be triggered. If you think there's differences in the task description and the Java-doc, consider the java-docs the source of truth.
A web-page view of the Java-doc can be seen by opening the docs/index.html file in the project.
If you are not be able to implement a method in a part, you can of course continue to use it as if it worked (as in previous 'paper exams'). The method should still compile, but all skeleton code provided by us will compile initially.
All classes considered for grading must compile. This means that you should not have any "unresolved compilation problem" errors or red lines in Eclipse for a given class.
Exceptions in the code such as NullPointerException are not compilation problems (but will of course not get the full score). You should test your own code so that you know it is running. To help with this, most parts have main method that contains some code to test the implementation. These main methods do not necessarily test all cases so you're encouraged to extend it with your own testing. This testing should compile but otherwise there's no need to remove it before delivery.
## Navigation
Task descriptions can be used to help navigate to the correct files. Once you have opened a .md file, you can press the **Preview** tab in Eclipse to make it more readable.
All the methods you have to fill in are marked with // TODO. You can get up all //TODOs this is by opening the **Tasks** view in Eclipse. This can be found at **Window> Show View> Other** and search for * tasks *.
## Answer
* The thesis text * can be found in ** del1.md ** files and other md files in the project and can be read both on gitlab and in the IDE. Versions in Nynorsk and English can be found in separate files. The Eclipse editor for md files has a ** Preview ** tab that makes it easy to read and navigate.
The task *is answered* by building on the code files that are there, and in any comments on the code, e.g. assumptions you make, in a separate md file (oppgavekommentarer.md)
## Download and import
Download* and *import* is done either by downloading a zip file from the repo page on gitlab or Inspera, or by cloning the git repo.
For *import of zip file*, the wizard **Import> Maven> Existing Maven Projects** should be used. Navigate to the downloaded zip file (remember to open the zip file first) and select the folder that contains the pom.xml file. When importing a zip file, you should also change the name of the project if you download it in advance, so that you do not have a conflict with naming when you download the exam itself.
* Import with cloning * takes place with another wizard, as described on the following wiki page: <https://www.ntnu.no/wiki/display/tdt4100/Importe+kode+fra+git>.
If there are conflicts when you pull, you can right-click and * Replace with> Head Revision * on the project.
## Delivery
When you are ready to deliver your exam, your project folder needs to be zipped and uploaded to Inspera. You can prepare the zip file like this:
**Zipping in Windows**
- Right-click the project icon in the leftmost 'Package Explorer' window in Eclipse.
- Choose 'Show in' -> click 'System Explorer'.
- You should now have a System Explorer window (not in Eclipse) open in a folder that most likely ends with 'git', for me it is 'C:\Users\borgeha\git'. The folder we want to compress is the project folder inside this git folder.
- Right click the project folder kont-2021 -> Send to -> Compressed (zipped) folder.
- Windows now compresses this folder into the git folder, and asks you to name it. Leave it as it is.
- This zip file is the one you shall upload to Inspera.
- You'll find a couple of screen shots of the process below.
**Zipping in OS X**
- Follow the same guideline as for Windows above, but instead chose to open in 'Finder'.
- Inside the Finder, right click kont-2021 and choose 'Compress'
- The resulting file is the one you upload to Inspera.
Task descriptions can be found under each package. That is src/main/java/del1/del1_en.md contains the task description for part 1. The tasks have a text description, but this is not always complete. The most comprehensive requirements for a method are in its javadoc description, ie a comment that precedes the method itself in the source code. Basically, you can use the .md files to navigate to the right classes that are actually to be implemented, all of the requirements for methods are in the Java doc itself. It is nevertheless specified in many tasks which methods are to be implemented and what these are to do, but this is also stated in the Java-doc, and only the Java-doc contains information about eg Exceptions to be triggered. If you think there's differences in the task description and the Java-doc, consider the java-docs the source of truth.
A web-page view of the Java-doc can be seen by opening the docs/index.html file in the project.
If you are not be able to implement a method in a part, you can of course continue to use it as if it worked (as in previous 'paper exams'). The method should still compile, but all skeleton code provided by us will compile initially.
All classes considered for grading must compile. This means that you should not have any "unresolved compilation problem" errors or red lines in Eclipse for a given class.
Exceptions in the code such as NullPointerException are not compilation problems (but will of course not get the full score). You should test your own code so that you know it is running. To help with this, most parts have main method that contains some code to test the implementation. These main methods do not necessarily test all cases so you're encouraged to extend it with your own testing. This testing should compile but otherwise there's no need to remove it before delivery.
## Navigation
Task descriptions can be used to help navigate to the correct files. Once you have opened a .md file, you can press the **Preview** tab in Eclipse to make it more readable.
All the methods you have to fill in are marked with // TODO. You can get up all //TODOs this is by opening the **Tasks** view in Eclipse. This can be found at **Window> Show View> Other** and search for * tasks *.
## Answer
* The thesis text * can be found in ** del1.md ** files and other md files in the project and can be read both on gitlab and in the IDE. Versions in Nynorsk and English can be found in separate files. The Eclipse editor for md files has a ** Preview ** tab that makes it easy to read and navigate.
The task *is answered* by building on the code files that are there, and in any comments on the code, e.g. assumptions you make, in a separate md file (oppgavekommentarer.md)
## Download and import
Download* and *import* is done either by downloading a zip file from the repo page on gitlab or Inspera, or by cloning the git repo. The same zip file is also an element here on Bb.
For *import of zip file*, the wizard **Import> Maven> Existing Maven Projects** should be used. Navigate to the downloaded zip file (remember to open the zip file first) and select the folder that contains the pom.xml file. When importing a zip file, you should also change the name of the project if you download it in advance, so that you do not have a conflict with naming when you download the exam itself.
* Import with cloning * takes place with another wizard, as described on the following wiki page: <https://www.ntnu.no/wiki/display/tdt4100/Importe+kode+fra+git>.
If there are conflicts when you pull, you can right-click and * Replace with> Head Revision * on the project.
## Delivery
When you are ready to deliver your exam, your project folder needs to be zipped and uploaded to Inspera. You can prepare the zip file like this:
**Zipping in Windows**
- Right-click the project icon in the leftmost 'Package Explorer' window in Eclipse.
- Choose 'Show in' -> click 'System Explorer'.
- You should now have a System Explorer window (not in Eclipse) open in a folder that most likely ends with 'git', for me it is 'C:\Users\borgeha\git'. The folder we want to compress is the project folder inside this git folder.
- Right click the project folder kont2021 -> Send to -> Compressed (zipped) folder.
- Windows now compresses this folder into the git folder, and asks you to name it. Leave it as it is.
- This zip file is the one you shall upload to Inspera.
- You'll find a couple of screen shots of the process below.
**Zipping in OS X**
- Follow the same guideline as for Windows above, but instead chose to open in 'Finder'.
- Inside the Finder, right click kont2021 and choose 'Compress'
- The resulting file is the one you upload to Inspera.
Oppgåva består av følgjande delar, som ligg inne i kvar sin pakke. (Nokon delar har same pakke då dei nyttar seg av same klassar)
Kjem
## Oppgåve format
Oppgavebeskrivelsene finn de under kvar del. Det vil seia src/main/java/del1/del1.md inneheld oppgåveskildringa for del 1. Oppgåvene har ei tekstskildring, men denne er ikkje alltid utfyllande. Dei mest utfyllande krava til ein metode står i dens javadoc-beskrivelse, altså ein kommentar som står før metoden sjølv i kjeldekoden. I utgangspunktet treng de kunne å bruka .md-filene for å navigera til riktige klassar som faktisk skal implementerast, alt av krav til metodar står i sjølve Java-docen. Det er likevel i mange oppgåver spesifiserte kva metodar som skal implementerast, og kva desse skal gjera, men dette står då og i Java-docen, og berre Java-docen inneheld informasjon om f.eks Exceptions som skal utløysast. Dersom du meiner at Java-docs og oppgåveskildring inneheld motstridande informasjon, ta først og fremst omsyn til det som står i Java-docen.
Eit web-view av Java-docen kan og bli sett av å apne doc/index.html fila i prosjektet.
Viss du ikkje skulle klara å implementera ein metode i ein del kan du sjølvsagt bruka denne vidare som om han verka (som i tidlegare 'papireksamenar'). Merk at metoden bør framleis kompilera, alle metodar kompilerer ved hjelp av *dummy* return verdiar.
Alle klassar som blir for vurderte karakterering må kompilera. Dette betyr at du ikkje skal ha nokon "unresolved compilation problem" -feil eller raude linjer i Eclipse for ein gitt klasse.
Unntak i koden som NullPointerException er ikkje kompileringsproblemer (men vil sjølvsagt ikkje få full poengsum). De bør testa dykkar eigen kode slik at de veit at denne køyrer. For å hjelpa med dette har dei fleste delar main-metode som inneheld noko kode for å testa implementeringen. Desse main-metodene testar ikkje nødvendigvis alle tilfelle så du blir oppfordra til å utvida med dine eigne metodar. Denne koden bør framleis kompilera, men treng ikkje fjernast ved levering.
## Navigering
Oppgave skildringane kan brukast som hjelp til å navigera til riktige filer. Når du har ope ein .md-fil kan du trykka på **Preview*-fana i Eclipse for å få dette på ein meir leselig måta.
Alle metodane de skal fylla inn er og markerte med //TODO. Du kan få opp alle stader der dette står med å apne **Tasks*-viewet i Eclipse. Dette finn du ved **Window > Show View > Other** og søka på *tasks*.
## Besvarelse
Oppgaveteksten finst i **del1.md*-filer og andre md-filer i prosjektet og kan lesast både på gitlab og i IDE-en. Versjonar på nynorsk og engelsk finst i eigne filer. Eclipse-editoren for md-filer har ein **Preview*-fane som gjer det lett å lesa og navigera.
Oppgåva blir svart på* ved å bygga vidare på kode-filene som er der, og fylla evt. antakelser du gjer, i ein separat md-fil (oppgavekommentarer.md)
## Nedlasting og import
Nedlasting og import* skjer enten ved å lasta ned ein zip-fil frå repo-sida på gitlab eller Inspera, eller ved å klona git-repoet.
Ved import av zip-fil*, så skal vegvisaren *Import > Maven > Existing Maven Projects** brukast. Naviger til den nedlastede zip-filen (hugs og opne zip-filen først) og vel mappa som gjer at pom.xml fila ligg inne i denne. Ved import av zip-fil bør du og byta namn på prosjektet viss du lastar det ned på førehand, så du ikkje får konflikt med navngivning når du skal lasta ned sjølve eksamen.
Import med kloning skjer med ein annan vegvisar, som beskrive på følgjande wiki-side: <https://www.ntnu.no/wiki/display/tdt4100/Importere+kode+fra+git> .
Dersom det blir konfliktar når de pullar kan de høyreklikke og *Replace with > Head Revision * på prosjektet.
## Levering
Når eksamen skal leverast kan du gjera dette på denne måten:
**Zippe i Windows*
- Høgreklikk på prosjektikonet i 'Package Explorer' heilt til venstre i Eclipse.
- Vel 'Show in' -> click 'System Explorer'.
- Du skal no få opp eit utforskervindu (ikkje i Eclipse, men i Windows) som står ope i ein foldar som sannsynlegvis sluttar på git. For meg er det _'C:\Users\borgeha\git'_ Denne folderen inneheld prosjektfolderen vi skal komprimera.
- Høgreklikk prosjektfolderen, han skal heita kont-2021 -> meny 'Send til' -> 'Komprimert (zippet) mappe'.
- Windows komprimerer no prosjektfolderen kont-2021, og spør deg kva han skal kallast La den heite det som blir foreslått.
- Denne zipfilen er fila de skal lasta opp til Inspera til slutt.
- De finn eit par bilde av prosessen til slutt i denne fila.
**Zippe i OS X*
- Følg instruksjonane som for Windows overfor, men ting har andre namn.
- Høgreklikk prosjektet i Eclipse -> 'Åpne i Finder'
- Høgreklikk prosjektfolderen og vel 'Komprimer'
- Fila du får er den som skal lastast opp til Inspera.
Oppgavebeskrivelsene finn de under kvar del. Det vil seia src/main/java/del1/del1.md inneheld oppgåveskildringa for del 1. Oppgåvene har ei tekstskildring, men denne er ikkje alltid utfyllande. Dei mest utfyllande krava til ein metode står i dens javadoc-beskrivelse, altså ein kommentar som står før metoden sjølv i kjeldekoden. I utgangspunktet treng de kunne å bruka .md-filene for å navigera til riktige klassar som faktisk skal implementerast, alt av krav til metodar står i sjølve Java-docen. Det er likevel i mange oppgåver spesifiserte kva metodar som skal implementerast, og kva desse skal gjera, men dette står då og i Java-docen, og berre Java-docen inneheld informasjon om f.eks Exceptions som skal utløysast. Dersom du meiner at Java-docs og oppgåveskildring inneheld motstridande informasjon, ta først og fremst omsyn til det som står i Java-docen.
Eit web-view av Java-docen kan og bli sett av å apne doc/index.html fila i prosjektet.
Viss du ikkje skulle klara å implementera ein metode i ein del kan du sjølvsagt bruka denne vidare som om han verka (som i tidlegare 'papireksamenar'). Merk at metoden bør framleis kompilera, alle metodar kompilerer ved hjelp av *dummy* return verdiar.
Alle klassar som blir for vurderte karakterering må kompilera. Dette betyr at du ikkje skal ha nokon "unresolved compilation problem" -feil eller raude linjer i Eclipse for ein gitt klasse.
Unntak i koden som NullPointerException er ikkje kompileringsproblemer (men vil sjølvsagt ikkje få full poengsum). De bør testa dykkar eigen kode slik at de veit at denne køyrer. For å hjelpa med dette har dei fleste delar main-metode som inneheld noko kode for å testa implementeringen. Desse main-metodene testar ikkje nødvendigvis alle tilfelle så du blir oppfordra til å utvida med dine eigne metodar. Denne koden bør framleis kompilera, men treng ikkje fjernast ved levering.
## Navigering
Oppgave skildringane kan brukast som hjelp til å navigera til riktige filer. Når du har ope ein .md-fil kan du trykka på **Preview*-fana i Eclipse for å få dette på ein meir leselig måta.
Alle metodane de skal fylla inn er og markerte med //TODO. Du kan få opp alle stader der dette står med å apne **Tasks*-viewet i Eclipse. Dette finn du ved **Window > Show View > Other** og søka på *tasks*.
## Besvarelse
Oppgaveteksten finst i **del1.md*-filer og andre md-filer i prosjektet og kan lesast både på gitlab og i IDE-en. Versjonar på nynorsk og engelsk finst i eigne filer. Eclipse-editoren for md-filer har ein **Preview*-fane som gjer det lett å lesa og navigera.
Oppgåva blir svart på* ved å bygga vidare på kode-filene som er der, og fylla evt. antakelser du gjer, i ein separat md-fil (oppgavekommentarer.md)
## Nedlasting og import
Nedlasting og import* skjer enten ved å lasta ned ein zip-fil frå repo-sida på gitlab eller Inspera, eller ved å klona git-repoet. Same zip-fil ligg òg som element her på Bb.
Ved import av zip-fil*, så skal vegvisaren *Import > Maven > Existing Maven Projects** brukast. Naviger til den nedlastede zip-filen (hugs og opne zip-filen først) og vel mappa som gjer at pom.xml fila ligg inne i denne. Ved import av zip-fil bør du og byta namn på prosjektet viss du lastar det ned på førehand, så du ikkje får konflikt med navngivning når du skal lasta ned sjølve eksamen.
Import med kloning skjer med ein annan vegvisar, som beskrive på følgjande wiki-side: <https://www.ntnu.no/wiki/display/tdt4100/Importere+kode+fra+git> .
Dersom det blir konfliktar når de pullar kan de høyreklikke og *Replace with > Head Revision * på prosjektet.
## Levering
Når eksamen skal leverast kan du gjera dette på denne måten:
**Zippe i Windows*
- Høgreklikk på prosjektikonet i 'Package Explorer' heilt til venstre i Eclipse.
- Vel 'Show in' -> click 'System Explorer'.
- Du skal no få opp eit utforskervindu (ikkje i Eclipse, men i Windows) som står ope i ein foldar som sannsynlegvis sluttar på git. For meg er det _'C:\Users\borgeha\git'_ Denne folderen inneheld prosjektfolderen vi skal komprimera.
- Høgreklikk prosjektfolderen, han skal heita kont2021 -> meny 'Send til' -> 'Komprimert (zippet) mappe'.
- Windows komprimerer no prosjektfolderen kont2021, og spør deg kva han skal kallast La den heite det som blir foreslått.
- Denne zipfilen er fila de skal lasta opp til Inspera til slutt.
- De finn eit par bilde av prosessen til slutt i denne fila.
**Zippe i OS X*
- Følg instruksjonane som for Windows overfor, men ting har andre namn.
- Høgreklikk prosjektet i Eclipse -> 'Åpne i Finder'
- Høgreklikk prosjektfolderen og vel 'Komprimer'
- Fila du får er den som skal lastast opp til Inspera.
Ta utgangspunkt i [TestableClass](TestableClass.java). De to metodene utenom konstruktøren har feil i implementasjonen, eller håndterer ikke alle tilfeller like godt.
Fyll ut testmetodene i **TestableClassTest** i *src/test/java/del10* som skal eksponere feilene. (Testene skal feile)
-*testIsMyStringEqualsToYieldsWrongResult()* - Fanger opp et tilfelle hvor *isMyStringEqualsTo* gir feil resultat
-*testIncrementIntegerHandlesEdgeCases()* - Fanger opp et tilfelle hvor *getMyIntegerIncrement* ikke oppfører seg slik den skal
Start from [TestableClass](TestableClass.java). The two methods other than the constructor are flawed in the implementation, or do not handle all cases equally well.