added checks for method getVelocity in Test Movement in CarTest.java
This commit is contained in:
parent
dea430e418
commit
31a24120eb
|
@ -42,7 +42,7 @@ class CarTest {
|
||||||
* @param x the expected value for x coordinate
|
* @param x the expected value for x coordinate
|
||||||
* @param y the expected value for y coordinate
|
* @param y the expected value for y coordinate
|
||||||
*/
|
*/
|
||||||
void CheckNextPosition(int x, int y) {
|
void checkNextPosition(int x, int y) {
|
||||||
assertEquals(new PositionVector(x, y), car.nextPosition());
|
assertEquals(new PositionVector(x, y), car.nextPosition());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -52,7 +52,7 @@ class CarTest {
|
||||||
*/
|
*/
|
||||||
@Test
|
@Test
|
||||||
void setPosition() {
|
void setPosition() {
|
||||||
CheckNextPosition(DEFAULT_X, DEFAULT_Y);
|
checkNextPosition(DEFAULT_X, DEFAULT_Y);
|
||||||
|
|
||||||
// List of valid Positions
|
// List of valid Positions
|
||||||
List<PositionVector> validPositions = new ArrayList<>();
|
List<PositionVector> validPositions = new ArrayList<>();
|
||||||
|
@ -82,13 +82,17 @@ class CarTest {
|
||||||
assertTrue(exception);
|
assertTrue(exception);
|
||||||
|
|
||||||
// position should keep unchanged
|
// position should keep unchanged
|
||||||
CheckNextPosition(DEFAULT_X, DEFAULT_Y);
|
checkNextPosition(DEFAULT_X, DEFAULT_Y);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void checkVelocity(int x, int y) {
|
||||||
|
assertEquals(new PositionVector(x, y), car.getVelocity());
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Checks if the methods accelerate and move are working correctly with acceleration in all directions.
|
* Checks if the methods accelerate, move and getVelocity are working correctly with acceleration in all directions.
|
||||||
* Checks also if velocity is calculated correctly if method accelerate is called a second time.
|
* Checks also if velocity is calculated correctly if method accelerate is called a second time.
|
||||||
*/
|
*/
|
||||||
@Test
|
@Test
|
||||||
|
@ -98,7 +102,7 @@ class CarTest {
|
||||||
|
|
||||||
//position shouldn't be changed because velocity should be 0.
|
//position shouldn't be changed because velocity should be 0.
|
||||||
car.move();
|
car.move();
|
||||||
CheckNextPosition(DEFAULT_X, DEFAULT_Y);
|
checkNextPosition(DEFAULT_X, DEFAULT_Y);
|
||||||
|
|
||||||
for (PositionVector.Direction direction1 : directions) {
|
for (PositionVector.Direction direction1 : directions) {
|
||||||
|
|
||||||
|
@ -106,29 +110,41 @@ class CarTest {
|
||||||
setUp();
|
setUp();
|
||||||
|
|
||||||
//variables to save the actual expected result of method nextPosition
|
//variables to save the actual expected result of method nextPosition
|
||||||
int ExpectedNextPosX = DEFAULT_X;
|
int expectedNextPosX = DEFAULT_X;
|
||||||
int ExpectedNextPosY = DEFAULT_Y;
|
int expectedNextPosY = DEFAULT_Y;
|
||||||
|
|
||||||
|
//variables to save the acutal expected result of method getVelocity
|
||||||
|
int expectedVelocityX = 0;
|
||||||
|
int expectedVelocityY = 0;
|
||||||
|
|
||||||
car.accelerate(direction1);
|
car.accelerate(direction1);
|
||||||
ExpectedNextPosX += direction1.vector.getX();
|
expectedVelocityX += direction1.vector.getX();
|
||||||
ExpectedNextPosY += direction1.vector.getY();
|
expectedVelocityY += direction1.vector.getY();
|
||||||
CheckNextPosition(ExpectedNextPosX, ExpectedNextPosY);
|
expectedNextPosX += direction1.vector.getX();
|
||||||
|
expectedNextPosY += direction1.vector.getY();
|
||||||
|
checkVelocity(expectedVelocityX, expectedVelocityY);
|
||||||
|
checkNextPosition(expectedNextPosX, expectedNextPosY);
|
||||||
|
|
||||||
car.move();
|
car.move();
|
||||||
ExpectedNextPosX += direction1.vector.getX();
|
expectedNextPosX += direction1.vector.getX();
|
||||||
ExpectedNextPosY += direction1.vector.getY();
|
expectedNextPosY += direction1.vector.getY();
|
||||||
CheckNextPosition(ExpectedNextPosX, ExpectedNextPosY);
|
checkVelocity(expectedVelocityX, expectedVelocityY);
|
||||||
|
checkNextPosition(expectedNextPosX, expectedNextPosY);
|
||||||
|
|
||||||
for (PositionVector.Direction direction2 : directions) {
|
for (PositionVector.Direction direction2 : directions) {
|
||||||
car.accelerate(direction2);
|
car.accelerate(direction2);
|
||||||
ExpectedNextPosX += direction2.vector.getX();
|
expectedVelocityX += direction2.vector.getX();
|
||||||
ExpectedNextPosY += direction2.vector.getY();
|
expectedVelocityY += direction2.vector.getY();
|
||||||
CheckNextPosition(ExpectedNextPosX, ExpectedNextPosY);
|
expectedNextPosX += direction2.vector.getX();
|
||||||
|
expectedNextPosY += direction2.vector.getY();
|
||||||
|
checkVelocity(expectedVelocityX, expectedVelocityY);
|
||||||
|
checkNextPosition(expectedNextPosX, expectedNextPosY);
|
||||||
|
|
||||||
car.move();
|
car.move();
|
||||||
ExpectedNextPosX += (direction1.vector.getX() + direction2.vector.getX());
|
checkVelocity(expectedVelocityX, expectedVelocityY);
|
||||||
ExpectedNextPosY += (direction1.vector.getY() + direction2.vector.getY());
|
expectedNextPosX += (direction1.vector.getX() + direction2.vector.getX());
|
||||||
CheckNextPosition(ExpectedNextPosX, ExpectedNextPosY);
|
expectedNextPosY += (direction1.vector.getY() + direction2.vector.getY());
|
||||||
|
checkNextPosition(expectedNextPosX, expectedNextPosY);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue