git.iko.soy/typeable/openapi3
on master help sign in
Add Parameters Definition object test
54d6bcbNickolay Kudasov
test/Data/SwaggerSpec.hs+47−1
@@ -48,7 +48,8 @@ spec = do
48 context "Simple Model" $ schemaSimpleModelExample <~> schemaSimpleModelExampleJSON
48 context "Simple Model" $ schemaSimpleModelExample <~> schemaSimpleModelExampleJSON
49 context "Model with Map/Dictionary Properties" $ schemaModelDictExample <~> schemaModelDictExampleJSON
49 context "Model with Map/Dictionary Properties" $ schemaModelDictExample <~> schemaModelDictExampleJSON
50 context "Model with Example" $ schemaWithExampleExample <~> schemaWithExampleExampleJSON
50 context "Model with Example" $ schemaWithExampleExample <~> schemaWithExampleExampleJSON
51− describe "Schema Object" $ definitionsExample <~> definitionsExampleJSON
51+ describe "Definitions Object" $ definitionsExample <~> definitionsExampleJSON
52+ describe "Parameters Definition Object" $ parametersDefinitionExample <~> parametersDefinitionExampleJSON
52
53
53main :: IO ()
54main :: IO ()
54main = hspec spec
55main = hspec spec
@@ -390,3 +391,48 @@ definitionsExampleJSON = [aesonQQ|
390 }
391 }
391}
392}
392|]
393|]
394+
395+-- =======================================================================
396+-- Parameters Definition object
397+-- =======================================================================
398+
399+parametersDefinitionExample :: HashMap Text SwaggerParameter
400+parametersDefinitionExample =
401+ [ ("skipParam", mempty
402+ { swaggerParameterName = "skip"
403+ , swaggerParameterDescription = Just "number of items to skip"
404+ , swaggerParameterRequired = True
405+ , swaggerParameterSchema = SwaggerParameterOther mempty
406+ { swaggerParameterOtherSchemaIn = SwaggerParameterQuery
407+ , swaggerParameterOtherSchemaType = SwaggerParamInteger
408+ , swaggerParameterOtherSchemaFormat = Just "int32" } })
409+ , ("limitParam", mempty
410+ { swaggerParameterName = "limit"
411+ , swaggerParameterDescription = Just "max records to return"
412+ , swaggerParameterRequired = True
413+ , swaggerParameterSchema = SwaggerParameterOther mempty
414+ { swaggerParameterOtherSchemaIn = SwaggerParameterQuery
415+ , swaggerParameterOtherSchemaType = SwaggerParamInteger
416+ , swaggerParameterOtherSchemaFormat = Just "int32" } }) ]
417+
418+parametersDefinitionExampleJSON :: Value
419+parametersDefinitionExampleJSON = [aesonQQ|
420+{
421+ "skipParam": {
422+ "name": "skip",
423+ "in": "query",
424+ "description": "number of items to skip",
425+ "required": true,
426+ "type": "integer",
427+ "format": "int32"
428+ },
429+ "limitParam": {
430+ "name": "limit",
431+ "in": "query",
432+ "description": "max records to return",
433+ "required": true,
434+ "type": "integer",
435+ "format": "int32"
436+ }
437+}
438+|]