123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104 |
- discard """
- matrix: "--mm:refc; --mm:arc"
- joinable: false
- """
- import std/[unittest, asyncdispatch]
- # bug #18616
- type
- ClientResponse = object
- status*: int
- data*: string
- template asyncTest*(name: string, body: untyped): untyped =
- test name:
- waitFor((
- proc() {.async, gcsafe.} =
- body
- )())
- suite "Test suite":
- asyncTest "test1":
- const PostVectors = [
- (
- ("/test/post", "somebody0908", "text/html",
- "app/type1;q=0.9,app/type2;q=0.8"),
- ClientResponse(status: 200, data: "type1[text/html,somebody0908]")
- ),
- (
- ("/test/post", "somebody0908", "text/html",
- "app/type2;q=0.8,app/type1;q=0.9"),
- ClientResponse(status: 200, data: "type1[text/html,somebody0908]")
- ),
- (
- ("/test/post", "somebody09", "text/html",
- "app/type2,app/type1;q=0.9"),
- ClientResponse(status: 200, data: "type2[text/html,somebody09]")
- ),
- (
- ("/test/post", "somebody09", "text/html", "app/type1;q=0.9,app/type2"),
- ClientResponse(status: 200, data: "type2[text/html,somebody09]")
- ),
- (
- ("/test/post", "somebody", "text/html", "*/*"),
- ClientResponse(status: 200, data: "type1[text/html,somebody]")
- ),
- (
- ("/test/post", "somebody", "text/html", ""),
- ClientResponse(status: 200, data: "type1[text/html,somebody]")
- ),
- (
- ("/test/post", "somebody", "text/html", "app/type2"),
- ClientResponse(status: 200, data: "type2[text/html,somebody]")
- ),
- (
- ("/test/post", "somebody", "text/html", "app/type3"),
- ClientResponse(status: 406, data: "")
- )
- ]
- for item in PostVectors:
- discard item
- asyncTest "test2":
- const PostVectors = [
- (
- "/test/post", "somebody0908", "text/html",
- "app/type1;q=0.9,app/type2;q=0.8",
- ClientResponse(status: 200, data: "type1[text/html,somebody0908]")
- ),
- (
- "/test/post", "somebody0908", "text/html",
- "app/type2;q=0.8,app/type1;q=0.9",
- ClientResponse(status: 200, data: "type1[text/html,somebody0908]")
- ),
- (
- "/test/post", "somebody09", "text/html",
- "app/type2,app/type1;q=0.9",
- ClientResponse(status: 200, data: "type2[text/html,somebody09]")
- ),
- (
- "/test/post", "somebody09", "text/html", "app/type1;q=0.9,app/type2",
- ClientResponse(status: 200, data: "type2[text/html,somebody09]")
- ),
- (
- "/test/post", "somebody", "text/html", "*/*",
- ClientResponse(status: 200, data: "type1[text/html,somebody]")
- ),
- (
- "/test/post", "somebody", "text/html", "",
- ClientResponse(status: 200, data: "type1[text/html,somebody]")
- ),
- (
- "/test/post", "somebody", "text/html", "app/type2",
- ClientResponse(status: 200, data: "type2[text/html,somebody]")
- ),
- (
- "/test/post", "somebody", "text/html", "app/type3",
- ClientResponse(status: 406, data: "")
- )
- ]
- for item in PostVectors:
- discard item
|