diff --git a/.release-please-manifest.json b/.release-please-manifest.json index caf5ca3f..59acac47 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "0.26.0" + ".": "0.27.0" } \ No newline at end of file diff --git a/.stats.yml b/.stats.yml index 6fd49776..91970ebc 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 40 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sent/sent-dm-06f8010dcf4fb680abe33a8ab4fb74b3a2668edb15ef5b995436861e249957d6.yml -openapi_spec_hash: 969f82ebb2d5e6be2af05c56c4dea585 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/sent/sent-dm-7021a6c3b3b6b3951f5fb8a57f9ceb83b362c5ee43f555b53f92b9bd077562e6.yml +openapi_spec_hash: 692d784b3b48dd4d0a95e34306c7a283 config_hash: 32929c7d4b1344f5bbf67df044a518af diff --git a/CHANGELOG.md b/CHANGELOG.md index df81ba6a..4acdb322 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,14 @@ # Changelog +## 0.27.0 (2026-05-20) + +Full Changelog: [v0.26.0...v0.27.0](https://github.com/sentdm/sent-dm-java/compare/v0.26.0...v0.27.0) + +### Features + +* **api:** api update ([4e2a7ae](https://github.com/sentdm/sent-dm-java/commit/4e2a7aec5399ffba8eec8d5faa30ab9a18797384)) +* **api:** api update ([c4248c3](https://github.com/sentdm/sent-dm-java/commit/c4248c360c1941d7aa99b74b8fa76acc94b0dfd9)) + ## 0.26.0 (2026-05-14) Full Changelog: [v0.25.1...v0.26.0](https://github.com/sentdm/sent-dm-java/compare/v0.25.1...v0.26.0) diff --git a/README.md b/README.md index 9b141802..91f77e83 100644 --- a/README.md +++ b/README.md @@ -2,8 +2,8 @@ -[![Maven Central](https://img.shields.io/maven-central/v/dm.sent/sent-java)](https://central.sonatype.com/artifact/dm.sent/sent-java/0.26.0) -[![javadoc](https://javadoc.io/badge2/dm.sent/sent-java/0.26.0/javadoc.svg)](https://javadoc.io/doc/dm.sent/sent-java/0.26.0) +[![Maven Central](https://img.shields.io/maven-central/v/dm.sent/sent-java)](https://central.sonatype.com/artifact/dm.sent/sent-java/0.27.0) +[![javadoc](https://javadoc.io/badge2/dm.sent/sent-java/0.27.0/javadoc.svg)](https://javadoc.io/doc/dm.sent/sent-java/0.27.0) @@ -13,7 +13,7 @@ It is generated with [Stainless](https://www.stainless.com/). -The REST API documentation can be found on [docs.sent.dm](https://docs.sent.dm). Javadocs are available on [javadoc.io](https://javadoc.io/doc/dm.sent/sent-java/0.26.0). +The REST API documentation can be found on [docs.sent.dm](https://docs.sent.dm). Javadocs are available on [javadoc.io](https://javadoc.io/doc/dm.sent/sent-java/0.27.0). @@ -24,7 +24,7 @@ The REST API documentation can be found on [docs.sent.dm](https://docs.sent.dm). ### Gradle ```kotlin -implementation("dm.sent:sent-java:0.26.0") +implementation("dm.sent:sent-java:0.27.0") ``` ### Maven @@ -33,7 +33,7 @@ implementation("dm.sent:sent-java:0.26.0") dm.sent sent-java - 0.26.0 + 0.27.0 ``` diff --git a/build.gradle.kts b/build.gradle.kts index 94aba75d..71d5d34b 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -8,7 +8,7 @@ repositories { allprojects { group = "dm.sent" - version = "0.26.0" // x-release-please-version + version = "0.27.0" // x-release-please-version } subprojects { diff --git a/sent-java-core/src/main/kotlin/dm/sent/models/messages/MessageRetrieveActivitiesResponse.kt b/sent-java-core/src/main/kotlin/dm/sent/models/messages/MessageRetrieveActivitiesResponse.kt index 675aff86..5b73f68e 100644 --- a/sent-java-core/src/main/kotlin/dm/sent/models/messages/MessageRetrieveActivitiesResponse.kt +++ b/sent-java-core/src/main/kotlin/dm/sent/models/messages/MessageRetrieveActivitiesResponse.kt @@ -537,7 +537,8 @@ private constructor( fun price(): Optional = price.getOptional("price") /** - * Activity status (e.g., QUEUED, PROCESSED, ROUTED, SENT, DELIVERED, FAILED) + * Activity status. Outbound: QUEUED, PROCESSED, ROUTED, SENT, DELIVERED, READ, FAILED. + * Inbound (from contact): RECEIVED (terminal). * * @throws SentInvalidDataException if the JSON field has an unexpected type (e.g. if * the server responded with an unexpected value). @@ -719,7 +720,10 @@ private constructor( */ fun price(price: JsonField) = apply { this.price = price } - /** Activity status (e.g., QUEUED, PROCESSED, ROUTED, SENT, DELIVERED, FAILED) */ + /** + * Activity status. Outbound: QUEUED, PROCESSED, ROUTED, SENT, DELIVERED, READ, + * FAILED. Inbound (from contact): RECEIVED (terminal). + */ fun status(status: String) = status(JsonField.of(status)) /** diff --git a/sent-java-core/src/main/kotlin/dm/sent/models/profiles/campaigns/TcrCampaignWithUseCases.kt b/sent-java-core/src/main/kotlin/dm/sent/models/profiles/campaigns/TcrCampaignWithUseCases.kt index 53022535..18606079 100644 --- a/sent-java-core/src/main/kotlin/dm/sent/models/profiles/campaigns/TcrCampaignWithUseCases.kt +++ b/sent-java-core/src/main/kotlin/dm/sent/models/profiles/campaigns/TcrCampaignWithUseCases.kt @@ -870,8 +870,23 @@ private constructor( */ fun customerId(customerId: JsonField) = apply { this.customerId = customerId } + fun dcaElectionsComplete(dcaElectionsComplete: Boolean?) = + dcaElectionsComplete(JsonField.ofNullable(dcaElectionsComplete)) + + /** + * Alias for [Builder.dcaElectionsComplete]. + * + * This unboxed primitive overload exists for backwards compatibility. + */ fun dcaElectionsComplete(dcaElectionsComplete: Boolean) = - dcaElectionsComplete(JsonField.of(dcaElectionsComplete)) + dcaElectionsComplete(dcaElectionsComplete as Boolean?) + + /** + * Alias for calling [Builder.dcaElectionsComplete] with + * `dcaElectionsComplete.orElse(null)`. + */ + fun dcaElectionsComplete(dcaElectionsComplete: Optional) = + dcaElectionsComplete(dcaElectionsComplete.getOrNull()) /** * Sets [Builder.dcaElectionsComplete] to an arbitrary JSON value. diff --git a/sent-java-core/src/main/kotlin/dm/sent/models/templates/SentDmServicesCommonContractsPocOsTemplateButtonProps.kt b/sent-java-core/src/main/kotlin/dm/sent/models/templates/SentDmServicesCommonContractsPocOsTemplateButtonProps.kt index 0fc246f8..7c681cbe 100644 --- a/sent-java-core/src/main/kotlin/dm/sent/models/templates/SentDmServicesCommonContractsPocOsTemplateButtonProps.kt +++ b/sent-java-core/src/main/kotlin/dm/sent/models/templates/SentDmServicesCommonContractsPocOsTemplateButtonProps.kt @@ -10,7 +10,9 @@ import dm.sent.core.ExcludeMissing import dm.sent.core.JsonField import dm.sent.core.JsonMissing import dm.sent.core.JsonValue +import dm.sent.core.checkKnown import dm.sent.core.checkRequired +import dm.sent.core.toImmutable import dm.sent.errors.SentInvalidDataException import java.util.Collections import java.util.Objects @@ -28,6 +30,7 @@ private constructor( private val text: JsonField, private val url: JsonField, private val urlType: JsonField, + private val variables: JsonField>, private val autofillText: JsonField, private val otpType: JsonField, private val packageName: JsonField, @@ -51,6 +54,9 @@ private constructor( @JsonProperty("text") @ExcludeMissing text: JsonField = JsonMissing.of(), @JsonProperty("url") @ExcludeMissing url: JsonField = JsonMissing.of(), @JsonProperty("urlType") @ExcludeMissing urlType: JsonField = JsonMissing.of(), + @JsonProperty("variables") + @ExcludeMissing + variables: JsonField> = JsonMissing.of(), @JsonProperty("autofillText") @ExcludeMissing autofillText: JsonField = JsonMissing.of(), @@ -70,6 +76,7 @@ private constructor( text, url, urlType, + variables, autofillText, otpType, packageName, @@ -125,6 +132,16 @@ private constructor( */ fun urlType(): String = urlType.getRequired("urlType") + /** + * Variables embedded in a dynamic URL button (only when UrlType = dynamic). Count is capped by + * TemplateContentLimits.MaxUrlButtonVariables; the placeholder must appear at the end of Url + * (validated in TemplateDefinitionValidator). + * + * @throws SentInvalidDataException if the JSON field has an unexpected type or is unexpectedly + * missing or null (e.g. if the server responded with an unexpected value). + */ + fun variables(): List = variables.getRequired("variables") + /** * @throws SentInvalidDataException if the JSON field has an unexpected type (e.g. if the server * responded with an unexpected value). @@ -207,6 +224,15 @@ private constructor( */ @JsonProperty("urlType") @ExcludeMissing fun _urlType(): JsonField = urlType + /** + * Returns the raw JSON value of [variables]. + * + * Unlike [variables], this method doesn't throw if the JSON field has an unexpected type. + */ + @JsonProperty("variables") + @ExcludeMissing + fun _variables(): JsonField> = variables + /** * Returns the raw JSON value of [autofillText]. * @@ -267,6 +293,7 @@ private constructor( * .text() * .url() * .urlType() + * .variables() * ``` */ @JvmStatic fun builder() = Builder() @@ -283,6 +310,7 @@ private constructor( private var text: JsonField? = null private var url: JsonField? = null private var urlType: JsonField? = null + private var variables: JsonField>? = null private var autofillText: JsonField = JsonMissing.of() private var otpType: JsonField = JsonMissing.of() private var packageName: JsonField = JsonMissing.of() @@ -302,6 +330,10 @@ private constructor( text = sentDmServicesCommonContractsPocOsTemplateButtonProps.text url = sentDmServicesCommonContractsPocOsTemplateButtonProps.url urlType = sentDmServicesCommonContractsPocOsTemplateButtonProps.urlType + variables = + sentDmServicesCommonContractsPocOsTemplateButtonProps.variables.map { + it.toMutableList() + } autofillText = sentDmServicesCommonContractsPocOsTemplateButtonProps.autofillText otpType = sentDmServicesCommonContractsPocOsTemplateButtonProps.otpType packageName = sentDmServicesCommonContractsPocOsTemplateButtonProps.packageName @@ -397,6 +429,36 @@ private constructor( */ fun urlType(urlType: JsonField) = apply { this.urlType = urlType } + /** + * Variables embedded in a dynamic URL button (only when UrlType = dynamic). Count is capped + * by TemplateContentLimits.MaxUrlButtonVariables; the placeholder must appear at the end of + * Url (validated in TemplateDefinitionValidator). + */ + fun variables(variables: List) = variables(JsonField.of(variables)) + + /** + * Sets [Builder.variables] to an arbitrary JSON value. + * + * You should usually call [Builder.variables] with a well-typed `List` + * value instead. This method is primarily for setting the field to an undocumented or not + * yet supported value. + */ + fun variables(variables: JsonField>) = apply { + this.variables = variables.map { it.toMutableList() } + } + + /** + * Adds a single [TemplateVariable] to [variables]. + * + * @throws IllegalStateException if the field was previously set to a non-list. + */ + fun addVariable(variable: TemplateVariable) = apply { + variables = + (variables ?: JsonField.of(mutableListOf())).also { + checkKnown("variables", it).add(variable) + } + } + fun autofillText(autofillText: String?) = autofillText(JsonField.ofNullable(autofillText)) /** Alias for calling [Builder.autofillText] with `autofillText.orElse(null)`. */ @@ -492,6 +554,7 @@ private constructor( * .text() * .url() * .urlType() + * .variables() * ``` * * @throws IllegalStateException if any required field is unset. @@ -506,6 +569,7 @@ private constructor( checkRequired("text", text), checkRequired("url", url), checkRequired("urlType", urlType), + checkRequired("variables", variables).map { it.toImmutable() }, autofillText, otpType, packageName, @@ -537,6 +601,7 @@ private constructor( text() url() urlType() + variables().forEach { it.validate() } autofillText() otpType() packageName() @@ -567,6 +632,7 @@ private constructor( (if (text.asKnown().isPresent) 1 else 0) + (if (url.asKnown().isPresent) 1 else 0) + (if (urlType.asKnown().isPresent) 1 else 0) + + (variables.asKnown().getOrNull()?.sumOf { it.validity().toInt() } ?: 0) + (if (autofillText.asKnown().isPresent) 1 else 0) + (if (otpType.asKnown().isPresent) 1 else 0) + (if (packageName.asKnown().isPresent) 1 else 0) + @@ -586,6 +652,7 @@ private constructor( text == other.text && url == other.url && urlType == other.urlType && + variables == other.variables && autofillText == other.autofillText && otpType == other.otpType && packageName == other.packageName && @@ -603,6 +670,7 @@ private constructor( text, url, urlType, + variables, autofillText, otpType, packageName, @@ -614,5 +682,5 @@ private constructor( override fun hashCode(): Int = hashCode override fun toString() = - "SentDmServicesCommonContractsPocOsTemplateButtonProps{activeFor=$activeFor, countryCode=$countryCode, offerCode=$offerCode, phoneNumber=$phoneNumber, quickReplyType=$quickReplyType, text=$text, url=$url, urlType=$urlType, autofillText=$autofillText, otpType=$otpType, packageName=$packageName, signatureHash=$signatureHash, additionalProperties=$additionalProperties}" + "SentDmServicesCommonContractsPocOsTemplateButtonProps{activeFor=$activeFor, countryCode=$countryCode, offerCode=$offerCode, phoneNumber=$phoneNumber, quickReplyType=$quickReplyType, text=$text, url=$url, urlType=$urlType, variables=$variables, autofillText=$autofillText, otpType=$otpType, packageName=$packageName, signatureHash=$signatureHash, additionalProperties=$additionalProperties}" } diff --git a/sent-java-core/src/test/kotlin/dm/sent/models/templates/SentDmServicesCommonContractsPocOsTemplateButtonPropsTest.kt b/sent-java-core/src/test/kotlin/dm/sent/models/templates/SentDmServicesCommonContractsPocOsTemplateButtonPropsTest.kt index 76a4dc9f..6c1ef9a9 100644 --- a/sent-java-core/src/test/kotlin/dm/sent/models/templates/SentDmServicesCommonContractsPocOsTemplateButtonPropsTest.kt +++ b/sent-java-core/src/test/kotlin/dm/sent/models/templates/SentDmServicesCommonContractsPocOsTemplateButtonPropsTest.kt @@ -19,8 +19,26 @@ internal class SentDmServicesCommonContractsPocOsTemplateButtonPropsTest { .phoneNumber("x") .quickReplyType("x") .text("text") - .url("x") + .url("url") .urlType("x") + .addVariable( + TemplateVariable.builder() + .name("x") + .props( + TemplateVariable.Props.builder() + .mediaType("x") + .sample("x") + .url("x") + .variableType("x") + .alt("alt") + .regex("regex") + .shortUrl("shortUrl") + .build() + ) + .type("x") + .id(0) + .build() + ) .autofillText("autofillText") .otpType("otpType") .packageName("packageName") @@ -36,8 +54,27 @@ internal class SentDmServicesCommonContractsPocOsTemplateButtonPropsTest { assertThat(sentDmServicesCommonContractsPocOsTemplateButtonProps.quickReplyType()) .isEqualTo("x") assertThat(sentDmServicesCommonContractsPocOsTemplateButtonProps.text()).isEqualTo("text") - assertThat(sentDmServicesCommonContractsPocOsTemplateButtonProps.url()).isEqualTo("x") + assertThat(sentDmServicesCommonContractsPocOsTemplateButtonProps.url()).isEqualTo("url") assertThat(sentDmServicesCommonContractsPocOsTemplateButtonProps.urlType()).isEqualTo("x") + assertThat(sentDmServicesCommonContractsPocOsTemplateButtonProps.variables()) + .containsExactly( + TemplateVariable.builder() + .name("x") + .props( + TemplateVariable.Props.builder() + .mediaType("x") + .sample("x") + .url("x") + .variableType("x") + .alt("alt") + .regex("regex") + .shortUrl("shortUrl") + .build() + ) + .type("x") + .id(0) + .build() + ) assertThat(sentDmServicesCommonContractsPocOsTemplateButtonProps.autofillText()) .contains("autofillText") assertThat(sentDmServicesCommonContractsPocOsTemplateButtonProps.otpType()) @@ -59,8 +96,26 @@ internal class SentDmServicesCommonContractsPocOsTemplateButtonPropsTest { .phoneNumber("x") .quickReplyType("x") .text("text") - .url("x") + .url("url") .urlType("x") + .addVariable( + TemplateVariable.builder() + .name("x") + .props( + TemplateVariable.Props.builder() + .mediaType("x") + .sample("x") + .url("x") + .variableType("x") + .alt("alt") + .regex("regex") + .shortUrl("shortUrl") + .build() + ) + .type("x") + .id(0) + .build() + ) .autofillText("autofillText") .otpType("otpType") .packageName("packageName") diff --git a/sent-java-core/src/test/kotlin/dm/sent/models/templates/SentDmServicesCommonContractsPocOsTemplateButtonTest.kt b/sent-java-core/src/test/kotlin/dm/sent/models/templates/SentDmServicesCommonContractsPocOsTemplateButtonTest.kt index f93dd2f7..23bca1b5 100644 --- a/sent-java-core/src/test/kotlin/dm/sent/models/templates/SentDmServicesCommonContractsPocOsTemplateButtonTest.kt +++ b/sent-java-core/src/test/kotlin/dm/sent/models/templates/SentDmServicesCommonContractsPocOsTemplateButtonTest.kt @@ -21,8 +21,26 @@ internal class SentDmServicesCommonContractsPocOsTemplateButtonTest { .phoneNumber("x") .quickReplyType("x") .text("text") - .url("x") + .url("url") .urlType("x") + .addVariable( + TemplateVariable.builder() + .name("x") + .props( + TemplateVariable.Props.builder() + .mediaType("x") + .sample("x") + .url("x") + .variableType("x") + .alt("alt") + .regex("regex") + .shortUrl("shortUrl") + .build() + ) + .type("x") + .id(0) + .build() + ) .autofillText("autofillText") .otpType("otpType") .packageName("packageName") @@ -42,8 +60,26 @@ internal class SentDmServicesCommonContractsPocOsTemplateButtonTest { .phoneNumber("x") .quickReplyType("x") .text("text") - .url("x") + .url("url") .urlType("x") + .addVariable( + TemplateVariable.builder() + .name("x") + .props( + TemplateVariable.Props.builder() + .mediaType("x") + .sample("x") + .url("x") + .variableType("x") + .alt("alt") + .regex("regex") + .shortUrl("shortUrl") + .build() + ) + .type("x") + .id(0) + .build() + ) .autofillText("autofillText") .otpType("otpType") .packageName("packageName") @@ -67,8 +103,26 @@ internal class SentDmServicesCommonContractsPocOsTemplateButtonTest { .phoneNumber("x") .quickReplyType("x") .text("text") - .url("x") + .url("url") .urlType("x") + .addVariable( + TemplateVariable.builder() + .name("x") + .props( + TemplateVariable.Props.builder() + .mediaType("x") + .sample("x") + .url("x") + .variableType("x") + .alt("alt") + .regex("regex") + .shortUrl("shortUrl") + .build() + ) + .type("x") + .id(0) + .build() + ) .autofillText("autofillText") .otpType("otpType") .packageName("packageName") diff --git a/sent-java-core/src/test/kotlin/dm/sent/models/templates/TemplateCreateParamsTest.kt b/sent-java-core/src/test/kotlin/dm/sent/models/templates/TemplateCreateParamsTest.kt index 6559e8cc..70ae7caf 100644 --- a/sent-java-core/src/test/kotlin/dm/sent/models/templates/TemplateCreateParamsTest.kt +++ b/sent-java-core/src/test/kotlin/dm/sent/models/templates/TemplateCreateParamsTest.kt @@ -152,8 +152,26 @@ internal class TemplateCreateParamsTest { .phoneNumber("x") .quickReplyType("x") .text("text") - .url("x") + .url("url") .urlType("x") + .addVariable( + TemplateVariable.builder() + .name("x") + .props( + TemplateVariable.Props.builder() + .mediaType("x") + .sample("x") + .url("x") + .variableType("x") + .alt("alt") + .regex("regex") + .shortUrl("shortUrl") + .build() + ) + .type("x") + .id(0) + .build() + ) .autofillText("autofillText") .otpType("otpType") .packageName("packageName") @@ -367,8 +385,26 @@ internal class TemplateCreateParamsTest { .phoneNumber("x") .quickReplyType("x") .text("text") - .url("x") + .url("url") .urlType("x") + .addVariable( + TemplateVariable.builder() + .name("x") + .props( + TemplateVariable.Props.builder() + .mediaType("x") + .sample("x") + .url("x") + .variableType("x") + .alt("alt") + .regex("regex") + .shortUrl("shortUrl") + .build() + ) + .type("x") + .id(0) + .build() + ) .autofillText("autofillText") .otpType("otpType") .packageName("packageName") @@ -601,8 +637,26 @@ internal class TemplateCreateParamsTest { .phoneNumber("x") .quickReplyType("x") .text("text") - .url("x") + .url("url") .urlType("x") + .addVariable( + TemplateVariable.builder() + .name("x") + .props( + TemplateVariable.Props.builder() + .mediaType("x") + .sample("x") + .url("x") + .variableType("x") + .alt("alt") + .regex("regex") + .shortUrl("shortUrl") + .build() + ) + .type("x") + .id(0) + .build() + ) .autofillText("autofillText") .otpType("otpType") .packageName("packageName") @@ -810,8 +864,26 @@ internal class TemplateCreateParamsTest { .phoneNumber("x") .quickReplyType("x") .text("text") - .url("x") + .url("url") .urlType("x") + .addVariable( + TemplateVariable.builder() + .name("x") + .props( + TemplateVariable.Props.builder() + .mediaType("x") + .sample("x") + .url("x") + .variableType("x") + .alt("alt") + .regex("regex") + .shortUrl("shortUrl") + .build() + ) + .type("x") + .id(0) + .build() + ) .autofillText("autofillText") .otpType("otpType") .packageName("packageName") diff --git a/sent-java-core/src/test/kotlin/dm/sent/models/templates/TemplateDefinitionTest.kt b/sent-java-core/src/test/kotlin/dm/sent/models/templates/TemplateDefinitionTest.kt index cdd9f226..2203c9b1 100644 --- a/sent-java-core/src/test/kotlin/dm/sent/models/templates/TemplateDefinitionTest.kt +++ b/sent-java-core/src/test/kotlin/dm/sent/models/templates/TemplateDefinitionTest.kt @@ -130,8 +130,26 @@ internal class TemplateDefinitionTest { .phoneNumber("x") .quickReplyType("x") .text("text") - .url("x") + .url("url") .urlType("x") + .addVariable( + TemplateVariable.builder() + .name("x") + .props( + TemplateVariable.Props.builder() + .mediaType("x") + .sample("x") + .url("x") + .variableType("x") + .alt("alt") + .regex("regex") + .shortUrl("shortUrl") + .build() + ) + .type("x") + .id(0) + .build() + ) .autofillText("autofillText") .otpType("otpType") .packageName("packageName") @@ -312,8 +330,26 @@ internal class TemplateDefinitionTest { .phoneNumber("x") .quickReplyType("x") .text("text") - .url("x") + .url("url") .urlType("x") + .addVariable( + TemplateVariable.builder() + .name("x") + .props( + TemplateVariable.Props.builder() + .mediaType("x") + .sample("x") + .url("x") + .variableType("x") + .alt("alt") + .regex("regex") + .shortUrl("shortUrl") + .build() + ) + .type("x") + .id(0) + .build() + ) .autofillText("autofillText") .otpType("otpType") .packageName("packageName") @@ -498,8 +534,26 @@ internal class TemplateDefinitionTest { .phoneNumber("x") .quickReplyType("x") .text("text") - .url("x") + .url("url") .urlType("x") + .addVariable( + TemplateVariable.builder() + .name("x") + .props( + TemplateVariable.Props.builder() + .mediaType("x") + .sample("x") + .url("x") + .variableType("x") + .alt("alt") + .regex("regex") + .shortUrl("shortUrl") + .build() + ) + .type("x") + .id(0) + .build() + ) .autofillText("autofillText") .otpType("otpType") .packageName("packageName") diff --git a/sent-java-core/src/test/kotlin/dm/sent/models/templates/TemplateUpdateParamsTest.kt b/sent-java-core/src/test/kotlin/dm/sent/models/templates/TemplateUpdateParamsTest.kt index 3681d06a..cad209c1 100644 --- a/sent-java-core/src/test/kotlin/dm/sent/models/templates/TemplateUpdateParamsTest.kt +++ b/sent-java-core/src/test/kotlin/dm/sent/models/templates/TemplateUpdateParamsTest.kt @@ -134,8 +134,26 @@ internal class TemplateUpdateParamsTest { .phoneNumber("x") .quickReplyType("x") .text("text") - .url("x") + .url("url") .urlType("x") + .addVariable( + TemplateVariable.builder() + .name("x") + .props( + TemplateVariable.Props.builder() + .mediaType("x") + .sample("x") + .url("x") + .variableType("x") + .alt("alt") + .regex("regex") + .shortUrl("shortUrl") + .build() + ) + .type("x") + .id(0) + .build() + ) .autofillText("autofillText") .otpType("otpType") .packageName("packageName") @@ -340,8 +358,26 @@ internal class TemplateUpdateParamsTest { .phoneNumber("x") .quickReplyType("x") .text("text") - .url("x") + .url("url") .urlType("x") + .addVariable( + TemplateVariable.builder() + .name("x") + .props( + TemplateVariable.Props.builder() + .mediaType("x") + .sample("x") + .url("x") + .variableType("x") + .alt("alt") + .regex("regex") + .shortUrl("shortUrl") + .build() + ) + .type("x") + .id(0) + .build() + ) .autofillText("autofillText") .otpType("otpType") .packageName("packageName") @@ -556,8 +592,26 @@ internal class TemplateUpdateParamsTest { .phoneNumber("x") .quickReplyType("x") .text("text") - .url("x") + .url("url") .urlType("x") + .addVariable( + TemplateVariable.builder() + .name("x") + .props( + TemplateVariable.Props.builder() + .mediaType("x") + .sample("x") + .url("x") + .variableType("x") + .alt("alt") + .regex("regex") + .shortUrl("shortUrl") + .build() + ) + .type("x") + .id(0) + .build() + ) .autofillText("autofillText") .otpType("otpType") .packageName("packageName") @@ -747,8 +801,26 @@ internal class TemplateUpdateParamsTest { .phoneNumber("x") .quickReplyType("x") .text("text") - .url("x") + .url("url") .urlType("x") + .addVariable( + TemplateVariable.builder() + .name("x") + .props( + TemplateVariable.Props.builder() + .mediaType("x") + .sample("x") + .url("x") + .variableType("x") + .alt("alt") + .regex("regex") + .shortUrl("shortUrl") + .build() + ) + .type("x") + .id(0) + .build() + ) .autofillText("autofillText") .otpType("otpType") .packageName("packageName") diff --git a/sent-java-core/src/test/kotlin/dm/sent/services/async/TemplateServiceAsyncTest.kt b/sent-java-core/src/test/kotlin/dm/sent/services/async/TemplateServiceAsyncTest.kt index 6fe03d62..312e7d1d 100644 --- a/sent-java-core/src/test/kotlin/dm/sent/services/async/TemplateServiceAsyncTest.kt +++ b/sent-java-core/src/test/kotlin/dm/sent/services/async/TemplateServiceAsyncTest.kt @@ -175,8 +175,26 @@ internal class TemplateServiceAsyncTest { .phoneNumber("x") .quickReplyType("x") .text("text") - .url("x") + .url("url") .urlType("x") + .addVariable( + TemplateVariable.builder() + .name("x") + .props( + TemplateVariable.Props.builder() + .mediaType("x") + .sample("x") + .url("x") + .variableType("x") + .alt("alt") + .regex("regex") + .shortUrl("shortUrl") + .build() + ) + .type("x") + .id(0) + .build() + ) .autofillText("autofillText") .otpType("otpType") .packageName("packageName") @@ -398,8 +416,26 @@ internal class TemplateServiceAsyncTest { .phoneNumber("x") .quickReplyType("x") .text("text") - .url("x") + .url("url") .urlType("x") + .addVariable( + TemplateVariable.builder() + .name("x") + .props( + TemplateVariable.Props.builder() + .mediaType("x") + .sample("x") + .url("x") + .variableType("x") + .alt("alt") + .regex("regex") + .shortUrl("shortUrl") + .build() + ) + .type("x") + .id(0) + .build() + ) .autofillText("autofillText") .otpType("otpType") .packageName("packageName") diff --git a/sent-java-core/src/test/kotlin/dm/sent/services/blocking/TemplateServiceTest.kt b/sent-java-core/src/test/kotlin/dm/sent/services/blocking/TemplateServiceTest.kt index 362998dc..6d8f8577 100644 --- a/sent-java-core/src/test/kotlin/dm/sent/services/blocking/TemplateServiceTest.kt +++ b/sent-java-core/src/test/kotlin/dm/sent/services/blocking/TemplateServiceTest.kt @@ -175,8 +175,26 @@ internal class TemplateServiceTest { .phoneNumber("x") .quickReplyType("x") .text("text") - .url("x") + .url("url") .urlType("x") + .addVariable( + TemplateVariable.builder() + .name("x") + .props( + TemplateVariable.Props.builder() + .mediaType("x") + .sample("x") + .url("x") + .variableType("x") + .alt("alt") + .regex("regex") + .shortUrl("shortUrl") + .build() + ) + .type("x") + .id(0) + .build() + ) .autofillText("autofillText") .otpType("otpType") .packageName("packageName") @@ -396,8 +414,26 @@ internal class TemplateServiceTest { .phoneNumber("x") .quickReplyType("x") .text("text") - .url("x") + .url("url") .urlType("x") + .addVariable( + TemplateVariable.builder() + .name("x") + .props( + TemplateVariable.Props.builder() + .mediaType("x") + .sample("x") + .url("x") + .variableType("x") + .alt("alt") + .regex("regex") + .shortUrl("shortUrl") + .build() + ) + .type("x") + .id(0) + .build() + ) .autofillText("autofillText") .otpType("otpType") .packageName("packageName")