Skip to content

Commit

Permalink
test(2.6.0): check correctness of realisation by reading AsyncAPI exa…
Browse files Browse the repository at this point in the history
…mple - Simple Example

#165
  • Loading branch information
Pakisan committed Feb 26, 2024
1 parent 6843714 commit 77472da
Show file tree
Hide file tree
Showing 2 changed files with 87 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
package com.asyncapi.examples.v2._6_0

import com.asyncapi.v2.Reference
import com.asyncapi.v2._6_0.model.channel.ChannelItem
import com.asyncapi.v2._6_0.model.channel.message.Message
import com.asyncapi.v2._6_0.model.channel.operation.Operation
import com.asyncapi.v2._6_0.model.component.Components
import com.asyncapi.v2._6_0.model.info.Info
import com.asyncapi.v2.schema.Schema

class Simple: AbstractExampleValidationTest() {

override fun specificationLocation(): String = "/examples/v2.6.0/simple.yml"

override fun expectedInfo(): Info {
return Info.builder()
.title("Account Service")
.version("1.0.0")
.description("This service is in charge of processing user signups")
.build()
}

override fun expectedServers(): Map<String, Any>? = null

override fun expectedChannels(): Map<String, Any> {
return mapOf(
Pair("user/signedup", ChannelItem.builder()
.subscribe(Operation.builder()
.message(Reference("#/components/messages/UserSignedUp"))
.build()
)
.build()
),
)
}

override fun expectedComponents(): Components {
return Components.builder()
.messages(mapOf(
Pair("UserSignedUp", Message.builder()
.payload(Schema.builder()
.type("object")
.properties(mapOf(
Pair("displayName", Schema.builder()
.type("string")
.description("Name of the user")
.build()
),
Pair("email", Schema.builder()
.type("string")
.format("email")
.description("Email of the user")
.build()
)
))
.build()
)
.build()
)
))
.build()
}

}
23 changes: 23 additions & 0 deletions asyncapi-core/src/test/resources/examples/v2.6.0/simple.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
asyncapi: "2.6.0"
info:
title: Account Service
version: 1.0.0
description: This service is in charge of processing user signups
channels:
user/signedup:
subscribe:
message:
$ref: '#/components/messages/UserSignedUp'
components:
messages:
UserSignedUp:
payload:
type: object
properties:
displayName:
type: string
description: Name of the user
email:
type: string
format: email
description: Email of the user

0 comments on commit 77472da

Please sign in to comment.