From 31a0d9b6a69b4e5c192b8a51e2f2b9bf60b560b7 Mon Sep 17 00:00:00 2001 From: Rob Bygrave Date: Thu, 6 Apr 2023 15:03:14 +1200 Subject: [PATCH] Add test only - add PathStackTest --- .../server/json/PathStackTest.java | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 ebean-core/src/test/java/io/ebeaninternal/server/json/PathStackTest.java diff --git a/ebean-core/src/test/java/io/ebeaninternal/server/json/PathStackTest.java b/ebean-core/src/test/java/io/ebeaninternal/server/json/PathStackTest.java new file mode 100644 index 000000000..4112ede0f --- /dev/null +++ b/ebean-core/src/test/java/io/ebeaninternal/server/json/PathStackTest.java @@ -0,0 +1,38 @@ +package io.ebeaninternal.server.json; + +import org.junit.jupiter.api.Test; + +import static org.assertj.core.api.Assertions.assertThat; + +class PathStackTest { + + @Test + void peekFullPath() { + var pathStack = new PathStack(); + assertThat(pathStack.peekFullPath("foo")).isEqualTo("foo"); + + pathStack.push("one"); + assertThat(pathStack.peekFullPath("foo")).isEqualTo("one.foo"); + pathStack.push("two"); + assertThat(pathStack.peekFullPath("foo")).isEqualTo("two.foo"); + + assertThat(pathStack.pop()).isEqualTo("two"); + assertThat(pathStack.peekFullPath("foo")).isEqualTo("one.foo"); + assertThat(pathStack.pop()).isEqualTo("one"); + assertThat(pathStack.peekFullPath("foo")).isEqualTo("foo"); + } + + @Test + void pushPathKey() { + var pathStack = new PathStack(); + assertThat(pathStack.peekFullPath("foo")).isEqualTo("foo"); + pathStack.pushPathKey("one"); + assertThat(pathStack.peekFullPath("foo")).isEqualTo("one.foo"); + pathStack.pushPathKey("two"); + assertThat(pathStack.peekFullPath("foo")).isEqualTo("one.two.foo"); + pathStack.pop(); + assertThat(pathStack.peekFullPath("foo")).isEqualTo("one.foo"); + pathStack.pop(); + assertThat(pathStack.peekFullPath("foo")).isEqualTo("foo"); + } +}