From aef11130615fd874a3cb3d7b8f2e15f0136e02bf Mon Sep 17 00:00:00 2001 From: Arity-T Date: Tue, 11 Feb 2025 12:31:21 +0300 Subject: [PATCH] =?UTF-8?q?=D0=A2=D0=B5=D1=81=D1=82=D1=8B=20=D0=B4=D0=BB?= =?UTF-8?q?=D1=8F=20=D0=BD=D0=B0=D0=B3=D1=80=D0=B5=D0=B2=D0=B0=D1=82=D0=B5?= =?UTF-8?q?=D0=BB=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../spbstu/telematics/java/HeaterTests.java | 58 +++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 lab3/src/test/java/ru/spbstu/telematics/java/HeaterTests.java diff --git a/lab3/src/test/java/ru/spbstu/telematics/java/HeaterTests.java b/lab3/src/test/java/ru/spbstu/telematics/java/HeaterTests.java new file mode 100644 index 0000000..0494e2f --- /dev/null +++ b/lab3/src/test/java/ru/spbstu/telematics/java/HeaterTests.java @@ -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(); + } +}