Removed confusing aliases

This commit is contained in:
Erik C. Thauvin 2022-10-09 11:27:00 -07:00
parent de30b3f638
commit 0824c8f059
9 changed files with 35 additions and 44 deletions

View file

@ -2,10 +2,10 @@
<SmellBaseline>
<ManuallySuppressedIssues/>
<CurrentIssues>
<ID>ComplexMethod:JokeApi.kt$fun getRawJokes( categories: Set&lt;Category> = setOf(Category.ANY), language: Language = Language.ENGLISH, flags: Set&lt;Flag> = emptySet(), type: Type = Type.ALL, format: Format = Format.JSON, search: String = "", idRange: IdRange = IdRange(), amount: Int = 1, safe: Boolean = false, auth: String = "" ): String</ID>
<ID>LongParameterList:JokeApi.kt$( amount: Int, categories: Set&lt;Category> = setOf(Category.ANY), language: Language = Language.ENGLISH, flags: Set&lt;Flag> = emptySet(), type: Type = Type.ALL, search: String = "", idRange: IdRange = IdRange(), safe: Boolean = false, splitNewLine: Boolean = false, auth: String = "" )</ID>
<ID>LongParameterList:JokeApi.kt$( categories: Set&lt;Category> = setOf(Category.ANY), language: Language = Language.ENGLISH, flags: Set&lt;Flag> = emptySet(), type: Type = Type.ALL, format: Format = Format.JSON, search: String = "", idRange: IdRange = IdRange(), amount: Int = 1, safe: Boolean = false, auth: String = "" )</ID>
<ID>LongParameterList:JokeApi.kt$( categories: Set&lt;Category> = setOf(Category.ANY), language: Language = Language.ENGLISH, flags: Set&lt;Flag> = emptySet(), type: Type = Type.ALL, search: String = "", idRange: IdRange = IdRange(), safe: Boolean = false, splitNewLine: Boolean = false, auth: String = "" )</ID>
<ID>ComplexMethod:JokeApi.kt$fun getRawJokes( categories: Set&lt;Category> = setOf(Category.ANY), language: Language = Language.EN, flags: Set&lt;Flag> = emptySet(), type: Type = Type.ALL, format: Format = Format.JSON, search: String = "", idRange: IdRange = IdRange(), amount: Int = 1, safe: Boolean = false, auth: String = "" ): String</ID>
<ID>LongParameterList:JokeApi.kt$( amount: Int, categories: Set&lt;Category> = setOf(Category.ANY), language: Language = Language.EN, flags: Set&lt;Flag> = emptySet(), type: Type = Type.ALL, search: String = "", idRange: IdRange = IdRange(), safe: Boolean = false, splitNewLine: Boolean = false, auth: String = "" )</ID>
<ID>LongParameterList:JokeApi.kt$( categories: Set&lt;Category> = setOf(Category.ANY), language: Language = Language.EN, flags: Set&lt;Flag> = emptySet(), type: Type = Type.ALL, format: Format = Format.JSON, search: String = "", idRange: IdRange = IdRange(), amount: Int = 1, safe: Boolean = false, auth: String = "" )</ID>
<ID>LongParameterList:JokeApi.kt$( categories: Set&lt;Category> = setOf(Category.ANY), language: Language = Language.EN, flags: Set&lt;Flag> = emptySet(), type: Type = Type.ALL, search: String = "", idRange: IdRange = IdRange(), safe: Boolean = false, splitNewLine: Boolean = false, auth: String = "" )</ID>
<ID>LongParameterList:JokeConfig.kt$JokeConfig$( val categories: Set&lt;Category>, val language: Language, val flags: Set&lt;Flag>, val type: Type, val format: Format, val search: String, val idRange: IdRange, val amount: Int, val safe: Boolean, val splitNewLine: Boolean, val auth: String )</ID>
<ID>LongParameterList:JokeException.kt$JokeException$( val internalError: Boolean, val code: Int, message: String, val causedBy: List&lt;String>, val additionalInfo: String, val timestamp: Long, cause: Throwable? = null )</ID>
<ID>MagicNumber:util.kt$200</ID>

View file

