Тесты для нагревателя
This commit is contained in:
@@ -0,0 +1,58 @@
|
|||||||
|
package ru.spbstu.telematics.java;
|
||||||
|
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
import org.junit.jupiter.api.BeforeEach;
|
||||||
|
import static org.junit.jupiter.api.Assertions.*;
|
||||||
|
|
||||||
|
public class HeaterTests {
|
||||||
|
Room room;
|
||||||
|
double initialTemperature;
|
||||||
|
double initialHumidity;
|
||||||
|
Heater heater;
|
||||||
|
Thread heaterThread;
|
||||||
|
|
||||||
|
@BeforeEach
|
||||||
|
public void setUp() {
|
||||||
|
room = new Room();
|
||||||
|
initialTemperature = room.getTemperature();
|
||||||
|
initialHumidity = room.getHumidity();
|
||||||
|
heater = new Heater(room);
|
||||||
|
heaterThread = new Thread(heater);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Проверяет, что включенный нагреватель увеличивает температуру в комнате
|
||||||
|
* и при этом не изменяет влажность.
|
||||||
|
*/
|
||||||
|
@Test
|
||||||
|
public void testHeaterOn() throws InterruptedException {
|
||||||
|
heater.turnOn();
|
||||||
|
heaterThread.start();
|
||||||
|
|
||||||
|
Thread.sleep(5000);
|
||||||
|
|
||||||
|
assertEquals(initialHumidity, room.getHumidity());
|
||||||
|
assertTrue(initialTemperature < room.getTemperature());
|
||||||
|
|
||||||
|
heaterThread.interrupt();
|
||||||
|
heaterThread.join();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Проверяет, что выключенный нагреватель не изменяет температуру и влажность
|
||||||
|
* в комнате.
|
||||||
|
*/
|
||||||
|
@Test
|
||||||
|
public void testHeaterOff() throws InterruptedException {
|
||||||
|
heaterThread.start();
|
||||||
|
|
||||||
|
Thread.sleep(5000);
|
||||||
|
|
||||||
|
assertEquals(initialHumidity, room.getHumidity());
|
||||||
|
assertEquals(initialTemperature, room.getTemperature());
|
||||||
|
|
||||||
|
heaterThread.interrupt();
|
||||||
|
heaterThread.join();
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user