git.iko.soy/typeable/swagger2
on master help sign in
Add Simple Model Schema object test
commit3e6fcfbe7bc9935b5140bb2a296fd51b8103a197 authorNickolay Kudasov <nickolay.kudasov@gmail.com> dateSun 8 Nov 2015, 16:39 (11 years ago) parent43e3605
1 file changed+33−1
test/Data/SwaggerSpec.hs+33−1
test/Data/SwaggerSpec.hs+33−1
@@ -12,7 +12,6 @@ import qualified Data.Vector as Vector
1212import Data.Swagger
1313
1414import Test.Hspec
15−import Test.Hspec.HUnit
1615
1716isSubJSON :: Value -> Value -> Bool
1817isSubJSON Null _ = True
@@ -44,6 +43,7 @@ spec = do
4443 describe "Operation Object" $ operationExample <~> operationExampleJSON
4544 describe "Schema Object" $ do
4645 context "Primitive Sample" $ schemaPrimitiveExample <~> schemaPrimitiveExampleJSON
46+ context "Simple Model" $ schemaSimpleModelExample <~> schemaSimpleModelExampleJSON
4747
4848main :: IO ()
4949main = hspec spec
@@ -244,3 +244,35 @@ schemaPrimitiveExampleJSON = [aesonQQ|
244244}
245245|]
246246
247+schemaSimpleModelExample :: SwaggerSchema
248+schemaSimpleModelExample = mempty
249+ { swaggerSchemaType = SwaggerSchemaObject
250+ , swaggerSchemaRequired = [ "name" ]
251+ , swaggerSchemaProperties =
252+ [ ("name", mempty
253+ { swaggerSchemaType = SwaggerSchemaString } )
254+ , ("age", mempty
255+ { swaggerSchemaType = SwaggerSchemaInteger
256+ , swaggerSchemaFormat = Just "int32"
257+ , swaggerSchemaCommon = mempty
258+ { swaggerSchemaMinimum = Just 0 } } ) ] }
259+
260+schemaSimpleModelExampleJSON :: Value
261+schemaSimpleModelExampleJSON = [aesonQQ|
262+{
263+ "type": "object",
264+ "required": [
265+ "name"
266+ ],
267+ "properties": {
268+ "name": {
269+ "type": "string"
270+ },
271+ "age": {
272+ "type": "integer",
273+ "format": "int32",
274+ "minimum": 0
275+ }
276+ }
277+}
278+|]