Simplified input & output message DSL
This commit is contained in:
@@ -22,11 +22,13 @@ package org.springframework.cloud.contract.spec.internal
|
||||
@ContractDslMarker
|
||||
class InputDsl : CommonDsl(), RegexCreatingProperty<ClientDslProperty> {
|
||||
|
||||
private val delegate = Input()
|
||||
|
||||
var messageFrom: DslProperty<String>? = null
|
||||
var triggeredBy: ExecutionProperty? = null
|
||||
var triggeredBy: String? = null
|
||||
var headers: Headers? = null
|
||||
var messageBody: Input.BodyType? = null
|
||||
var assertThat: ExecutionProperty? = null
|
||||
var assertThat: String? = null
|
||||
var bodyMatchers: BodyMatchers? = null
|
||||
|
||||
fun messageFrom(messageFrom: String) {
|
||||
@@ -37,10 +39,6 @@ class InputDsl : CommonDsl(), RegexCreatingProperty<ClientDslProperty> {
|
||||
this.headers = HeadersDsl().apply(headers).get()
|
||||
}
|
||||
|
||||
fun triggeredBy(triggeredBy: String) {
|
||||
this.triggeredBy = ExecutionProperty(triggeredBy)
|
||||
}
|
||||
|
||||
fun messageBody(vararg pairs: Pair<String, Any>) {
|
||||
this.messageBody = Input.BodyType(pairs.toMap())
|
||||
}
|
||||
@@ -53,64 +51,60 @@ class InputDsl : CommonDsl(), RegexCreatingProperty<ClientDslProperty> {
|
||||
this.messageBody = Input.BodyType(value)
|
||||
}
|
||||
|
||||
fun assertThat(assertThat: String) {
|
||||
this.assertThat = ExecutionProperty(assertThat)
|
||||
}
|
||||
|
||||
fun bodyMatchers(configurer: BodyMatchersDsl.() -> Unit) {
|
||||
bodyMatchers = BodyMatchersDsl().apply(configurer).get()
|
||||
this.bodyMatchers = BodyMatchersDsl().apply(configurer).get()
|
||||
}
|
||||
|
||||
override fun anyAlphaUnicode(): ClientDslProperty = Input().anyAlphaUnicode()
|
||||
override fun anyAlphaUnicode(): ClientDslProperty = delegate.anyAlphaUnicode()
|
||||
|
||||
override fun anyAlphaNumeric(): ClientDslProperty = Input().anyAlphaNumeric()
|
||||
override fun anyAlphaNumeric(): ClientDslProperty = delegate.anyAlphaNumeric()
|
||||
|
||||
override fun anyNumber(): ClientDslProperty = Input().anyNumber()
|
||||
override fun anyNumber(): ClientDslProperty = delegate.anyNumber()
|
||||
|
||||
override fun anyInteger(): ClientDslProperty = Input().anyInteger()
|
||||
override fun anyInteger(): ClientDslProperty = delegate.anyInteger()
|
||||
|
||||
override fun anyPositiveInt(): ClientDslProperty = Input().anyPositiveInt()
|
||||
override fun anyPositiveInt(): ClientDslProperty = delegate.anyPositiveInt()
|
||||
|
||||
override fun anyDouble(): ClientDslProperty = Input().anyDouble()
|
||||
override fun anyDouble(): ClientDslProperty = delegate.anyDouble()
|
||||
|
||||
override fun anyHex(): ClientDslProperty = Input().anyHex()
|
||||
override fun anyHex(): ClientDslProperty = delegate.anyHex()
|
||||
|
||||
override fun aBoolean(): ClientDslProperty = Input().aBoolean()
|
||||
override fun aBoolean(): ClientDslProperty = delegate.aBoolean()
|
||||
|
||||
override fun anyIpAddress(): ClientDslProperty = Input().anyIpAddress()
|
||||
override fun anyIpAddress(): ClientDslProperty = delegate.anyIpAddress()
|
||||
|
||||
override fun anyHostname(): ClientDslProperty = Input().anyHostname()
|
||||
override fun anyHostname(): ClientDslProperty = delegate.anyHostname()
|
||||
|
||||
override fun anyEmail(): ClientDslProperty = Input().anyEmail()
|
||||
override fun anyEmail(): ClientDslProperty = delegate.anyEmail()
|
||||
|
||||
override fun anyUrl(): ClientDslProperty = Input().anyUrl()
|
||||
override fun anyUrl(): ClientDslProperty = delegate.anyUrl()
|
||||
|
||||
override fun anyHttpsUrl(): ClientDslProperty = Input().anyHttpsUrl()
|
||||
override fun anyHttpsUrl(): ClientDslProperty = delegate.anyHttpsUrl()
|
||||
|
||||
override fun anyUuid(): ClientDslProperty = Input().anyUuid()
|
||||
override fun anyUuid(): ClientDslProperty = delegate.anyUuid()
|
||||
|
||||
override fun anyDate(): ClientDslProperty = Input().anyDate()
|
||||
override fun anyDate(): ClientDslProperty = delegate.anyDate()
|
||||
|
||||
override fun anyDateTime(): ClientDslProperty = Input().anyDateTime()
|
||||
override fun anyDateTime(): ClientDslProperty = delegate.anyDateTime()
|
||||
|
||||
override fun anyTime(): ClientDslProperty = Input().anyTime()
|
||||
override fun anyTime(): ClientDslProperty = delegate.anyTime()
|
||||
|
||||
override fun anyIso8601WithOffset(): ClientDslProperty = Input().anyIso8601WithOffset()
|
||||
override fun anyIso8601WithOffset(): ClientDslProperty = delegate.anyIso8601WithOffset()
|
||||
|
||||
override fun anyNonBlankString(): ClientDslProperty = Input().anyNonBlankString()
|
||||
override fun anyNonBlankString(): ClientDslProperty = delegate.anyNonBlankString()
|
||||
|
||||
override fun anyNonEmptyString(): ClientDslProperty = Input().anyNonEmptyString()
|
||||
override fun anyNonEmptyString(): ClientDslProperty = delegate.anyNonEmptyString()
|
||||
|
||||
override fun anyOf(vararg values: String?): ClientDslProperty = Input().anyOf(*values)
|
||||
override fun anyOf(vararg values: String?): ClientDslProperty = delegate.anyOf(*values)
|
||||
|
||||
internal fun get(): Input {
|
||||
val input = Input()
|
||||
messageFrom?.also { input.messageFrom = messageFrom!! }
|
||||
triggeredBy?.also { input.triggeredBy = triggeredBy!! }
|
||||
headers?.also { input.messageHeaders = headers!! }
|
||||
messageBody?.also { input.messageBody = messageBody!! }
|
||||
assertThat?.also { input.assertThat = assertThat!! }
|
||||
bodyMatchers?.also { input.bodyMatchers = bodyMatchers!! }
|
||||
messageFrom?.also { input.messageFrom = messageFrom }
|
||||
triggeredBy?.also { input.triggeredBy(triggeredBy) }
|
||||
headers?.also { input.messageHeaders = headers }
|
||||
messageBody?.also { input.messageBody = messageBody }
|
||||
assertThat?.also { input.assertThat(assertThat) }
|
||||
bodyMatchers?.also { input.bodyMatchers = bodyMatchers }
|
||||
return input
|
||||
}
|
||||
}
|
||||
|
||||
@@ -22,10 +22,12 @@ package org.springframework.cloud.contract.spec.internal
|
||||
@ContractDslMarker
|
||||
class OutputMessageDsl : CommonDsl(), RegexCreatingProperty<ServerDslProperty> {
|
||||
|
||||
private val delegate = OutputMessage()
|
||||
|
||||
var sentTo: DslProperty<String>? = null
|
||||
var headers: Headers? = null
|
||||
var body: DslProperty<Any>? = null
|
||||
var assertThat: ExecutionProperty? = null
|
||||
var assertThat: String? = null
|
||||
var bodyMatchers: ResponseBodyMatchers? = null
|
||||
|
||||
fun sentTo(sentTo: String) {
|
||||
@@ -40,62 +42,58 @@ class OutputMessageDsl : CommonDsl(), RegexCreatingProperty<ServerDslProperty> {
|
||||
this.body = DslProperty(body)
|
||||
}
|
||||
|
||||
fun assertThat(assertThat: String) {
|
||||
this.assertThat = ExecutionProperty(assertThat)
|
||||
}
|
||||
|
||||
fun bodyMatchers(configurer: ResponseBodyMatchersDsl.() -> Unit) {
|
||||
bodyMatchers = ResponseBodyMatchersDsl().apply(configurer).get()
|
||||
this.bodyMatchers = ResponseBodyMatchersDsl().apply(configurer).get()
|
||||
}
|
||||
|
||||
override fun anyAlphaUnicode(): ServerDslProperty = OutputMessage().anyAlphaUnicode()
|
||||
override fun anyAlphaUnicode(): ServerDslProperty = delegate.anyAlphaUnicode()
|
||||
|
||||
override fun anyAlphaNumeric(): ServerDslProperty = OutputMessage().anyAlphaNumeric()
|
||||
override fun anyAlphaNumeric(): ServerDslProperty = delegate.anyAlphaNumeric()
|
||||
|
||||
override fun anyNumber(): ServerDslProperty = OutputMessage().anyNumber()
|
||||
override fun anyNumber(): ServerDslProperty = delegate.anyNumber()
|
||||
|
||||
override fun anyInteger(): ServerDslProperty = OutputMessage().anyInteger()
|
||||
override fun anyInteger(): ServerDslProperty = delegate.anyInteger()
|
||||
|
||||
override fun anyPositiveInt(): ServerDslProperty = OutputMessage().anyPositiveInt()
|
||||
override fun anyPositiveInt(): ServerDslProperty = delegate.anyPositiveInt()
|
||||
|
||||
override fun anyDouble(): ServerDslProperty = OutputMessage().anyDouble()
|
||||
override fun anyDouble(): ServerDslProperty = delegate.anyDouble()
|
||||
|
||||
override fun anyHex(): ServerDslProperty = OutputMessage().anyHex()
|
||||
override fun anyHex(): ServerDslProperty = delegate.anyHex()
|
||||
|
||||
override fun aBoolean(): ServerDslProperty = OutputMessage().aBoolean()
|
||||
override fun aBoolean(): ServerDslProperty = delegate.aBoolean()
|
||||
|
||||
override fun anyIpAddress(): ServerDslProperty = OutputMessage().anyIpAddress()
|
||||
override fun anyIpAddress(): ServerDslProperty = delegate.anyIpAddress()
|
||||
|
||||
override fun anyHostname(): ServerDslProperty = OutputMessage().anyHostname()
|
||||
override fun anyHostname(): ServerDslProperty = delegate.anyHostname()
|
||||
|
||||
override fun anyEmail(): ServerDslProperty = OutputMessage().anyEmail()
|
||||
override fun anyEmail(): ServerDslProperty = delegate.anyEmail()
|
||||
|
||||
override fun anyUrl(): ServerDslProperty = OutputMessage().anyUrl()
|
||||
override fun anyUrl(): ServerDslProperty = delegate.anyUrl()
|
||||
|
||||
override fun anyHttpsUrl(): ServerDslProperty = OutputMessage().anyHttpsUrl()
|
||||
override fun anyHttpsUrl(): ServerDslProperty = delegate.anyHttpsUrl()
|
||||
|
||||
override fun anyUuid(): ServerDslProperty = OutputMessage().anyUuid()
|
||||
override fun anyUuid(): ServerDslProperty = delegate.anyUuid()
|
||||
|
||||
override fun anyDate(): ServerDslProperty = OutputMessage().anyDate()
|
||||
override fun anyDate(): ServerDslProperty = delegate.anyDate()
|
||||
|
||||
override fun anyDateTime(): ServerDslProperty = OutputMessage().anyDateTime()
|
||||
override fun anyDateTime(): ServerDslProperty = delegate.anyDateTime()
|
||||
|
||||
override fun anyTime(): ServerDslProperty = OutputMessage().anyTime()
|
||||
override fun anyTime(): ServerDslProperty = delegate.anyTime()
|
||||
|
||||
override fun anyIso8601WithOffset(): ServerDslProperty = OutputMessage().anyIso8601WithOffset()
|
||||
override fun anyIso8601WithOffset(): ServerDslProperty = delegate.anyIso8601WithOffset()
|
||||
|
||||
override fun anyNonBlankString(): ServerDslProperty = OutputMessage().anyNonBlankString()
|
||||
override fun anyNonBlankString(): ServerDslProperty = delegate.anyNonBlankString()
|
||||
|
||||
override fun anyNonEmptyString(): ServerDslProperty = OutputMessage().anyNonEmptyString()
|
||||
override fun anyNonEmptyString(): ServerDslProperty = delegate.anyNonEmptyString()
|
||||
|
||||
override fun anyOf(vararg values: String?): ServerDslProperty = OutputMessage().anyOf(*values)
|
||||
override fun anyOf(vararg values: String?): ServerDslProperty = delegate.anyOf(*values)
|
||||
|
||||
internal fun get(): OutputMessage {
|
||||
val outputMessage = OutputMessage()
|
||||
sentTo?.also { outputMessage.sentTo = sentTo }
|
||||
body?.also { outputMessage.body = body }
|
||||
headers?.also { outputMessage.headers = headers }
|
||||
assertThat?.also { outputMessage.assertThat = assertThat }
|
||||
assertThat?.also { outputMessage.assertThat(assertThat) }
|
||||
bodyMatchers?.also { outputMessage.bodyMatchers = bodyMatchers }
|
||||
return outputMessage
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user