William Cheng 46a4ffe64c
Skip model generation if it's a top-level map or array (#1296)
* update samples

* remove string boolean map spec

* add logic to skip array alias being generated as model

* fix alias to array

* remove unused ruby files

* remove unused ruby (oas3) files

* unalias response schema

* fix NPE when no model defined

* fix ruby openapi3 script

* update samples

* add global openapi, schemas for unaliasing

* minor code cleanup/refactoring using globalSchemas

* Revert "minor code cleanup/refactoring using globalSchemas"

This reverts commit 20a2bbc6fc4267a0e0768dcf5f15d4194ce9647b.
2018-11-26 22:01:53 +08:00

58 lines
2.3 KiB
Haskell

{-# LANGUAGE ScopedTypeVariables #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE PartialTypeSignatures #-}
module Main where
import Data.Typeable (Proxy(..))
import Test.Hspec
import Test.Hspec.QuickCheck
import PropMime
import Instances ()
import OpenAPIPetstore.Model
import OpenAPIPetstore.MimeTypes
main :: IO ()
main =
hspec $ modifyMaxSize (const 5) $ do
describe "JSON instances" $ do
pure ()
propMimeEq MimeJSON (Proxy :: Proxy AdditionalPropertiesClass)
propMimeEq MimeJSON (Proxy :: Proxy Animal)
propMimeEq MimeJSON (Proxy :: Proxy ApiResponse)
propMimeEq MimeJSON (Proxy :: Proxy ArrayOfArrayOfNumberOnly)
propMimeEq MimeJSON (Proxy :: Proxy ArrayOfNumberOnly)
propMimeEq MimeJSON (Proxy :: Proxy ArrayTest)
propMimeEq MimeJSON (Proxy :: Proxy Capitalization)
propMimeEq MimeJSON (Proxy :: Proxy Cat)
propMimeEq MimeJSON (Proxy :: Proxy Category)
propMimeEq MimeJSON (Proxy :: Proxy ClassModel)
propMimeEq MimeJSON (Proxy :: Proxy Client)
propMimeEq MimeJSON (Proxy :: Proxy Dog)
propMimeEq MimeJSON (Proxy :: Proxy EnumArrays)
propMimeEq MimeJSON (Proxy :: Proxy EnumClass)
propMimeEq MimeJSON (Proxy :: Proxy EnumTest)
propMimeEq MimeJSON (Proxy :: Proxy File)
propMimeEq MimeJSON (Proxy :: Proxy FileSchemaTestClass)
propMimeEq MimeJSON (Proxy :: Proxy FormatTest)
propMimeEq MimeJSON (Proxy :: Proxy HasOnlyReadOnly)
propMimeEq MimeJSON (Proxy :: Proxy MapTest)
propMimeEq MimeJSON (Proxy :: Proxy MixedPropertiesAndAdditionalPropertiesClass)
propMimeEq MimeJSON (Proxy :: Proxy Model200Response)
propMimeEq MimeJSON (Proxy :: Proxy ModelList)
propMimeEq MimeJSON (Proxy :: Proxy ModelReturn)
propMimeEq MimeJSON (Proxy :: Proxy Name)
propMimeEq MimeJSON (Proxy :: Proxy NumberOnly)
propMimeEq MimeJSON (Proxy :: Proxy Order)
propMimeEq MimeJSON (Proxy :: Proxy OuterComposite)
propMimeEq MimeJSON (Proxy :: Proxy OuterEnum)
propMimeEq MimeJSON (Proxy :: Proxy Pet)
propMimeEq MimeJSON (Proxy :: Proxy ReadOnlyFirst)
propMimeEq MimeJSON (Proxy :: Proxy SpecialModelName)
propMimeEq MimeJSON (Proxy :: Proxy Tag)
propMimeEq MimeJSON (Proxy :: Proxy User)