mirror of
https://github.com/inf112-v20/Fiasko.git
synced 2025-02-01 07:39:35 +01:00
Gjør det mulig å sjekke om to retninger står rett på hverandre
This commit is contained in:
parent
693b9fb886
commit
7635c33d8a
@ -45,6 +45,17 @@ public enum Direction {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Checks whether two directions are perpendicular
|
||||||
|
* @param direction1 The first direction
|
||||||
|
* @param direction2 The second direction
|
||||||
|
* @return True if the directions are perpendicular
|
||||||
|
*/
|
||||||
|
public static boolean arePerpendicular(Direction direction1, Direction direction2) {
|
||||||
|
return direction1.equals(getLeftRotatedDirection(direction2)) ||
|
||||||
|
direction1.equals(getRightRotatedDirection(direction2));
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets the reverse of a direction
|
* Gets the reverse of a direction
|
||||||
* @param direction A direction
|
* @param direction A direction
|
||||||
|
@ -8,7 +8,9 @@ import java.util.List;
|
|||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
import static org.junit.Assert.assertEquals;
|
import static org.junit.Assert.assertEquals;
|
||||||
|
import static org.junit.Assert.assertFalse;
|
||||||
import static org.junit.Assert.assertNull;
|
import static org.junit.Assert.assertNull;
|
||||||
|
import static org.junit.Assert.assertTrue;
|
||||||
|
|
||||||
public class DirectionTest {
|
public class DirectionTest {
|
||||||
|
|
||||||
@ -176,4 +178,34 @@ public class DirectionTest {
|
|||||||
public void getLeftRotatedDirectionFromSouthWest() {
|
public void getLeftRotatedDirectionFromSouthWest() {
|
||||||
assertEquals(Direction.SOUTH_EAST, Direction.getLeftRotatedDirection(Direction.SOUTH_WEST));
|
assertEquals(Direction.SOUTH_EAST, Direction.getLeftRotatedDirection(Direction.SOUTH_WEST));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void eastAndWestArePerpendicular() {
|
||||||
|
assertFalse(Direction.arePerpendicular(Direction.EAST, Direction.WEST));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void eastAndNorthArePerpendicular() {
|
||||||
|
assertTrue(Direction.arePerpendicular(Direction.EAST, Direction.NORTH));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void eastAndSouthArePerpendicular() {
|
||||||
|
assertTrue(Direction.arePerpendicular(Direction.EAST, Direction.SOUTH));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void northAndSouthArePerpendicular() {
|
||||||
|
assertFalse(Direction.arePerpendicular(Direction.NORTH, Direction.SOUTH));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void northAndWestArePerpendicular() {
|
||||||
|
assertTrue(Direction.arePerpendicular(Direction.NORTH, Direction.WEST));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void southAndWestArePerpendicular() {
|
||||||
|
assertTrue(Direction.arePerpendicular(Direction.SOUTH, Direction.WEST));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user