mirror of https://github.com/usbharu/Hideout.git
test: inboxのConsumesのテストを追加
This commit is contained in:
parent
beeb27350e
commit
8d4288247a
|
@ -78,6 +78,17 @@ class InboxCommonTest {
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Karate.Test
|
||||||
|
@TestFactory
|
||||||
|
fun `inboxにConetnt-Type application *+json以外が来たら415を返す`(): Karate {
|
||||||
|
return KarateUtil.e2eTest(
|
||||||
|
"InboxCommonTest",
|
||||||
|
"inboxにContent-Type application/json以外が来たら415を返す",
|
||||||
|
mapOf("karate.port" to port),
|
||||||
|
javaClass
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
lateinit var server: MockServer
|
lateinit var server: MockServer
|
||||||
|
|
||||||
|
|
|
@ -103,3 +103,56 @@ Feature: Inbox Common Test
|
||||||
And request inbox
|
And request inbox
|
||||||
When method post
|
When method post
|
||||||
Then status 401
|
Then status 401
|
||||||
|
|
||||||
|
|
||||||
|
Scenario: inboxにContent-Type application/json以外が来たら415を返す
|
||||||
|
|
||||||
|
* def inbox =
|
||||||
|
"""
|
||||||
|
{"type": "Follow"}
|
||||||
|
"""
|
||||||
|
|
||||||
|
Given path '/inbox'
|
||||||
|
And request inbox
|
||||||
|
And header Signature = 'keyId="'+ remoteUrl +'/users/test-user#pubkey", algorithm="rsa-sha256", headers="(request-target) date host digest", signature="FfpkmBogW70FMo94yovGpl15L/m4bDjVIFb9mSZUstPE3H00nHiqNsjAq671qFMJsGOO1uWfLEExcdvzwTiC3wuHShzingvxQUbTgcgRTRZcHbtrOZxT8hYHGndpCXGv/NOLkfXDtZO9v5u0fnA2yJFokzyPHOPJ1cJliWlXP38Bl/pO4H5rBLQBZKpM2jYIjMyI78G2rDXNHEeGrGiyfB5SKb3H6zFQL+X9QpXUI4n0f07VsnwaDyp63oUopmzNUyBEuSqB+8va/lbfcWwrxpZnKGzQRZ+VBcV7jDoKGNOP9/O1xEI2CwB8sh+h6KVHdX3EQEvO1slaaLzcwRRqrQ=="'
|
||||||
|
And header Accept = 'application/activity+json'
|
||||||
|
And header Content-Type = 'application/json'
|
||||||
|
When method post
|
||||||
|
Then status 202
|
||||||
|
|
||||||
|
Given path '/inbox'
|
||||||
|
And request inbox
|
||||||
|
And header Signature = 'keyId="'+ remoteUrl +'/users/test-user#pubkey", algorithm="rsa-sha256", headers="(request-target) date host digest", signature="FfpkmBogW70FMo94yovGpl15L/m4bDjVIFb9mSZUstPE3H00nHiqNsjAq671qFMJsGOO1uWfLEExcdvzwTiC3wuHShzingvxQUbTgcgRTRZcHbtrOZxT8hYHGndpCXGv/NOLkfXDtZO9v5u0fnA2yJFokzyPHOPJ1cJliWlXP38Bl/pO4H5rBLQBZKpM2jYIjMyI78G2rDXNHEeGrGiyfB5SKb3H6zFQL+X9QpXUI4n0f07VsnwaDyp63oUopmzNUyBEuSqB+8va/lbfcWwrxpZnKGzQRZ+VBcV7jDoKGNOP9/O1xEI2CwB8sh+h6KVHdX3EQEvO1slaaLzcwRRqrQ=="'
|
||||||
|
And header Accept = 'application/activity+json'
|
||||||
|
And header Content-Type = 'application/activity+json'
|
||||||
|
When method post
|
||||||
|
Then status 202
|
||||||
|
|
||||||
|
Given path '/inbox'
|
||||||
|
And request inbox
|
||||||
|
And header Signature = 'keyId="'+ remoteUrl +'/users/test-user#pubkey", algorithm="rsa-sha256", headers="(request-target) date host digest", signature="FfpkmBogW70FMo94yovGpl15L/m4bDjVIFb9mSZUstPE3H00nHiqNsjAq671qFMJsGOO1uWfLEExcdvzwTiC3wuHShzingvxQUbTgcgRTRZcHbtrOZxT8hYHGndpCXGv/NOLkfXDtZO9v5u0fnA2yJFokzyPHOPJ1cJliWlXP38Bl/pO4H5rBLQBZKpM2jYIjMyI78G2rDXNHEeGrGiyfB5SKb3H6zFQL+X9QpXUI4n0f07VsnwaDyp63oUopmzNUyBEuSqB+8va/lbfcWwrxpZnKGzQRZ+VBcV7jDoKGNOP9/O1xEI2CwB8sh+h6KVHdX3EQEvO1slaaLzcwRRqrQ=="'
|
||||||
|
And header Accept = 'application/activity+json'
|
||||||
|
And header Content-Type = 'application/ld+json; profile="https://www.w3.org/ns/activitystreams"'
|
||||||
|
When method post
|
||||||
|
Then status 202
|
||||||
|
|
||||||
|
Given path '/inbox'
|
||||||
|
And header Signature = 'keyId="'+ remoteUrl +'/users/test-user#pubkey", algorithm="rsa-sha256", headers="(request-target) date host digest", signature="FfpkmBogW70FMo94yovGpl15L/m4bDjVIFb9mSZUstPE3H00nHiqNsjAq671qFMJsGOO1uWfLEExcdvzwTiC3wuHShzingvxQUbTgcgRTRZcHbtrOZxT8hYHGndpCXGv/NOLkfXDtZO9v5u0fnA2yJFokzyPHOPJ1cJliWlXP38Bl/pO4H5rBLQBZKpM2jYIjMyI78G2rDXNHEeGrGiyfB5SKb3H6zFQL+X9QpXUI4n0f07VsnwaDyp63oUopmzNUyBEuSqB+8va/lbfcWwrxpZnKGzQRZ+VBcV7jDoKGNOP9/O1xEI2CwB8sh+h6KVHdX3EQEvO1slaaLzcwRRqrQ=="'
|
||||||
|
And header Accept = 'application/activity+json'
|
||||||
|
When method post
|
||||||
|
Then status 415
|
||||||
|
|
||||||
|
* def html =
|
||||||
|
"""
|
||||||
|
<html>
|
||||||
|
|
||||||
|
</html>
|
||||||
|
"""
|
||||||
|
|
||||||
|
Given path '/inbox'
|
||||||
|
And header Signature = 'keyId="'+ remoteUrl +'/users/test-user#pubkey", algorithm="rsa-sha256", headers="(request-target) date host digest", signature="FfpkmBogW70FMo94yovGpl15L/m4bDjVIFb9mSZUstPE3H00nHiqNsjAq671qFMJsGOO1uWfLEExcdvzwTiC3wuHShzingvxQUbTgcgRTRZcHbtrOZxT8hYHGndpCXGv/NOLkfXDtZO9v5u0fnA2yJFokzyPHOPJ1cJliWlXP38Bl/pO4H5rBLQBZKpM2jYIjMyI78G2rDXNHEeGrGiyfB5SKb3H6zFQL+X9QpXUI4n0f07VsnwaDyp63oUopmzNUyBEuSqB+8va/lbfcWwrxpZnKGzQRZ+VBcV7jDoKGNOP9/O1xEI2CwB8sh+h6KVHdX3EQEvO1slaaLzcwRRqrQ=="'
|
||||||
|
And header Accept = 'application/activity+json'
|
||||||
|
And header Content-Type = 'text/html'
|
||||||
|
And request html
|
||||||
|
When method post
|
||||||
|
Then status 415
|
||||||
|
|
|
@ -15,6 +15,7 @@ interface InboxController {
|
||||||
"application/activity+json",
|
"application/activity+json",
|
||||||
"application/ld+json; profile=\"https://www.w3.org/ns/activitystreams\""
|
"application/ld+json; profile=\"https://www.w3.org/ns/activitystreams\""
|
||||||
],
|
],
|
||||||
|
consumes = ["application/json", "application/*+json"],
|
||||||
method = [RequestMethod.POST]
|
method = [RequestMethod.POST]
|
||||||
)
|
)
|
||||||
suspend fun inbox(@RequestBody string: String): ResponseEntity<Unit>
|
suspend fun inbox(@RequestBody string: String): ResponseEntity<Unit>
|
||||||
|
|
Loading…
Reference in New Issue