├── .dockerignore ├── .editorconfig ├── .eslintignore ├── .eslintrc.json ├── .gitattributes ├── .github ├── renovate.json └── workflows │ ├── nodejs.yml │ ├── publish-docker-image.yml │ ├── publish-npm-package-mock-server.yml │ └── publish-npm-package.yml ├── .gitignore ├── .gitmodules ├── .nvmrc ├── .prettierrc.json ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── docker ├── Dockerfile ├── README.md └── entrypoint.bash ├── docs └── resources │ ├── diagram-dark.png │ ├── diagram.png │ ├── exxeta-logo.svg │ └── exxeta-logo_dark.svg ├── mock-server ├── .eslintignore ├── .eslintrc.json ├── .npmrc ├── .prettierrc.json ├── LICENSE ├── README.md ├── jest.config.js ├── package-lock.json ├── package.json ├── src │ ├── app.ts │ ├── cli.ts │ └── util.ts ├── test │ └── mock.test.ts ├── tsconfig.json └── tslint.json ├── package.json ├── renovate.json ├── src ├── app.ts ├── cli.ts ├── openapi-schema-validator │ ├── index.ts │ └── schemas │ │ ├── v2.0.json │ │ └── v3.0.json ├── util.ts └── validation.ts ├── test ├── 01.unit.test.ts ├── 02.integration.test.ts ├── README.md ├── config.ts ├── docker │ ├── entrypoint.bash │ └── run-docker-test.bash ├── schemas │ ├── invalid │ │ ├── v3-invalid.json │ │ └── v3-invalid.yaml │ ├── refs │ │ └── refs-schemas.yaml │ ├── v2 │ │ ├── 1-minimal.json │ │ ├── 2-path.json │ │ ├── 3-parameters.json │ │ ├── 4-refs.json │ │ ├── 5-external-refs.json │ │ ├── 6-examples.json │ │ └── 7-petstore.json │ └── v3 │ │ ├── 1-minimal.yaml │ │ ├── 2-path.yaml │ │ ├── 3-parameters.yaml │ │ ├── 4-refs.yaml │ │ ├── 5-external-refs.yaml │ │ ├── 6-examples.yaml │ │ └── 7-petstore.yaml ├── scripts │ └── spawn.ts ├── test-requests │ ├── invalid-requests.ts │ └── valid-requests.ts ├── test-responses │ └── invalid-responses.ts └── util │ ├── io.ts │ ├── process.ts │ ├── server.ts │ └── testing.ts ├── tsconfig.json └── types ├── ajv-errors.d.ts ├── ajv-keywords.d.ts ├── api-spec-converter.d.ts ├── axios-curlirize.d.ts ├── errors.ts ├── json-schema-merge-allof.d.ts ├── test-requests.ts └── validation.d.ts /.dockerignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | build 3 | mock-server 4 | .idea 5 | .vscode 6 | -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/.editorconfig -------------------------------------------------------------------------------- /.eslintignore: -------------------------------------------------------------------------------- 1 | build 2 | types 3 | -------------------------------------------------------------------------------- /.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/.eslintrc.json -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | * text=auto eol=lf -------------------------------------------------------------------------------- /.github/renovate.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/.github/renovate.json -------------------------------------------------------------------------------- /.github/workflows/nodejs.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/.github/workflows/nodejs.yml -------------------------------------------------------------------------------- /.github/workflows/publish-docker-image.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/.github/workflows/publish-docker-image.yml -------------------------------------------------------------------------------- /.github/workflows/publish-npm-package-mock-server.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/.github/workflows/publish-npm-package-mock-server.yml -------------------------------------------------------------------------------- /.github/workflows/publish-npm-package.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/.github/workflows/publish-npm-package.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/.gitignore -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/.gitmodules -------------------------------------------------------------------------------- /.nvmrc: -------------------------------------------------------------------------------- 1 | 10 2 | -------------------------------------------------------------------------------- /.prettierrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/.prettierrc.json -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/README.md -------------------------------------------------------------------------------- /docker/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/docker/Dockerfile -------------------------------------------------------------------------------- /docker/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/docker/README.md -------------------------------------------------------------------------------- /docker/entrypoint.bash: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/docker/entrypoint.bash -------------------------------------------------------------------------------- /docs/resources/diagram-dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/docs/resources/diagram-dark.png -------------------------------------------------------------------------------- /docs/resources/diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/docs/resources/diagram.png -------------------------------------------------------------------------------- /docs/resources/exxeta-logo.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/docs/resources/exxeta-logo.svg -------------------------------------------------------------------------------- /docs/resources/exxeta-logo_dark.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/docs/resources/exxeta-logo_dark.svg -------------------------------------------------------------------------------- /mock-server/.eslintignore: -------------------------------------------------------------------------------- 1 | build 2 | types 3 | -------------------------------------------------------------------------------- /mock-server/.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/mock-server/.eslintrc.json -------------------------------------------------------------------------------- /mock-server/.npmrc: -------------------------------------------------------------------------------- 1 | unsafe-perm = true -------------------------------------------------------------------------------- /mock-server/.prettierrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/mock-server/.prettierrc.json -------------------------------------------------------------------------------- /mock-server/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/mock-server/LICENSE -------------------------------------------------------------------------------- /mock-server/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/mock-server/README.md -------------------------------------------------------------------------------- /mock-server/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/mock-server/jest.config.js -------------------------------------------------------------------------------- /mock-server/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/mock-server/package-lock.json -------------------------------------------------------------------------------- /mock-server/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/mock-server/package.json -------------------------------------------------------------------------------- /mock-server/src/app.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/mock-server/src/app.ts -------------------------------------------------------------------------------- /mock-server/src/cli.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/mock-server/src/cli.ts -------------------------------------------------------------------------------- /mock-server/src/util.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/mock-server/src/util.ts -------------------------------------------------------------------------------- /mock-server/test/mock.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/mock-server/test/mock.test.ts -------------------------------------------------------------------------------- /mock-server/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/mock-server/tsconfig.json -------------------------------------------------------------------------------- /mock-server/tslint.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/mock-server/tslint.json -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/package.json -------------------------------------------------------------------------------- /renovate.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/renovate.json -------------------------------------------------------------------------------- /src/app.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/src/app.ts -------------------------------------------------------------------------------- /src/cli.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/src/cli.ts -------------------------------------------------------------------------------- /src/openapi-schema-validator/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/src/openapi-schema-validator/index.ts -------------------------------------------------------------------------------- /src/openapi-schema-validator/schemas/v2.0.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/src/openapi-schema-validator/schemas/v2.0.json -------------------------------------------------------------------------------- /src/openapi-schema-validator/schemas/v3.0.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/src/openapi-schema-validator/schemas/v3.0.json -------------------------------------------------------------------------------- /src/util.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/src/util.ts -------------------------------------------------------------------------------- /src/validation.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/src/validation.ts -------------------------------------------------------------------------------- /test/01.unit.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/01.unit.test.ts -------------------------------------------------------------------------------- /test/02.integration.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/02.integration.test.ts -------------------------------------------------------------------------------- /test/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/README.md -------------------------------------------------------------------------------- /test/config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/config.ts -------------------------------------------------------------------------------- /test/docker/entrypoint.bash: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/docker/entrypoint.bash -------------------------------------------------------------------------------- /test/docker/run-docker-test.bash: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/docker/run-docker-test.bash -------------------------------------------------------------------------------- /test/schemas/invalid/v3-invalid.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/schemas/invalid/v3-invalid.json -------------------------------------------------------------------------------- /test/schemas/invalid/v3-invalid.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/schemas/invalid/v3-invalid.yaml -------------------------------------------------------------------------------- /test/schemas/refs/refs-schemas.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/schemas/refs/refs-schemas.yaml -------------------------------------------------------------------------------- /test/schemas/v2/1-minimal.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/schemas/v2/1-minimal.json -------------------------------------------------------------------------------- /test/schemas/v2/2-path.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/schemas/v2/2-path.json -------------------------------------------------------------------------------- /test/schemas/v2/3-parameters.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/schemas/v2/3-parameters.json -------------------------------------------------------------------------------- /test/schemas/v2/4-refs.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/schemas/v2/4-refs.json -------------------------------------------------------------------------------- /test/schemas/v2/5-external-refs.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/schemas/v2/5-external-refs.json -------------------------------------------------------------------------------- /test/schemas/v2/6-examples.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/schemas/v2/6-examples.json -------------------------------------------------------------------------------- /test/schemas/v2/7-petstore.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/schemas/v2/7-petstore.json -------------------------------------------------------------------------------- /test/schemas/v3/1-minimal.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/schemas/v3/1-minimal.yaml -------------------------------------------------------------------------------- /test/schemas/v3/2-path.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/schemas/v3/2-path.yaml -------------------------------------------------------------------------------- /test/schemas/v3/3-parameters.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/schemas/v3/3-parameters.yaml -------------------------------------------------------------------------------- /test/schemas/v3/4-refs.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/schemas/v3/4-refs.yaml -------------------------------------------------------------------------------- /test/schemas/v3/5-external-refs.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/schemas/v3/5-external-refs.yaml -------------------------------------------------------------------------------- /test/schemas/v3/6-examples.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/schemas/v3/6-examples.yaml -------------------------------------------------------------------------------- /test/schemas/v3/7-petstore.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/schemas/v3/7-petstore.yaml -------------------------------------------------------------------------------- /test/scripts/spawn.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/scripts/spawn.ts -------------------------------------------------------------------------------- /test/test-requests/invalid-requests.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/test-requests/invalid-requests.ts -------------------------------------------------------------------------------- /test/test-requests/valid-requests.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/test-requests/valid-requests.ts -------------------------------------------------------------------------------- /test/test-responses/invalid-responses.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/test-responses/invalid-responses.ts -------------------------------------------------------------------------------- /test/util/io.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/util/io.ts -------------------------------------------------------------------------------- /test/util/process.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/util/process.ts -------------------------------------------------------------------------------- /test/util/server.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/util/server.ts -------------------------------------------------------------------------------- /test/util/testing.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/test/util/testing.ts -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/tsconfig.json -------------------------------------------------------------------------------- /types/ajv-errors.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/types/ajv-errors.d.ts -------------------------------------------------------------------------------- /types/ajv-keywords.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/types/ajv-keywords.d.ts -------------------------------------------------------------------------------- /types/api-spec-converter.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/types/api-spec-converter.d.ts -------------------------------------------------------------------------------- /types/axios-curlirize.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/types/axios-curlirize.d.ts -------------------------------------------------------------------------------- /types/errors.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/types/errors.ts -------------------------------------------------------------------------------- /types/json-schema-merge-allof.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/types/json-schema-merge-allof.d.ts -------------------------------------------------------------------------------- /types/test-requests.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/types/test-requests.ts -------------------------------------------------------------------------------- /types/validation.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EXXETA/openapi-cop/HEAD/types/validation.d.ts --------------------------------------------------------------------------------