Skip to main content

OpenAPI spec compare

Project description

vedro-spec-compare

PyPI Python Version

Description

vedro-spec-compare is a tool for comparing two OpenAPI specifications and generating reports.

Installation

pip3 install vedro-spec-compare

Usage

Help

vsc --help
usage: vsc [-h] {coverage,discrepancy,changes} ...

vedro-spec-compare commands

positional arguments:
  {coverage,discrepancy,changes}
                        Available commands
    coverage            Generate coverage report
    discrepancy         Generate discrepancy report
    changes             Generate changes report

options:
  -h, --help            show this help message and exit

Coverage

The coverage command compares a "golden" OpenAPI spec with a "testing" spec and generates a coverage report. Sample report.

Coverage report

vsc coverage --help
usage: vsc coverage [-h] [--report-path REPORT_PATH] golden_spec_path testing_spec_path

positional arguments:
  golden_spec_path      Path to the golden OpenAPI spec
  testing_spec_path     Path to the testing OpenAPI spec

options:
  -h, --help            show this help message and exit
  --report-path REPORT_PATH
                        The path of the coverage report

Examples

From yml files

vsc coverage golden_spec.yml testing_spec.yml
google-chrome coverage.html 

From json files

vsc coverage golden_spec.json testing_spec.json
google-chrome coverage.html 

From urls

vsc coverage https://raw.githubusercontent.com/kvs8/vedro-spec-compare/refs/heads/main/tests/e2e/test_data/coverage/golden.yml https://raw.githubusercontent.com/kvs8/vedro-spec-compare/refs/heads/main/tests/e2e/test_data/coverage/testing.yml
google-chrome coverage.html 

With report path

vsc coverage golden_spec.yml testing_spec.yml --report-path coverage_report.html
google-chrome coverage_report.html 

Discrepancy

The discrepancy command highlights differences or inconsistencies between a "golden" spec and a "testing" spec. Sample report.

Discrepancy report

vsc discrepancy --help
usage: vsc discrepancy [-h] [--report-path REPORT_PATH] golden_spec_path testing_spec_path

positional arguments:
  golden_spec_path      Path to the golden OpenAPI spec
  testing_spec_path     Path to the testing OpenAPI spec

options:
  -h, --help            show this help message and exit
  --report-path REPORT_PATH
                        The path of the discrepancy report

Examples

From yml files

vsc discrepancy golden_spec.yml testing_spec.yml
google-chrome discrepancy.html 

From json files

vsc discrepancy golden_spec.json testing_spec.json
google-chrome discrepancy.html 

From urls

vsc discrepancy https://raw.githubusercontent.com/kvs8/vedro-spec-compare/refs/heads/main/tests/e2e/test_data/discrepancy/golden.yml https://raw.githubusercontent.com/kvs8/vedro-spec-compare/refs/heads/main/tests/e2e/test_data/discrepancy/testing.yml
google-chrome discrepancy.html 

With report path

vsc discrepancy golden_spec.yml testing_spec.yml --report-path coverage_report.html
google-chrome discrepancy.html 

Changes

The changes command shows the changes between two versions of the specification: the current and the previous. Sample report.

Changes report

vsc changes --help
usage: vsc changes [-h] [--report-path REPORT_PATH] current_spec_path previous_spec_path

positional arguments:
  current_spec_path     Path to the current OpenAPI spec
  previous_spec_path    Path to the previous OpenAPI spec

options:
  -h, --help            show this help message and exit
  --report-path REPORT_PATH
                        The path of the changes report

Examples

From yml files

vsc changes current_spec.yml previous_spec.yml
google-chrome changes.html 

From json files

vsc changes current_spec.json previous_spec.json
google-chrome changes.html 

From urls

vsc changes https://raw.githubusercontent.com/kvs8/vedro-spec-compare/refs/heads/main/tests/e2e/test_data/changes/current.yml https://raw.githubusercontent.com/kvs8/vedro-spec-compare/refs/heads/main/tests/e2e/test_data/changes/previous.yml
google-chrome changes.html 

With report path

vsc changes current_spec.yml previous_spec.yml --report-path changes_report.html
google-chrome changes.html 

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

vedro_spec_compare-0.8.0.tar.gz (14.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vedro_spec_compare-0.8.0-py3-none-any.whl (17.2 kB view details)

Uploaded Python 3

File details

Details for the file vedro_spec_compare-0.8.0.tar.gz.

File metadata

  • Download URL: vedro_spec_compare-0.8.0.tar.gz
  • Upload date:
  • Size: 14.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for vedro_spec_compare-0.8.0.tar.gz
Algorithm Hash digest
SHA256 95c64e10d64cd0e12b5ff406d4988b2f9d362ea9c485f4498f4d536af4bb36b2
MD5 2cac454445deecd531bdfd019a52a9c7
BLAKE2b-256 3cb63fa034dd8c2560248efc8915d81148a9b89ed23fa90c7e1992e1bc388476

See more details on using hashes here.

File details

Details for the file vedro_spec_compare-0.8.0-py3-none-any.whl.

File metadata

File hashes

Hashes for vedro_spec_compare-0.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 aefcc7573122b18788f46e3a04f6751f11dea938d6b2fc752b679cc43fa5505a
MD5 520d1af155861d2861eba6c786a5de61
BLAKE2b-256 3167d95efd0038d6aabbfa63cf6aa34939f26644fd479ce375c9aca1535a8b63

See more details on using hashes here.

Supported by

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