From: David ‘Bombe’ Roden Date: Mon, 6 Jan 2025 11:35:57 +0000 (+0100) Subject: ✅ Add test for SubscribeUSK X-Git-Url: https://git.pterodactylus.net/?a=commitdiff_plain;h=170003121235c4a4134d2a4105aecdcf715b4069;p=jFCPlib.git ✅ Add test for SubscribeUSK --- diff --git a/src/test/java/net/pterodactylus/fcp/SubscribeUSKTest.java b/src/test/java/net/pterodactylus/fcp/SubscribeUSKTest.java new file mode 100644 index 0000000..c120f0d --- /dev/null +++ b/src/test/java/net/pterodactylus/fcp/SubscribeUSKTest.java @@ -0,0 +1,110 @@ +package net.pterodactylus.fcp; + +import org.junit.Test; + +import static net.pterodactylus.fcp.test.MessageTests.verifyFieldValueAfterSettingFlag; +import static net.pterodactylus.fcp.test.MessageTests.verifyFieldValueAfterSettingProperty; +import static org.hamcrest.MatcherAssert.assertThat; +import static org.hamcrest.Matchers.equalTo; +import static org.hamcrest.Matchers.nullValue; + +public class SubscribeUSKTest { + + @Test + public void subscribeUskMessageHasCorrectName() { + assertThat(subscribeUSK.getName(), equalTo("SubscribeUSK")); + } + + @Test + public void subscribeUskMessageSetsCorrectIdentifierField() { + assertThat(subscribeUSK.getField("Identifier"), equalTo("identifier")); + } + + @Test + public void subscribeUskMessageSetsCorrectUriField() { + assertThat(subscribeUSK.getField("URI"), equalTo("uri")); + } + + @Test + public void subscribeUskMessageHasNoDontPollField() { + assertThat(subscribeUSK.getField("DontPoll"), nullValue()); + } + + @Test + public void settingActiveToTrueResultsInDontPollFieldBeingSetToFalse() { + verifyFieldValueAfterSettingProperty(subscribeUSK, SubscribeUSK::setActive, "DontPoll", true, equalTo("false")); + } + + @Test + public void settingActiveToFalseResultsInDontPollFieldBeingSetToTrue() { + verifyFieldValueAfterSettingProperty(subscribeUSK, SubscribeUSK::setActive, "DontPoll", false, equalTo("true")); + } + + @Test + public void subscribeUskMessageHasNoSparsePollField() { + assertThat(subscribeUSK.getField("SparsePoll"), nullValue()); + } + + @Test + public void settingSparseToFalseResultsInSparsePollFieldBeingSetToFalse() { + verifyFieldValueAfterSettingFlag(subscribeUSK, SubscribeUSK::setSparse, "SparsePoll", false); + } + + @Test + public void settingSparseToTrueResultsInSparsePollFieldBeingSetToTrue() { + verifyFieldValueAfterSettingFlag(subscribeUSK, SubscribeUSK::setSparse, "SparsePoll", true); + } + + @Test + public void subscribeUskMessageHasNoPriorityClassField() { + assertThat(subscribeUSK.getField("PriorityClass"), nullValue()); + } + + @Test + public void settingPriorityResultsInPriorityClassFieldBeingSet() { + verifyFieldValueAfterSettingProperty(subscribeUSK, SubscribeUSK::setPriority, "PriorityClass", Priority.bulkSplitfile, equalTo("4")); + } + + @Test + public void subscribeUskMessageHasNoPriorityClassProgressField() { + assertThat(subscribeUSK.getField("PriorityClassProgress"), nullValue()); + } + + @Test + public void settingActivePriorityResultsInPriorityClassProgressFieldBeingSet() { + verifyFieldValueAfterSettingProperty(subscribeUSK, SubscribeUSK::setActivePriority, "PriorityClassProgress", Priority.update, equalTo("3")); + } + + @Test + public void subscribeUskMessageHasNoRealTimeFlagField() { + assertThat(subscribeUSK.getField("RealTimeFlag"), nullValue()); + } + + @Test + public void settingRealTimeToFalseResultsInRealTimeFlagFieldBeingSetToFalse() { + verifyFieldValueAfterSettingFlag(subscribeUSK, SubscribeUSK::setRealTime, "RealTimeFlag", false); + } + + @Test + public void settingRealTimeToTrueResultsInRealTimeFlagFieldBeingSetToTrue() { + verifyFieldValueAfterSettingFlag(subscribeUSK, SubscribeUSK::setRealTime, "RealTimeFlag", true); + } + + @Test + public void subscribeUskMessageHasNoIgnoreUSKDatehintsField() { + assertThat(subscribeUSK.getField("IgnoreUSKDatehints"), nullValue()); + } + + @Test + public void settingIgnoreDateHintsToFalseResultsInIgnoreUSKDatehintsFieldBeingSetToFalse() { + verifyFieldValueAfterSettingFlag(subscribeUSK, SubscribeUSK::setIgnoreDateHints, "IgnoreUSKDatehints", false); + } + + @Test + public void settingIgnoreDateHintsToTrueResultsInIgnoreUSKDatehintsFieldBeingSetToTrue() { + verifyFieldValueAfterSettingFlag(subscribeUSK, SubscribeUSK::setIgnoreDateHints, "IgnoreUSKDatehints", true); + } + + private final SubscribeUSK subscribeUSK = new SubscribeUSK("uri", "identifier"); + +}