Allow select in OpenAPI for POST requests (#1375)
If you use `return=representation`, `select` is useful in `POST` requests. It already works correctly, but is missing from the OpenAPI spec.
This commit is contained in:
committed by
Steve Chávez
parent
b87734343e
commit
57ebf43e85
@@ -218,7 +218,7 @@ makePathItem (t, cs, _) = ("/" ++ unpack tn, p $ tableInsertable t)
|
|||||||
)
|
)
|
||||||
)
|
)
|
||||||
postOp = tOp
|
postOp = tOp
|
||||||
& parameters .~ map ref ["body." <> tn, "preferReturn"]
|
& parameters .~ map ref ["body." <> tn, "select", "preferReturn"]
|
||||||
& at 201 ?~ "Created"
|
& at 201 ?~ "Created"
|
||||||
patchOp = tOp
|
patchOp = tOp
|
||||||
& parameters .~ map ref (rs <> ["body." <> tn, "preferReturn"])
|
& parameters .~ map ref (rs <> ["body." <> tn, "preferReturn"])
|
||||||
|
|||||||
@@ -45,6 +45,7 @@ spec = do
|
|||||||
childGetSummary = r ^? method "get" . key "summary"
|
childGetSummary = r ^? method "get" . key "summary"
|
||||||
childGetDescription = r ^? method "get" . key "description"
|
childGetDescription = r ^? method "get" . key "description"
|
||||||
getParameters = r ^? method "get" . key "parameters"
|
getParameters = r ^? method "get" . key "parameters"
|
||||||
|
postParameters = r ^? method "post" . key "parameters"
|
||||||
postResponse = r ^? method "post" . key "responses" . key "201" . key "description"
|
postResponse = r ^? method "post" . key "responses" . key "201" . key "description"
|
||||||
patchResponse = r ^? method "patch" . key "responses" . key "204" . key "description"
|
patchResponse = r ^? method "patch" . key "responses" . key "204" . key "description"
|
||||||
deleteResponse = r ^? method "delete" . key "responses" . key "204" . key "description"
|
deleteResponse = r ^? method "delete" . key "responses" . key "204" . key "description"
|
||||||
@@ -79,6 +80,15 @@ spec = do
|
|||||||
]
|
]
|
||||||
|]
|
|]
|
||||||
|
|
||||||
|
postParameters `shouldBe` Just
|
||||||
|
[aesonQQ|
|
||||||
|
[
|
||||||
|
{ "$ref": "#/parameters/body.child_entities" },
|
||||||
|
{ "$ref": "#/parameters/select" },
|
||||||
|
{ "$ref": "#/parameters/preferReturn" }
|
||||||
|
]
|
||||||
|
|]
|
||||||
|
|
||||||
postResponse `shouldBe` Just "Created"
|
postResponse `shouldBe` Just "Created"
|
||||||
|
|
||||||
patchResponse `shouldBe` Just "No Content"
|
patchResponse `shouldBe` Just "No Content"
|
||||||
|
|||||||
Reference in New Issue
Block a user