swaggerconformance.valuetemplates package¶
Module contents¶
This package provides access to two main classes of objects:
ValueFactoryfor generatingValueTemplateinstances matching the parameter values defines by a parameter entry in a swagger schema. This can be inherited from to generate newValueTemplateinstances matching custom parameters in a user’s schema.- The
ValueTemplateitself and child classes used to generate hypothesis strategies for generating parameter values with certain constraints. Again, users may create newValueTemplatesubclasses to define their own new value types.
-
class
swaggerconformance.valuetemplates.ValueFactory[source]¶ Bases:
objectFactory for building
ValueTemplatefrom swagger definitions.-
create_value(swagger_definition)[source]¶ Create a template for the value specified by the definition.
Return type: ValueTemplate
-
-
class
swaggerconformance.valuetemplates.ArrayTemplate(max_items=None, min_items=None, unique_items=None)[source]¶ Bases:
objectTemplate for an array collection.
-
class
swaggerconformance.valuetemplates.ObjectTemplate(max_properties=None, min_properties=None, additional_properties=False)[source]¶ Bases:
objectTemplate for a JSON object collection.
MAX_ADDITIONAL_PROPERTIESis a limit on the number of additional properties to add to objects. Setting this too high might cause data generation to time out.-
MAX_ADDITIONAL_PROPERTIES= 5¶
-
hypothesize(required_properties, optional_properties)[source]¶ Return a hypothesis strategy defining this collection, including random additional properties if the object supports them.
Will add only up to
MAX_ADDITIONAL_PROPERTIESextra values to prevent data generation taking too long and timing out.Parameters:
-
-
class
swaggerconformance.valuetemplates.ValueTemplate[source]¶ Bases:
objectTemplate for a single value of any specified type.
-
class
swaggerconformance.valuetemplates.BooleanTemplate[source]¶ Bases:
swaggerconformance.valuetemplates._valuetemplates.ValueTemplateTemplate for a Boolean value.
-
class
swaggerconformance.valuetemplates.NumericTemplate(maximum=None, exclusive_maximum=None, minimum=None, exclusive_minimum=None, multiple_of=None)[source]¶ Bases:
swaggerconformance.valuetemplates._valuetemplates.ValueTemplateAbstract template for a numeric value.
-
class
swaggerconformance.valuetemplates.IntegerTemplate(maximum=None, exclusive_maximum=None, minimum=None, exclusive_minimum=None, multiple_of=None)[source]¶ Bases:
swaggerconformance.valuetemplates._valuetemplates.NumericTemplateTemplate for an integer value.
-
class
swaggerconformance.valuetemplates.FloatTemplate(maximum=None, exclusive_maximum=None, minimum=None, exclusive_minimum=None, multiple_of=None)[source]¶ Bases:
swaggerconformance.valuetemplates._valuetemplates.NumericTemplateTemplate for a floating point value.
-
class
swaggerconformance.valuetemplates.StringTemplate(max_length=None, min_length=None, pattern=None, enum=None, blacklist_chars=None)[source]¶ Bases:
swaggerconformance.valuetemplates._valuetemplates.ValueTemplateTemplate for a string value.
-
class
swaggerconformance.valuetemplates.URLPathStringTemplate(max_length=None, min_length=None, pattern=None, enum=None)[source]¶ Bases:
swaggerconformance.valuetemplates._valuetemplates.StringTemplateTemplate for a string value which must be valid in a URL path.
-
class
swaggerconformance.valuetemplates.HTTPHeaderStringTemplate(max_length=None, min_length=None, pattern=None, enum=None)[source]¶ Bases:
swaggerconformance.valuetemplates._valuetemplates.StringTemplateTemplate for a string value which must be valid in a HTTP header.
-
class
swaggerconformance.valuetemplates.DateTemplate[source]¶ Bases:
swaggerconformance.valuetemplates._valuetemplates.ValueTemplateTemplate for a Date value.
-
class
swaggerconformance.valuetemplates.DateTimeTemplate[source]¶ Bases:
swaggerconformance.valuetemplates._valuetemplates.ValueTemplateTemplate for a Date-Time value.