From b99878f037e2b3ab7299e51ac4dafb177ea6b4ba Mon Sep 17 00:00:00 2001 From: =?utf8?q?David=20=E2=80=98Bombe=E2=80=99=20Roden?= Date: Wed, 1 Jan 2025 21:53:09 +0100 Subject: [PATCH] =?utf8?q?=E2=9C=85=20Add=20test=20for=20GetPluginInfo?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- .../net/pterodactylus/fcp/GetPluginInfoTest.java | 56 ++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 src/test/java/net/pterodactylus/fcp/GetPluginInfoTest.java diff --git a/src/test/java/net/pterodactylus/fcp/GetPluginInfoTest.java b/src/test/java/net/pterodactylus/fcp/GetPluginInfoTest.java new file mode 100644 index 0000000..dab69de --- /dev/null +++ b/src/test/java/net/pterodactylus/fcp/GetPluginInfoTest.java @@ -0,0 +1,56 @@ +package net.pterodactylus.fcp; + +import org.junit.Test; + +import java.util.function.BiConsumer; +import java.util.function.Consumer; +import java.util.function.Function; + +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.equalTo; +import static org.hamcrest.Matchers.nullValue; + +public class GetPluginInfoTest { + + @Test + public void getPluginInfoWithoutPluginNameHasCorrectName() { + GetPluginInfo getPluginInfo = new GetPluginInfo("test-identifier"); + assertThat(getPluginInfo.getName(), equalTo("GetPluginInfo")); + } + + @Test + public void getPluginInfoWithPluginNameHasCorrectName() { + GetPluginInfo getPluginInfo = new GetPluginInfo("test.Plugin", "test-identifier"); + assertThat(getPluginInfo.getName(), equalTo("GetPluginInfo")); + } + + @Test + public void newGetPluginInfoHasNoDetailedField() { + GetPluginInfo getPluginInfo = new GetPluginInfo("test.Plugin", "test-identifier"); + assertThat(getPluginInfo.getField("Detailed"), nullValue()); + } + + @Test + public void settingPluginNameResultsInFieldBeingSet() { + getPluginInfo.setPluginName("test.Plugin2"); + assertThat(getPluginInfo.getField("PluginName"), equalTo("test.Plugin2")); + } + + @Test + public void settingDetailedToTrueResultsInFieldBeingSetToTrue() { + verifyFieldValueAfterSettingFlag(getPluginInfo::setDetailed, m -> m.getField("Detailed"), true); + } + + @Test + public void settingDetailedToFalseResultsInFieldBeingSetToFalse() { + verifyFieldValueAfterSettingFlag(getPluginInfo::setDetailed, m -> m.getField("Detailed"), false); + } + + private void verifyFieldValueAfterSettingFlag(Consumer setter, Function getter, boolean flag) { + setter.accept(flag); + assertThat(getter.apply(getPluginInfo), equalTo(String.valueOf(flag))); + } + + private final GetPluginInfo getPluginInfo = new GetPluginInfo("test.Plugin", "test-identifier"); + +} -- 2.7.4