From 65ea6c17a0c1348aa9ef4e158102ddf173936882 Mon Sep 17 00:00:00 2001 From: Yuuta Liang Date: Thu, 23 Nov 2023 08:09:01 +0800 Subject: Add GUI Signed-off-by: Yuuta Liang --- src/test/model/ObservedDataTest.java | 44 ++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 src/test/model/ObservedDataTest.java (limited to 'src/test/model/ObservedDataTest.java') diff --git a/src/test/model/ObservedDataTest.java b/src/test/model/ObservedDataTest.java new file mode 100644 index 0000000..60ed2ed --- /dev/null +++ b/src/test/model/ObservedDataTest.java @@ -0,0 +1,44 @@ +package model; + +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNotNull; + +public class ObservedDataTest { + private ObservedData target; + + private int callbackCount = 0; + private int callbackDirection = Integer.MIN_VALUE; + private int callbackIndex = Integer.MIN_VALUE; + + private final Observer obs = ((data, direction, index) -> { + callbackCount++; + callbackDirection = direction; + callbackIndex = index; + }); + + @BeforeEach + void setup() { + target = new ObservedData<>(0, obs); + callbackCount = 0; + callbackDirection = Integer.MIN_VALUE; + callbackIndex = Integer.MIN_VALUE; + } + + @Test + void testConstructor() { + assertEquals(0, target.get()); + assertNotNull(target.getAcceptor()); + } + + @Test + void testSet() { + target.set(114514); + assertEquals(114514, target.get()); + assertEquals(1, callbackCount); + assertEquals(Observer.DIRECTION_CHANGE, callbackDirection); + assertEquals(Observer.INDEX_NOT_IN_LIST, callbackIndex); + } +} -- cgit v1.2.3