From 7b5764c4421d710563e07bce3b547a772b5c0970 Mon Sep 17 00:00:00 2001 From: Vladimir Vetrov Date: Wed, 1 May 2024 17:29:20 +0300 Subject: [PATCH 1/3] Add testPauseAudioCommandsQuery --- .../CommandTypeResolverTest.kt | 22 +++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/src/test/kotlin/com/alongo/discordbot/domain/messagehandlers/CommandTypeResolverTest.kt b/src/test/kotlin/com/alongo/discordbot/domain/messagehandlers/CommandTypeResolverTest.kt index b8efb37..8c317bd 100644 --- a/src/test/kotlin/com/alongo/discordbot/domain/messagehandlers/CommandTypeResolverTest.kt +++ b/src/test/kotlin/com/alongo/discordbot/domain/messagehandlers/CommandTypeResolverTest.kt @@ -5,6 +5,7 @@ import com.alongo.discordbot.utils.CommandStorageFactory import org.junit.jupiter.api.Test import kotlin.test.BeforeTest import kotlin.test.assertEquals +import kotlin.test.assertNotEquals internal class CommandTypeResolverTest { private val commandTypeResolver = CommandTypeResolver @@ -40,14 +41,31 @@ internal class CommandTypeResolverTest { val failingQueries = listOf( "Alexa, play despacito", "Press ${validCommandMarker}play to win", - "play music" + "play music", + "${validCommandMarker}playarandomtrack" ) for (query in validQueries) { assertEquals(commandTypeResolver.resolve(query), Command.AUDIO.PLAY) } for (query in failingQueries) { - assertEquals(commandTypeResolver.resolve(query), null) + assertNotEquals(commandTypeResolver.resolve(query), Command.AUDIO.PLAY) + } + } + + @Test + fun testPauseAudioCommandsQuery() { + val validQueries = + listOf( + "${validCommandMarker}pause", + "${validCommandMarker}pause https://example.com", + ) + for (query in validQueries) { + assertEquals(commandTypeResolver.resolve(query), Command.AUDIO.PAUSE) + } + val failingQueries = listOf("pause", "${validCommandMarker}pause2") + for (query in failingQueries) { + assertNotEquals(commandTypeResolver.resolve(query), Command.AUDIO.PAUSE) } } From 872eef00eb16095f5f54812e573750e090096451 Mon Sep 17 00:00:00 2001 From: Vladimir Vetrov Date: Wed, 1 May 2024 17:59:12 +0300 Subject: [PATCH 2/3] Add fun executeTest --- .../CommandTypeResolverTest.kt | 41 +++++++++++++------ 1 file changed, 28 insertions(+), 13 deletions(-) diff --git a/src/test/kotlin/com/alongo/discordbot/domain/messagehandlers/CommandTypeResolverTest.kt b/src/test/kotlin/com/alongo/discordbot/domain/messagehandlers/CommandTypeResolverTest.kt index 8c317bd..bc41cd8 100644 --- a/src/test/kotlin/com/alongo/discordbot/domain/messagehandlers/CommandTypeResolverTest.kt +++ b/src/test/kotlin/com/alongo/discordbot/domain/messagehandlers/CommandTypeResolverTest.kt @@ -20,15 +20,14 @@ internal class CommandTypeResolverTest { @Test fun testKekCommandsQuery() { - val kekQueries = listOf( + val validQueries = listOf( "Я сходил в турецкий супермаркет и купил себе кек к чаю", "Рецепт кекса очень прост: возьмите...", "I saw a pukeko on my recent trip to the New Zealand!", "A Key Encryption Key or KEK is simply a key that is solely used to encrypt keys." ) - for (query in kekQueries) { - assertEquals(commandTypeResolver.resolve(query), Command.KEK) - } + + executeTest(validQueries, emptyList(), commandUnderTest = Command.KEK) } @Test @@ -44,13 +43,8 @@ internal class CommandTypeResolverTest { "play music", "${validCommandMarker}playarandomtrack" ) - for (query in validQueries) { - assertEquals(commandTypeResolver.resolve(query), Command.AUDIO.PLAY) - } - for (query in failingQueries) { - assertNotEquals(commandTypeResolver.resolve(query), Command.AUDIO.PLAY) - } + executeTest(validQueries, failingQueries, Command.AUDIO.PLAY) } @Test @@ -60,12 +54,33 @@ internal class CommandTypeResolverTest { "${validCommandMarker}pause", "${validCommandMarker}pause https://example.com", ) + + val failingQueries = listOf("pause", "${validCommandMarker}pause2") + executeTest(validQueries, failingQueries, Command.AUDIO.PAUSE) + } + + @Test + fun testResumeAudioCommandsQuery() { + val validQueries = + listOf( + "${validCommandMarker}resume", + "${validCommandMarker}resume https://example.com", + ) + + val failingQueries = listOf("resume", "${validCommandMarker}resume2") + executeTest(validQueries, failingQueries, Command.AUDIO.RESUME) + } + + private fun executeTest( + validQueries: List, + failingQueries: List, + commandUnderTest: Command + ) { for (query in validQueries) { - assertEquals(commandTypeResolver.resolve(query), Command.AUDIO.PAUSE) + assertEquals(commandTypeResolver.resolve(query), commandUnderTest) } - val failingQueries = listOf("pause", "${validCommandMarker}pause2") for (query in failingQueries) { - assertNotEquals(commandTypeResolver.resolve(query), Command.AUDIO.PAUSE) + assertNotEquals(commandTypeResolver.resolve(query), commandUnderTest) } } From 453608f73bf05d5e9d42adce5c6f2297797f86e0 Mon Sep 17 00:00:00 2001 From: Vladimir Vetrov Date: Wed, 1 May 2024 18:00:01 +0300 Subject: [PATCH 3/3] Add testStopAudioCommandsQuery --- .../messagehandlers/CommandTypeResolverTest.kt | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/test/kotlin/com/alongo/discordbot/domain/messagehandlers/CommandTypeResolverTest.kt b/src/test/kotlin/com/alongo/discordbot/domain/messagehandlers/CommandTypeResolverTest.kt index bc41cd8..638057a 100644 --- a/src/test/kotlin/com/alongo/discordbot/domain/messagehandlers/CommandTypeResolverTest.kt +++ b/src/test/kotlin/com/alongo/discordbot/domain/messagehandlers/CommandTypeResolverTest.kt @@ -71,6 +71,18 @@ internal class CommandTypeResolverTest { executeTest(validQueries, failingQueries, Command.AUDIO.RESUME) } + @Test + fun testStopAudioCommandsQuery() { + val validQueries = + listOf( + "${validCommandMarker}stop", + "${validCommandMarker}stop https://example.com", + ) + + val failingQueries = listOf("stop", "${validCommandMarker}stop2") + executeTest(validQueries, failingQueries, Command.AUDIO.STOP) + } + private fun executeTest( validQueries: List, failingQueries: List,