diff --git a/src/main/kotlin/net/thauvin/erik/bitly/config/CreateConfig.kt b/src/main/kotlin/net/thauvin/erik/bitly/config/CreateConfig.kt index e26b17a..3371648 100644 --- a/src/main/kotlin/net/thauvin/erik/bitly/config/CreateConfig.kt +++ b/src/main/kotlin/net/thauvin/erik/bitly/config/CreateConfig.kt @@ -52,17 +52,17 @@ class CreateConfig private constructor( **/ @Suppress("unused", "ArrayInDataClass") data class Builder( - var domain: String = Constants.EMPTY, - var title: String = Constants.EMPTY, - var group_guid: String = Constants.EMPTY, - var tags: Array = emptyArray(), - var deeplinks: Array> = emptyArray(), - var long_url: String = Constants.EMPTY, - var toJson: Boolean = false + private var domain: String = Constants.EMPTY, + private var title: String = Constants.EMPTY, + private var group_guid: String = Constants.EMPTY, + private var tags: Array = emptyArray(), + private var deeplinks: Array> = emptyArray(), + private var long_url: String = Constants.EMPTY, + private var toJson: Boolean = false ) { fun domain(domain: String) = apply { this.domain = domain } fun title(title: String) = apply { this.title = title } - fun group_guid(group_guid: String) = apply { this.group_guid = group_guid } + fun groupGuid(group_guid: String) = apply { this.group_guid = group_guid } fun tags(tags: Array) = apply { this.tags = tags } fun deeplinks(deeplinks: Array>) = apply { this.deeplinks = deeplinks } fun longUrl(long_url: String) = apply { this.long_url = long_url } diff --git a/src/main/kotlin/net/thauvin/erik/bitly/config/UpdateConfig.kt b/src/main/kotlin/net/thauvin/erik/bitly/config/UpdateConfig.kt index 0fda24f..556eb38 100644 --- a/src/main/kotlin/net/thauvin/erik/bitly/config/UpdateConfig.kt +++ b/src/main/kotlin/net/thauvin/erik/bitly/config/UpdateConfig.kt @@ -59,32 +59,32 @@ class UpdateConfig private constructor( **/ @Suppress("unused", "ArrayInDataClass") data class Builder( - var bitlink: String = Constants.EMPTY, - var references: Map = emptyMap(), - var archived: Boolean = false, - var tags: Array = emptyArray(), - var created_at: String = Constants.EMPTY, - var title: String = Constants.EMPTY, - var deeplinks: Array> = emptyArray(), - var created_by: String = Constants.EMPTY, - var long_url: String = Constants.EMPTY, - var client_id: String = Constants.EMPTY, - var custom_bitlinks: Array = emptyArray(), - var link: String = Constants.EMPTY, - var id: String = Constants.EMPTY, - var toJson: Boolean = false + private var bitlink: String = Constants.EMPTY, + private var references: Map = emptyMap(), + private var archived: Boolean = false, + private var tags: Array = emptyArray(), + private var created_at: String = Constants.EMPTY, + private var title: String = Constants.EMPTY, + private var deeplinks: Array> = emptyArray(), + private var created_by: String = Constants.EMPTY, + private var long_url: String = Constants.EMPTY, + private var client_id: String = Constants.EMPTY, + private var custom_bitlinks: Array = emptyArray(), + private var link: String = Constants.EMPTY, + private var id: String = Constants.EMPTY, + private var toJson: Boolean = false ) { fun bitlink(bitlink: String) = apply { this.bitlink = bitlink } fun references(references: Map) = apply { this.references = references } fun archived(archived: Boolean) = apply { this.archived = archived } fun tags(tags: Array) = apply { this.tags = tags } - fun createdAt(created_at: String) = apply { this.created_at = created_at } + fun createdAt(createdAt: String) = apply { this.created_at = createdAt } fun title(title: String) = apply { this.title = title } - fun deeplinks(deeplinks: Array>) = apply { this.deeplinks = deeplinks } - fun createdBy(created_by: String) = apply { this.created_by = created_by } - fun longUrl(long_url: String) = apply { this.long_url = long_url } - fun clientId(client_id: String) = apply { this.client_id = client_id } - fun customBitlinks(custom_bitlinks: Array) = apply { this.custom_bitlinks = custom_bitlinks } + fun deepLinks(deepLinks: Array>) = apply { this.deeplinks = deepLinks } + fun createdBy(createdBy: String) = apply { this.created_by = createdBy } + fun longUrl(longUrl: String) = apply { this.long_url = longUrl } + fun clientId(clientId: String) = apply { this.client_id = clientId } + fun customBitlinks(customBitlinks: Array) = apply { this.custom_bitlinks = customBitlinks } fun link(link: String) = apply { this.link = link } fun id(id: String) = apply { this.id = id } fun toJson(toJson: Boolean) = apply { this.toJson = toJson } diff --git a/src/test/kotlin/net/thauvin/erik/bitly/BitlyTest.kt b/src/test/kotlin/net/thauvin/erik/bitly/BitlyTest.kt index aafde73..3048a94 100644 --- a/src/test/kotlin/net/thauvin/erik/bitly/BitlyTest.kt +++ b/src/test/kotlin/net/thauvin/erik/bitly/BitlyTest.kt @@ -33,15 +33,7 @@ package net.thauvin.erik.bitly import assertk.all import assertk.assertThat -import assertk.assertions.contains -import assertk.assertions.isEmpty -import assertk.assertions.isEqualTo -import assertk.assertions.isFalse -import assertk.assertions.isNotEqualTo -import assertk.assertions.isTrue -import assertk.assertions.matches -import assertk.assertions.prop -import assertk.assertions.startsWith +import assertk.assertions.* import net.thauvin.erik.bitly.Utils.isValidUrl import net.thauvin.erik.bitly.Utils.removeHttp import net.thauvin.erik.bitly.Utils.toEndPoint @@ -51,11 +43,7 @@ import org.json.JSONObject import org.junit.Before import java.io.File import java.util.logging.Level -import kotlin.test.Test -import kotlin.test.assertEquals -import kotlin.test.assertFailsWith -import kotlin.test.assertFalse -import kotlin.test.assertTrue +import kotlin.test.* class BitlyTest { private val bitly = with(File("local.properties")) { @@ -219,18 +207,15 @@ class BitlyTest { @Test fun `create bitlink with config`() { - var config = CreateConfig.Builder().apply { - long_url = longUrl - }.build() + var config = CreateConfig.Builder().longUrl(longUrl).build() assertThat(bitly.bitlinks().create(config), "create(config)") .matches("https://\\w+.\\w{2}/\\w{7}".toRegex()) - config = CreateConfig.Builder().apply { - domain = "bit.ly" - title = "Erik's Blog" - tags = arrayOf("erik", "thauvin", "blog", "weblog") - long_url = longUrl - }.build() + config = CreateConfig.Builder() + .domain("bit.ly") + .title("Erik's Blog") + .tags(arrayOf("erik", "thauvin", "blog", "weblog")) + .longUrl(longUrl).build() assertEquals( shortUrl, bitly.bitlinks().create(config) @@ -263,36 +248,34 @@ class BitlyTest { bl.update(shortUrl, link = longUrl) assertThat(bl.lastCallResponse).prop(CallResponse::isSuccessful).isTrue() - assertEquals(Constants.FALSE, bl.update("bit.ly/407GjJU", id = "foo")) - + assertEquals(Constants.FALSE, bl.update("bit.ly/407GjJU", id = "foo")) } @Test fun `update bitlink with config`() { val bl = bitly.bitlinks() - var config = UpdateConfig.Builder().apply { - bitlink(shortUrl) - title("Erik's Weblog") - tags(arrayOf("blog", "weblog")) - archived(true) - }.build() + var config = UpdateConfig.Builder() + .bitlink(shortUrl) + .title("Erik's Weblog") + .tags(arrayOf("blog", "weblog")) + .archived(true) + .build() assertEquals(Constants.TRUE, bl.update(config)) - config = UpdateConfig.Builder().apply { - bitlink(shortUrl) - toJson(true) - }.build() + config = UpdateConfig.Builder() + .bitlink(shortUrl) + .toJson(true) + .build() assertThat(bl.update(config), "update(tags)").contains("\"tags\":[]") - config = UpdateConfig.Builder().apply { - bitlink(shortUrl) - link(longUrl) - }.build() + config = UpdateConfig.Builder() + .bitlink(shortUrl) + .link(longUrl) + .build() assertEquals(Constants.TRUE, bl.update(config)) - } @Test