@ -179,7 +179,7 @@ class JokeApi private constructor() {
*/
fun getJoke(
categories: Set<Category> = setOf(Category.ANY),
language: Language = Language.ENGLISH,
language: Language = Language.EN,
flags: Set<Flag> = emptySet(),
type: Type = Type.ALL,
search: String = "",
@ -218,7 +218,7 @@ fun getJoke(
fun getJokes(
amount: Int,
categories: Set<Category> = setOf(Category.ANY),
language: Language = Language.ENGLISH,
language: Language = Language.EN,
flags: Set<Flag> = emptySet(),
type: Type = Type.ALL,
search: String = "",
@ -259,7 +259,7 @@ fun getJokes(
*/
fun getRawJokes(
categories: Set<Category> = setOf(Category.ANY),
language: Language = Language.ENGLISH,
language: Language = Language.EN,
flags: Set<Flag> = emptySet(),
type: Type = Type.ALL,
format: Format = Format.JSON,
@ -272,14 +272,14 @@ fun getRawJokes(
val params = mutableMapOf<String, String>()
// Categories
val path = if (!categories.contains(Category.ANY)) {
categories.stream().map(Category::value).collect(Collectors.joining(","))
} else {
val path = if (categories.isEmpty() || categories.contains(Category.ANY)) {
Category.ANY.value
} else {
categories.stream().map(Category::value).collect(Collectors.joining(","))
}
// Language
if (language != Language.ENGLISH) {
if (language != Language.EN) {
params[Parameter.LANG] = language.value
}

View file

@ -67,7 +67,7 @@ class JokeConfig private constructor(
*/
data class Builder(
var categories: Set<Category> = setOf(Category.ANY),
var language: Language = Language.ENGLISH,
var language: Language = Language.EN,
var flags: Set<Flag> = emptySet(),
var type: Type = Type.ALL,
var format: Format = Format.JSON,

View file

@ -33,22 +33,14 @@
package net.thauvin.erik.jokeapi.models
/**
* The supported [categories and aliases](https://jokeapi.dev/#categories), use [ANY] for all.
* The supported [categories](https://jokeapi.dev/#categories), use [ANY] for all.
*/
enum class Category(val value: String) {
ANY("Any"),
CHRISTMAS("Christmas"),
DARK("Dark"),
MISC("Misc"),
MISCELLANEOUS(MISC.value),
PROGRAMMING("Programming"),
CODING(PROGRAMMING.value),
DEVELOPMENT(PROGRAMMING.value),
PUN("Pun"),
SPOOKY("Spooky"),
HALLOWEEN(SPOOKY.value)
SPOOKY("Spooky")
}

View file

@ -36,11 +36,11 @@ package net.thauvin.erik.jokeapi.models
* The supported [blacklist flags](https://jokeapi.dev/#flags-param), use [ALL] to prevent all.
*/
enum class Flag(val value: String) {
EXPLICIT("explicit"),
NSFW("nsfw"),
RELIGIOUS("religious"),
POLITICAL("political"),
RACIST("racist"),
RELIGIOUS("religious"),
SEXIST("sexist"),
EXPLICIT("explicit"),
ALL("${NSFW.value},${RELIGIOUS.value},${POLITICAL.value},${RACIST.value},${SEXIST.value},${EXPLICIT.value}")
}

View file

@ -36,5 +36,9 @@ package net.thauvin.erik.jokeapi.models
* The supported response [formats](https://jokeapi.dev/#format-param).
*/
enum class Format(val value: String) {
JSON("json"), XML("xml"), YAML("yaml"), TEXT("txt"), TXT(TEXT.value)
JSON("json"),
/** Plain Text */
TXT("txt"),
XML("xml"),
YAML("yaml")
}

View file

@ -36,21 +36,16 @@ package net.thauvin.erik.jokeapi.models
* The supported [languages](https://jokeapi.dev/#lang).
*/
enum class Language(val value: String) {
ENGLISH("en"),
EN(ENGLISH.value),
CZECH("cs"),
CS(CZECH.value),
GERMAN("de"),
DE(GERMAN.value),
SPANISH("es"),
ES(SPANISH.value),
FRENCH("fr"),
FR(FRENCH.value),
PORTUGUESE("pt"),
PT(PORTUGUESE.value)
/** Czech */
CS("cs"),
/** German */
DE("de"),
/** English */
EN("en"),
/** Spanish */
ES("es"),
/** French */
FR("fr"),
/** Portuguese */
PT("pt")
}

View file

@ -49,7 +49,7 @@ import kotlin.test.assertContains
internal class GetRawJokesTest {
@Test
fun `Get Raw Joke with TXT`() {
val response = getRawJokes(format = Format.TEXT)
val response = getRawJokes(format = Format.TXT)
assertThat(response, "getRawJoke(txt)").all {
isNotEmpty()
doesNotContain("Error")

View file

@ -112,7 +112,7 @@ class JokeConfigTest {
fun `Get Raw Joke with Builder`() {
val config = JokeConfig.Builder().apply {
categories(setOf(Category.PROGRAMMING))
format(Format.TEXT)
format(Format.TXT)
search("bar")
amount(2)
safe(true)