[python-client] Add model default values (#1776)

* Adds two models to the v2.0 spec, uses examples as defaults in python client

* Adds array default and type_holder_default and type_holder_example tests

* Re-generated python security client with ./bin/security/python-petstore.sh

* Changes comment text, rebased master

* Updates client + server samples

* Adds missing samples updates

* Changes python client to look for true or false with booleans in toDefaultValue

* Changes boolean casting to use Boolean.valueOf

* Adds deserialization fix for python tests

* Changes Mock to namedtuple in python deserialization tests

* Actually remove unittest.mock
This commit is contained in:
Justin Black
2019-01-08 19:18:35 -08:00
committed by William Cheng
parent 189849319c
commit 539ec23298
197 changed files with 20872 additions and 292 deletions

View File

@@ -1330,6 +1330,104 @@ mkTag =
, tagName = Nothing
}
-- ** TypeHolderDefault
-- | TypeHolderDefault
data TypeHolderDefault = TypeHolderDefault
{ typeHolderDefaultStringItem :: !(Text) -- ^ /Required/ "string_item"
, typeHolderDefaultNumberItem :: !(Double) -- ^ /Required/ "number_item"
, typeHolderDefaultIntegerItem :: !(Int) -- ^ /Required/ "integer_item"
, typeHolderDefaultBoolItem :: !(Bool) -- ^ /Required/ "bool_item"
, typeHolderDefaultArrayItem :: !([Int]) -- ^ /Required/ "array_item"
} deriving (P.Show, P.Eq, P.Typeable)
-- | FromJSON TypeHolderDefault
instance A.FromJSON TypeHolderDefault where
parseJSON = A.withObject "TypeHolderDefault" $ \o ->
TypeHolderDefault
<$> (o .: "string_item")
<*> (o .: "number_item")
<*> (o .: "integer_item")
<*> (o .: "bool_item")
<*> (o .: "array_item")
-- | ToJSON TypeHolderDefault
instance A.ToJSON TypeHolderDefault where
toJSON TypeHolderDefault {..} =
_omitNulls
[ "string_item" .= typeHolderDefaultStringItem
, "number_item" .= typeHolderDefaultNumberItem
, "integer_item" .= typeHolderDefaultIntegerItem
, "bool_item" .= typeHolderDefaultBoolItem
, "array_item" .= typeHolderDefaultArrayItem
]
-- | Construct a value of type 'TypeHolderDefault' (by applying it's required fields, if any)
mkTypeHolderDefault
:: Text -- ^ 'typeHolderDefaultStringItem'
-> Double -- ^ 'typeHolderDefaultNumberItem'
-> Int -- ^ 'typeHolderDefaultIntegerItem'
-> Bool -- ^ 'typeHolderDefaultBoolItem'
-> [Int] -- ^ 'typeHolderDefaultArrayItem'
-> TypeHolderDefault
mkTypeHolderDefault typeHolderDefaultStringItem typeHolderDefaultNumberItem typeHolderDefaultIntegerItem typeHolderDefaultBoolItem typeHolderDefaultArrayItem =
TypeHolderDefault
{ typeHolderDefaultStringItem
, typeHolderDefaultNumberItem
, typeHolderDefaultIntegerItem
, typeHolderDefaultBoolItem
, typeHolderDefaultArrayItem
}
-- ** TypeHolderExample
-- | TypeHolderExample
data TypeHolderExample = TypeHolderExample
{ typeHolderExampleStringItem :: !(Text) -- ^ /Required/ "string_item"
, typeHolderExampleNumberItem :: !(Double) -- ^ /Required/ "number_item"
, typeHolderExampleIntegerItem :: !(Int) -- ^ /Required/ "integer_item"
, typeHolderExampleBoolItem :: !(Bool) -- ^ /Required/ "bool_item"
, typeHolderExampleArrayItem :: !([Int]) -- ^ /Required/ "array_item"
} deriving (P.Show, P.Eq, P.Typeable)
-- | FromJSON TypeHolderExample
instance A.FromJSON TypeHolderExample where
parseJSON = A.withObject "TypeHolderExample" $ \o ->
TypeHolderExample
<$> (o .: "string_item")
<*> (o .: "number_item")
<*> (o .: "integer_item")
<*> (o .: "bool_item")
<*> (o .: "array_item")
-- | ToJSON TypeHolderExample
instance A.ToJSON TypeHolderExample where
toJSON TypeHolderExample {..} =
_omitNulls
[ "string_item" .= typeHolderExampleStringItem
, "number_item" .= typeHolderExampleNumberItem
, "integer_item" .= typeHolderExampleIntegerItem
, "bool_item" .= typeHolderExampleBoolItem
, "array_item" .= typeHolderExampleArrayItem
]
-- | Construct a value of type 'TypeHolderExample' (by applying it's required fields, if any)
mkTypeHolderExample
:: Text -- ^ 'typeHolderExampleStringItem'
-> Double -- ^ 'typeHolderExampleNumberItem'
-> Int -- ^ 'typeHolderExampleIntegerItem'
-> Bool -- ^ 'typeHolderExampleBoolItem'
-> [Int] -- ^ 'typeHolderExampleArrayItem'
-> TypeHolderExample
mkTypeHolderExample typeHolderExampleStringItem typeHolderExampleNumberItem typeHolderExampleIntegerItem typeHolderExampleBoolItem typeHolderExampleArrayItem =
TypeHolderExample
{ typeHolderExampleStringItem
, typeHolderExampleNumberItem
, typeHolderExampleIntegerItem
, typeHolderExampleBoolItem
, typeHolderExampleArrayItem
}
-- ** User
-- | User
data User = User

View File

@@ -613,6 +613,64 @@ tagNameL f Tag{..} = (\tagName -> Tag { tagName, ..} ) <$> f tagName
-- * TypeHolderDefault
-- | 'typeHolderDefaultStringItem' Lens
typeHolderDefaultStringItemL :: Lens_' TypeHolderDefault (Text)
typeHolderDefaultStringItemL f TypeHolderDefault{..} = (\typeHolderDefaultStringItem -> TypeHolderDefault { typeHolderDefaultStringItem, ..} ) <$> f typeHolderDefaultStringItem
{-# INLINE typeHolderDefaultStringItemL #-}
-- | 'typeHolderDefaultNumberItem' Lens
typeHolderDefaultNumberItemL :: Lens_' TypeHolderDefault (Double)
typeHolderDefaultNumberItemL f TypeHolderDefault{..} = (\typeHolderDefaultNumberItem -> TypeHolderDefault { typeHolderDefaultNumberItem, ..} ) <$> f typeHolderDefaultNumberItem
{-# INLINE typeHolderDefaultNumberItemL #-}
-- | 'typeHolderDefaultIntegerItem' Lens
typeHolderDefaultIntegerItemL :: Lens_' TypeHolderDefault (Int)
typeHolderDefaultIntegerItemL f TypeHolderDefault{..} = (\typeHolderDefaultIntegerItem -> TypeHolderDefault { typeHolderDefaultIntegerItem, ..} ) <$> f typeHolderDefaultIntegerItem
{-# INLINE typeHolderDefaultIntegerItemL #-}
-- | 'typeHolderDefaultBoolItem' Lens
typeHolderDefaultBoolItemL :: Lens_' TypeHolderDefault (Bool)
typeHolderDefaultBoolItemL f TypeHolderDefault{..} = (\typeHolderDefaultBoolItem -> TypeHolderDefault { typeHolderDefaultBoolItem, ..} ) <$> f typeHolderDefaultBoolItem
{-# INLINE typeHolderDefaultBoolItemL #-}
-- | 'typeHolderDefaultArrayItem' Lens
typeHolderDefaultArrayItemL :: Lens_' TypeHolderDefault ([Int])
typeHolderDefaultArrayItemL f TypeHolderDefault{..} = (\typeHolderDefaultArrayItem -> TypeHolderDefault { typeHolderDefaultArrayItem, ..} ) <$> f typeHolderDefaultArrayItem
{-# INLINE typeHolderDefaultArrayItemL #-}
-- * TypeHolderExample
-- | 'typeHolderExampleStringItem' Lens
typeHolderExampleStringItemL :: Lens_' TypeHolderExample (Text)
typeHolderExampleStringItemL f TypeHolderExample{..} = (\typeHolderExampleStringItem -> TypeHolderExample { typeHolderExampleStringItem, ..} ) <$> f typeHolderExampleStringItem
{-# INLINE typeHolderExampleStringItemL #-}
-- | 'typeHolderExampleNumberItem' Lens
typeHolderExampleNumberItemL :: Lens_' TypeHolderExample (Double)
typeHolderExampleNumberItemL f TypeHolderExample{..} = (\typeHolderExampleNumberItem -> TypeHolderExample { typeHolderExampleNumberItem, ..} ) <$> f typeHolderExampleNumberItem
{-# INLINE typeHolderExampleNumberItemL #-}
-- | 'typeHolderExampleIntegerItem' Lens
typeHolderExampleIntegerItemL :: Lens_' TypeHolderExample (Int)
typeHolderExampleIntegerItemL f TypeHolderExample{..} = (\typeHolderExampleIntegerItem -> TypeHolderExample { typeHolderExampleIntegerItem, ..} ) <$> f typeHolderExampleIntegerItem
{-# INLINE typeHolderExampleIntegerItemL #-}
-- | 'typeHolderExampleBoolItem' Lens
typeHolderExampleBoolItemL :: Lens_' TypeHolderExample (Bool)
typeHolderExampleBoolItemL f TypeHolderExample{..} = (\typeHolderExampleBoolItem -> TypeHolderExample { typeHolderExampleBoolItem, ..} ) <$> f typeHolderExampleBoolItem
{-# INLINE typeHolderExampleBoolItemL #-}
-- | 'typeHolderExampleArrayItem' Lens
typeHolderExampleArrayItemL :: Lens_' TypeHolderExample ([Int])
typeHolderExampleArrayItemL f TypeHolderExample{..} = (\typeHolderExampleArrayItem -> TypeHolderExample { typeHolderExampleArrayItem, ..} ) <$> f typeHolderExampleArrayItem
{-# INLINE typeHolderExampleArrayItemL #-}
-- * User
-- | 'userId' Lens