Skip to main content

Generate test data from JSON schemata with Hypothesis

Project description

hypothesis-jsonschema

A Hypothesis strategy for generating data that matches some JSON schema.

Here's the PyPI page.

API

The public API consists of just one function: hypothesis_jsonschema.from_schema, which takes a JSON schema and returns a strategy for allowed JSON objects.

JSONSchema drafts 04, 05, and 07 are fully tested and working. As of version 0.11, this includes resolving non-recursive references!

For details on how to use this strategy in your tests, see the Hypothesis docs.

Supported versions

hypothesis-jsonschema requires Python 3.6 or later. In general, 0.x versions will require very recent versions of all dependencies because I don't want to deal with compatibility workarounds.

hypothesis-jsonschema may make backwards-incompatible changes at any time before version 1.x - that's what semver means! - but I've kept the API surface small enough that this should be avoidable. The main source of breaks will be if or when schema that never really worked turn into explicit errors instead of generating values that don't quite match.

You can sponsor me to get priority support, roadmap input, and prioritized feature development.

Contributing to hypothesis-jsonschema

We love external contributions - and try to make them both easy and fun. You can read more details in our contributing guide, and see everyone who has contributed on GitHub. Thanks, everyone!

Changelog

Patch notes can be found in CHANGELOG.md.

Security contact information

To report a security vulnerability, please use the Tidelift security contact. Tidelift will coordinate the fix and disclosure.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hypothesis-jsonschema-0.16.1.tar.gz (26.8 kB view details)

Uploaded Source

Built Distribution

hypothesis_jsonschema-0.16.1-py3-none-any.whl (23.8 kB view details)

Uploaded Python 3

File details

Details for the file hypothesis-jsonschema-0.16.1.tar.gz.

File metadata

  • Download URL: hypothesis-jsonschema-0.16.1.tar.gz
  • Upload date:
  • Size: 26.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/47.1.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.3

File hashes

Hashes for hypothesis-jsonschema-0.16.1.tar.gz
Algorithm Hash digest
SHA256 967704bee3e6d81cae350c0a514ea41e8d4645d4f76015386e62c0a323c16f4b
MD5 27b325a0995e392ef9844a91c61196c8
BLAKE2b-256 a19a0e6ecb45d91be34978d33157db36b9489bec18de3c31e78152cd672a98b0

See more details on using hashes here.

Provenance

File details

Details for the file hypothesis_jsonschema-0.16.1-py3-none-any.whl.

File metadata

  • Download URL: hypothesis_jsonschema-0.16.1-py3-none-any.whl
  • Upload date:
  • Size: 23.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/47.1.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.8.3

File hashes

Hashes for hypothesis_jsonschema-0.16.1-py3-none-any.whl
Algorithm Hash digest
SHA256 66557e4377b2d23a2c389556ee22683780c8f95a38d4ac8e388d1be1fa890a20
MD5 4c8d8b0fe58fd39ca972206b7f416dfd
BLAKE2b-256 c4cb6fdd817a060465a840cca4ab3bb85116d3b4b6f5a9067eaad3eda2e85622

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page