From 5f4da8792edd24d5188843b16659af538b0ee33a Mon Sep 17 00:00:00 2001 From: Nanne Baars Date: Fri, 26 Nov 2021 09:04:37 +0100 Subject: [PATCH] Write test case for challenge 3 --- .../challenges/docker/Challenge3Test.java | 41 +++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 src/test/java/org/owasp/wrongsecrets/challenges/docker/Challenge3Test.java diff --git a/src/test/java/org/owasp/wrongsecrets/challenges/docker/Challenge3Test.java b/src/test/java/org/owasp/wrongsecrets/challenges/docker/Challenge3Test.java new file mode 100644 index 000000000..15d5eab51 --- /dev/null +++ b/src/test/java/org/owasp/wrongsecrets/challenges/docker/Challenge3Test.java @@ -0,0 +1,41 @@ +package org.owasp.wrongsecrets.challenges.docker; + +import org.assertj.core.api.Assertions; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.Mock; +import org.mockito.Mockito; +import org.mockito.junit.jupiter.MockitoExtension; +import org.owasp.wrongsecrets.ScoreCard; +import org.owasp.wrongsecrets.challenges.Spoiler; + +@ExtendWith(MockitoExtension.class) +class Challenge3Test { + + @Mock + private ScoreCard scoreCard; + + @Test + void spoilerShouldRevealAnswer() { + var challenge = new Challenge3(scoreCard, "test", "test"); + + Assertions.assertThat(challenge.spoiler()).isEqualTo(new Spoiler("test")); + } + + @Test + void rightAnswerShouldSolveChallenge() { + var challenge = new Challenge3(scoreCard, "test", "test"); + + Assertions.assertThat(challenge.solved("test")).isTrue(); + Mockito.verify(scoreCard).completeChallenge(challenge); + } + + @Test + void incorrectAnswerShouldNotSolveChallenge() { + var challenge = new Challenge3(scoreCard, "test", "test"); + + Assertions.assertThat(challenge.solved("wrong answer")).isFalse(); + Mockito.verifyNoInteractions(scoreCard); + } + +} \ No newline at end of file