This commit is contained in:
Kristian Knarvik 2020-02-27 17:16:40 +01:00
commit 9f08c585cc
6 changed files with 42 additions and 17 deletions

View File

@ -46,7 +46,7 @@
* Kan bli bedre til å ta initiativet med å begynne på oppgaver.
* Vi synes det var en god idea å planlegge klasse strukturne felles i et gruppe rom. Det gav alle en god oversikt over
hva de forskjellige klassen måtte inneholde.
hva de forskjellige klassen måtte inneholde.
* Vi har brukt parprogramering som har gjordt at commitsene har blitt veldig forskjøvet.
@ -101,7 +101,7 @@ hva de forskjellige klassen måtte inneholde.
* Som vegg må jeg kunne stoppe en robot fra å gå gjennom meg for å hindre den i å gjøre et ugyldig trekk.
* Som vegg må jeg kunne bli plassert i forskjellige retninger for
å kunne bestemme den funksjonelle retningen til veggen.
å kunne bestemme den funksjonelle retningen til veggen.
*Akseptansekrav*
* En robot som prøver å gå gjennom en vegg blir stoppet.
@ -131,7 +131,7 @@ hva de forskjellige klassen måtte inneholde.
* Legg til en metode som fjerner en robot fra brettet.
* Legg til en metode som sjekker positionen til roboten for å se om den er gått i et hull eller om den har gått
utenfor brettet.
utenfor brettet.
#### Brukerhistorier for krav 4
*Brukerhistorie*
@ -139,7 +139,7 @@ utenfor brettet.
*Akseptansekrav*
* Hvis en robot beveger seg til en position hvor det er en annen robot vil den andre roboten bli dyttet så lenge den
kan bli dyttet.
kan bli dyttet.
* Hvis den andre roboten blir blokkert av en vegg så kan den ikke bli dyttet og ingen av robotene flytter på seg.
@ -201,11 +201,10 @@ kan bli dyttet.
*Hovedkrav til MVP*
* Alle de syv første kravene føler vi er en del av MVP, mens krav 8: Vise hendelser som skjer på skjermen med en
forsinkelse slik at spilleren ser bevegelsene i spillet, ikke er nødvendig for at spillet skal fungere.
forsinkelse slik at spilleren ser bevegelsene i spillet, ikke er nødvendig for at spillet skal fungere.
* Vi har fulgt prioritering av kravene i MVP, men også implementert noen "nice to have" som vi synes er viktig for
spilleropplevelsen.
spilleropplevelsen.
* Siden sist har vi jobbet mer på brett og spilleren og jobbet med krav 1-7.
@ -213,6 +212,10 @@ spilleropplevelsen.
* Vi vet ikke om noen bugs i koden. Alle kjente bugs har blitt fikset underveis.
*Kjøredetaljer*
* Siden vi ikke er ferdig med spillet, blir det nå i stedet kjørt en automatisk demo når main kjøres.
* Demoen demonstrerer funskjonalitet ved flytting av roboter.
## UML
![UML](../Deliverables/Umls/UmlOblig2.png "UML Oblig 2")
![UML](../Deliverables/Umls/UmlOblig2WithoutDependencies.png "UML Oblig 2 uten avhengigheter")

View File

@ -5,6 +5,9 @@ vil vi gå over til en fase der målet blir å implementere ting som er gøy, me
Alle regler er hentet fra 2005 utgaven av spillguiden fra Wizards of the Coast, Inc.
## Spillstatus
Ved kjøring av main blir det kjørt en demo, uten mulighet for bruker å bevege robot.
## Bygging og kompilering
### Forkrav for å kunne kompilere og kjøre koden

View File

@ -1,23 +1,46 @@
package inf112.fiasko.roborally.element_properties;
import inf112.fiasko.roborally.element_properties.Position;
import org.junit.Before;
import org.junit.Test;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.*;
public class PositionTest {
private Position testPosition;
private Position testPosition1;
private Position testPosition2;
private Position testPosition3;
private Position testPosition4;
private Position testPosition5;
private Position testPosition6;
@Before
public void setUp() {
testPosition = new Position(3, 4);
testPosition1 = new Position(3, 4);
testPosition2 = new Position(2, 3);
testPosition3 = new Position(3, 4);
testPosition4 = new Position(3, 3);
testPosition5 = new Position(1, 4);
testPosition6 = new Position(3, 3);
}
@Test
public void testGetXPosition(){
assertEquals(3,testPosition.getXCoordinate());
assertEquals(3,testPosition1.getXCoordinate());
}
@Test
public void testGetYPosition(){
assertEquals(4,testPosition.getYCoordinate());
assertEquals(4,testPosition1.getYCoordinate());
}
@Test
public void testSamePositionsAreEqual() { assertEquals(testPosition1, testPosition3);}
@Test
public void testDifferentPositionsAreNotEqual() { assertNotEquals(testPosition2, testPosition4);}
@Test
public void equalXandDifferentYIsNotEqual() { assertNotEquals(testPosition1, testPosition6);}
@Test
public void equalYandDifferentXIsNotEqual() { assertNotEquals(testPosition1, testPosition5);}
}

View File

@ -1,6 +1,5 @@
package inf112.fiasko.roborally.element_properties;
import inf112.fiasko.roborally.element_properties.TileType;
import org.junit.Test;
import java.util.ArrayList;

View File

@ -1,7 +1,5 @@
package inf112.fiasko.roborally.element_properties;
import inf112.fiasko.roborally.element_properties.TileType;
import inf112.fiasko.roborally.element_properties.WallType;
import org.junit.Test;
import java.util.ArrayList;

View File

@ -1,7 +1,6 @@
package inf112.fiasko.roborally.objects;
import inf112.fiasko.roborally.element_properties.Direction;
import inf112.fiasko.roborally.objects.Wall;
import inf112.fiasko.roborally.element_properties.WallType;
import static org.junit.Assert.assertEquals;
import org.junit.Test;