{ "author": { "email": "timothy.l.jones@gmail.com", "name": "Timothy Jones", "roles": [ "author" ], "url": "https://github.com/TimothyJones" }, "bundled": { "@contract-case/case-core-plugin-function-dsl": "0.29.1", "@contract-case/case-core-plugin-http-dsl": "0.29.1", "@contract-case/case-entities-internal": "0.29.1", "@contract-case/case-plugin-dsl-types": "0.29.1" }, "description": "Definition DSL components for the ContractCase contract testing suite", "docs": { "stability": "stable" }, "homepage": "https://case.contract-testing.io/", "jsiiVersion": "5.9.2 (build d938826)", "license": "BSD-3-Clause", "metadata": { "jsii": { "pacmak": { "hasDefaultInterfaces": true } } }, "name": "@contract-case/case-definition-dsl", "readme": { "markdown": "# ContractCase Mock Types DSL\n\n[![Build and test](https://github.com/case-contract-testing/contract-case/actions/workflows/build-and-test.yml/badge.svg?branch=main)](https://github.com/case-contract-testing/contract-case/actions/workflows/build-and-test.yml)\n[![Known Vulnerabilities](https://snyk.io/test/github/case-contract-testing/contract-case/badge.svg?targetFile=packages/case-definition-dsl/package.json)](https://snyk.io/test/github/case-contract-testing/contract-case?targetFile=packages/case-definition-dsl/package.json)\n\nThese are the ContractCase interaction types for the ContractCase contract testing suite. Read [the documentation here](https://case.contracttesting.io)\n\nThis module is separate because it is part of the boundary translated with JSii.\n" }, "repository": { "type": "git", "url": "git+ssh://git@github.com/case-contract-testing/case.git" }, "schema": "jsii/0.10.0", "submodules": { "@contract-case/case-definition-dsl.interactions": { "locationInModule": { "filename": "src/index.ts", "line": 10 }, "symbolId": "src/interactions/index:" }, "@contract-case/case-definition-dsl.interactions.base": { "locationInModule": { "filename": "src/interactions/index.ts", "line": 4 }, "symbolId": "src/interactions/base/index:" }, "@contract-case/case-definition-dsl.interactions.functions": { "locationInModule": { "filename": "src/interactions/index.ts", "line": 5 }, "symbolId": "src/interactions/functions/index:" }, "@contract-case/case-definition-dsl.interactions.http": { "locationInModule": { "filename": "src/interactions/index.ts", "line": 6 }, "symbolId": "src/interactions/http/index:" }, "@contract-case/case-definition-dsl.matchers": { "locationInModule": { "filename": "src/index.ts", "line": 11 }, "symbolId": "src/matchers/index:" }, "@contract-case/case-definition-dsl.matchers.arrays": { "locationInModule": { "filename": "src/matchers/index.ts", "line": 1 }, "symbolId": "src/matchers/arrays/index:" }, "@contract-case/case-definition-dsl.matchers.base": { "locationInModule": { "filename": "src/matchers/index.ts", "line": 2 }, "symbolId": "src/matchers/base/index:" }, "@contract-case/case-definition-dsl.matchers.convenience": { "locationInModule": { "filename": "src/matchers/index.ts", "line": 3 }, "readme": { "markdown": "# Convenience matchers\n\nConvenience matchers are matchers that don't introduce the ability to match new\nthings, but instead make it easier to write and debug tests.\n" }, "symbolId": "src/matchers/convenience/index:" }, "@contract-case/case-definition-dsl.matchers.functions": { "locationInModule": { "filename": "src/matchers/index.ts", "line": 4 }, "symbolId": "src/matchers/functions/index:" }, "@contract-case/case-definition-dsl.matchers.http": { "locationInModule": { "filename": "src/matchers/index.ts", "line": 5 }, "symbolId": "src/matchers/http/index:" }, "@contract-case/case-definition-dsl.matchers.modifiers": { "locationInModule": { "filename": "src/matchers/index.ts", "line": 6 }, "readme": { "markdown": "# Modifiers\n\nModifiers are matchers that changes the way that ContractCase performs the matching.\n" }, "symbolId": "src/matchers/modifiers/index:" }, "@contract-case/case-definition-dsl.matchers.objects": { "locationInModule": { "filename": "src/matchers/index.ts", "line": 7 }, "symbolId": "src/matchers/objects/index:" }, "@contract-case/case-definition-dsl.matchers.primitives": { "locationInModule": { "filename": "src/matchers/index.ts", "line": 8 }, "symbolId": "src/matchers/primitives/index:" }, "@contract-case/case-definition-dsl.matchers.strings": { "locationInModule": { "filename": "src/matchers/index.ts", "line": 9 }, "symbolId": "src/matchers/strings/index:" }, "@contract-case/case-definition-dsl.states": { "locationInModule": { "filename": "src/index.ts", "line": 12 }, "symbolId": "src/states/index:" } }, "targets": { "js": { "npm": "@contract-case/case-definition-dsl" } }, "types": { "@contract-case/case-definition-dsl.interactions.IgnoreThisClass": { "assembly": "@contract-case/case-definition-dsl", "docs": { "stability": "stable", "summary": "Empty class to make jsii-docgen happy with this module." }, "fqn": "@contract-case/case-definition-dsl.interactions.IgnoreThisClass", "initializer": { "docs": { "stability": "stable" } }, "kind": "class", "locationInModule": { "filename": "src/interactions/index.ts", "line": 12 }, "name": "IgnoreThisClass", "namespace": "interactions", "symbolId": "src/interactions/index:IgnoreThisClass" }, "@contract-case/case-definition-dsl.interactions.base.AnyInteractionDescriptor": { "abstract": true, "assembly": "@contract-case/case-definition-dsl", "docs": { "custom": { "public": "true" }, "remarks": "If you are using the included example types from ContractCase (or any\nextension libraries), you do not need to read the documentation for this\nclass.\n\nMock description type strings beginning with `_case:` are reserved for the default ContractCase\nmatchers. Only use a types prefixed with `_case:` if you wish to create a DSL for a special case\nfor a matching behaviour that is already provided by a core ContractCase mock.", "stability": "stable", "summary": "The base class for all ContractCase Mock Descriptors. Extend this if you are implementing your own mock type." }, "fqn": "@contract-case/case-definition-dsl.interactions.base.AnyInteractionDescriptor", "initializer": { "docs": { "remarks": "If you are using the included example types from ContractCase (or any\nextension libraries), you do not need to read the documentation for this\nclass.\n\nMock description type strings beginning with `_case:` are reserved for the default ContractCase\nmatchers. Only use a types prefixed with `_case:` if you wish to create a DSL for a special case\nfor a matching behaviour that is already provided by a core ContractCase mock.", "stability": "stable", "summary": "The base class for all ContractCase Mock Descriptors. Extend this if you are implementing your own mock type." }, "locationInModule": { "filename": "src/interactions/base/AnyInteractionDescriptor.ts", "line": 118 }, "parameters": [ { "docs": { "summary": "- The type string for this mock description (see [Extending ContractCase](https://case.contract-testing.io/docs/reference/plugin-framework) for a description of these strings)." }, "name": "mockType", "type": { "primitive": "string" } }, { "name": "setup", "type": { "fqn": "@contract-case/case-definition-dsl.interactions.base.ContractCaseCoreSetup" } } ] }, "kind": "class", "locationInModule": { "filename": "src/interactions/base/AnyInteractionDescriptor.ts", "line": 95 }, "methods": [ { "docs": { "remarks": "You shouldn't need to override this method.", "returns": "A JSON string representation of this mock.", "stability": "stable", "summary": "This method returns the entire example as a JSON string, as a convenience so that wrapper libraries don't need to figure out how to walk a tree of example objects." }, "locationInModule": { "filename": "src/interactions/base/AnyInteractionDescriptor.ts", "line": 159 }, "name": "stringify", "returns": { "type": { "primitive": "string" } } }, { "docs": { "remarks": "It exists because the ContractCase matcher format is not legal in all languages that ContractCase supports.\n\nIt isn't called by any implementation directly, it's used on the javascript side by `JSON.stringify()`.\n\nCalling it from a wrapper library will return unhelpful results, as JSii can't map all objects that it returns.\n\nWARNING: Do not return a string from this method. You must instead return\nan object that can be serialised to JSON following the matcher format\ndescribed in [Extending ContractCase](https://case.contract-testing.io/docs/reference/plugin-framework).", "returns": "An object in the matcher format described [in the Extending ContractCase documentation](https://case.contract-testing.io/docs/reference/plugin-framework).", "stability": "stable", "summary": "Only override this method if you are writing a matcher in a language other than TypeScript." }, "locationInModule": { "filename": "src/interactions/base/AnyInteractionDescriptor.ts", "line": 141 }, "name": "toJSON", "returns": { "type": { "primitive": "any" } } } ], "name": "AnyInteractionDescriptor", "namespace": "interactions.base", "symbolId": "src/interactions/base/AnyInteractionDescriptor:AnyInteractionDescriptor" }, "@contract-case/case-definition-dsl.interactions.base.ContractCaseCoreBehaviour": { "assembly": "@contract-case/case-definition-dsl", "datatype": true, "docs": { "custom": { "public": "true" }, "remarks": "If you are using the included example types from ContractCase (or any\nextension libraries), you do not need to use this class (or understand this\ndocumentation).\n\nThis documentation is only necessary for people extending ContractCase to include\nnew mock types.\n\nSee the definitions in the case-entities-internal package for more details.", "stability": "stable", "summary": "This type defines the core behaviour that ContractCase has with this mock." }, "fqn": "@contract-case/case-definition-dsl.interactions.base.ContractCaseCoreBehaviour", "kind": "interface", "locationInModule": { "filename": "src/interactions/base/AnyInteractionDescriptor.ts", "line": 20 }, "name": "ContractCaseCoreBehaviour", "namespace": "interactions.base", "properties": [ { "abstract": true, "docs": { "remarks": "Usually this is inverted on read vs write, for\nexample, a written MOCK_HTTP_CLIENT might become a MOCK_HTTP_SERVER during\nreading.\n\nThis will almost always be the same as the top level type for your mock\nduring read - but if it is different, ContractCase will respect this value.", "stability": "stable", "summary": "The type of this mock." }, "immutable": true, "locationInModule": { "filename": "src/interactions/base/AnyInteractionDescriptor.ts", "line": 29 }, "name": "mockType", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "remarks": "If set to\n`\"default\"` then ContractCase will not invoke or require the state handlers\nand will use the default values for all state variables. If set to `\"state\"`,\nthen ContractCase will invoke the state handlers and require the expected variables to\nbe returned.\n\nAll other values are errors.", "stability": "stable", "summary": "Whether or not this mock mode will invoke state handlers." }, "immutable": true, "locationInModule": { "filename": "src/interactions/base/AnyInteractionDescriptor.ts", "line": 40 }, "name": "stateVariables", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "remarks": "If `\"provided\"` then ContractCase will require the user to provide a\ntrigger and a test function (eg, for testing an HTTP Client, code that will\ninvoke it must be provided). If `\"generated\"`, then ContractCase will not\nrequire user provided triggers as it will generate them (eg, if the\nsystem under test is an HTTP server, ContractCase will generate client calls).", "stability": "stable", "summary": "Whether or not this mock mode needs to be triggered by user-provided code." }, "immutable": true, "locationInModule": { "filename": "src/interactions/base/AnyInteractionDescriptor.ts", "line": 50 }, "name": "triggers", "type": { "primitive": "string" } } ], "symbolId": "src/interactions/base/AnyInteractionDescriptor:ContractCaseCoreBehaviour" }, "@contract-case/case-definition-dsl.interactions.base.ContractCaseCoreSetup": { "assembly": "@contract-case/case-definition-dsl", "datatype": true, "docs": { "custom": { "public": "true" }, "stability": "stable" }, "fqn": "@contract-case/case-definition-dsl.interactions.base.ContractCaseCoreSetup", "kind": "interface", "locationInModule": { "filename": "src/interactions/base/AnyInteractionDescriptor.ts", "line": 56 }, "name": "ContractCaseCoreSetup", "namespace": "interactions.base", "properties": [ { "abstract": true, "docs": { "stability": "stable", "summary": "Defines how the ContractCase core will behave when reading (ie, verifying) a interaction of this type." }, "immutable": true, "locationInModule": { "filename": "src/interactions/base/AnyInteractionDescriptor.ts", "line": 64 }, "name": "read", "type": { "fqn": "@contract-case/case-definition-dsl.interactions.base.ContractCaseCoreBehaviour" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "Defines how the ContractCase core will behave when writing (ie, defining) an interaction of this type." }, "immutable": true, "locationInModule": { "filename": "src/interactions/base/AnyInteractionDescriptor.ts", "line": 60 }, "name": "write", "type": { "fqn": "@contract-case/case-definition-dsl.interactions.base.ContractCaseCoreBehaviour" } } ], "symbolId": "src/interactions/base/AnyInteractionDescriptor:ContractCaseCoreSetup" }, "@contract-case/case-definition-dsl.interactions.functions.FunctionExecutionExample": { "assembly": "@contract-case/case-definition-dsl", "datatype": true, "docs": { "custom": { "public": "true" }, "stability": "stable", "summary": "Interaction descriptor for a function execution which returns successfully." }, "fqn": "@contract-case/case-definition-dsl.interactions.functions.FunctionExecutionExample", "kind": "interface", "locationInModule": { "filename": "src/interactions/functions/types.ts", "line": 8 }, "name": "FunctionExecutionExample", "namespace": "interactions.functions", "properties": [ { "abstract": true, "docs": { "stability": "stable", "summary": "An array of expected function arguments (or test equivalence matchers for those arguments)." }, "immutable": true, "locationInModule": { "filename": "src/interactions/functions/types.ts", "line": 12 }, "name": "arguments", "type": { "collection": { "elementtype": { "primitive": "any" }, "kind": "array" } } }, { "abstract": true, "docs": { "remarks": "Doubles as the handle used by\nregisterFunction.", "stability": "stable", "summary": "The name of the function to be executed." }, "immutable": true, "locationInModule": { "filename": "src/interactions/functions/types.ts", "line": 33 }, "name": "functionName", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "A test equivalence matcher for the return value from this function." }, "immutable": true, "locationInModule": { "filename": "src/interactions/functions/types.ts", "line": 22 }, "name": "returnValue", "type": { "primitive": "any" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "A name for this specific combination of arguments - must be unique in this contract." }, "immutable": true, "locationInModule": { "filename": "src/interactions/functions/types.ts", "line": 17 }, "name": "invocationName", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "A name for this specific return value - must be unique in this contract." }, "immutable": true, "locationInModule": { "filename": "src/interactions/functions/types.ts", "line": 27 }, "name": "responseName", "optional": true, "type": { "primitive": "string" } } ], "symbolId": "src/interactions/functions/types:FunctionExecutionExample" }, "@contract-case/case-definition-dsl.interactions.functions.ThrowingFunctionExecutionExample": { "assembly": "@contract-case/case-definition-dsl", "datatype": true, "docs": { "custom": { "public": "true" }, "stability": "stable", "summary": "Interaction descriptor for a function execution that throws an error." }, "fqn": "@contract-case/case-definition-dsl.interactions.functions.ThrowingFunctionExecutionExample", "kind": "interface", "locationInModule": { "filename": "src/interactions/functions/types.ts", "line": 41 }, "name": "ThrowingFunctionExecutionExample", "namespace": "interactions.functions", "properties": [ { "abstract": true, "docs": { "stability": "stable", "summary": "An array of expected function arguments (or test equivalence matchers for those arguments)." }, "immutable": true, "locationInModule": { "filename": "src/interactions/functions/types.ts", "line": 45 }, "name": "arguments", "type": { "collection": { "elementtype": { "primitive": "any" }, "kind": "array" } } }, { "abstract": true, "docs": { "stability": "stable", "summary": "A test equivalence matcher for the class name of this exception." }, "immutable": true, "locationInModule": { "filename": "src/interactions/functions/types.ts", "line": 55 }, "name": "errorClassName", "type": { "primitive": "any" } }, { "abstract": true, "docs": { "remarks": "Doubles as the handle used by\nregisterFunction.", "stability": "stable", "summary": "The name of the function to be executed." }, "immutable": true, "locationInModule": { "filename": "src/interactions/functions/types.ts", "line": 72 }, "name": "functionName", "type": { "primitive": "string" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "A name for this specific combination of arguments - must be unique in this contract." }, "immutable": true, "locationInModule": { "filename": "src/interactions/functions/types.ts", "line": 50 }, "name": "invocationName", "optional": true, "type": { "primitive": "string" } }, { "abstract": true, "docs": { "remarks": "In general, it's best to rely on the class of the exception instead of the specific error message", "stability": "stable", "summary": "A test equivalence matcher for the message from this exception." }, "immutable": true, "locationInModule": { "filename": "src/interactions/functions/types.ts", "line": 66 }, "name": "message", "optional": true, "type": { "primitive": "any" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "A name for this specific exception, must be unique in this." }, "immutable": true, "locationInModule": { "filename": "src/interactions/functions/types.ts", "line": 60 }, "name": "responseName", "optional": true, "type": { "primitive": "string" } } ], "symbolId": "src/interactions/functions/types:ThrowingFunctionExecutionExample" }, "@contract-case/case-definition-dsl.interactions.functions.WillCallFunction": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.interactions.base.AnyInteractionDescriptor", "docs": { "custom": { "public": "true" }, "stability": "stable", "summary": "Defines an example that executes a registered function with specific arguments." }, "fqn": "@contract-case/case-definition-dsl.interactions.functions.WillCallFunction", "initializer": { "docs": { "stability": "stable", "summary": "Defines an interaction that executes a registered function with specific arguments, expecting that interaction to return successfully." }, "locationInModule": { "filename": "src/interactions/functions/MockFunctionExecution.ts", "line": 46 }, "parameters": [ { "docs": { "summary": "- a {@link mocks.functions.FunctionExecutionExample }." }, "name": "example", "type": { "fqn": "@contract-case/case-definition-dsl.interactions.functions.FunctionExecutionExample" } } ] }, "kind": "class", "locationInModule": { "filename": "src/interactions/functions/MockFunctionExecution.ts", "line": 16 }, "name": "WillCallFunction", "namespace": "interactions.functions", "properties": [ { "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/interactions/functions/MockFunctionExecution.ts", "line": 38 }, "name": "functionName", "type": { "primitive": "string" } }, { "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/interactions/functions/MockFunctionExecution.ts", "line": 34 }, "name": "request", "type": { "primitive": "any" } }, { "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/interactions/functions/MockFunctionExecution.ts", "line": 36 }, "name": "response", "type": { "primitive": "any" } } ], "symbolId": "src/interactions/functions/MockFunctionExecution:WillCallFunction" }, "@contract-case/case-definition-dsl.interactions.functions.WillCallThrowingFunction": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.interactions.base.AnyInteractionDescriptor", "docs": { "custom": { "public": "true" }, "stability": "stable", "summary": "Defines an interaction that executes a registered function with specific arguments, expecting that function to throw an error." }, "fqn": "@contract-case/case-definition-dsl.interactions.functions.WillCallThrowingFunction", "initializer": { "docs": { "stability": "stable", "summary": "Defines an example that executes a registered function with specific arguments." }, "locationInModule": { "filename": "src/interactions/functions/MockFunctionFailure.ts", "line": 46 }, "parameters": [ { "docs": { "summary": "- a {@link mocks.functions.FunctionExecutionExample }." }, "name": "example", "type": { "fqn": "@contract-case/case-definition-dsl.interactions.functions.ThrowingFunctionExecutionExample" } } ] }, "kind": "class", "locationInModule": { "filename": "src/interactions/functions/MockFunctionFailure.ts", "line": 17 }, "name": "WillCallThrowingFunction", "namespace": "interactions.functions", "properties": [ { "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/interactions/functions/MockFunctionFailure.ts", "line": 39 }, "name": "functionName", "type": { "primitive": "string" } }, { "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/interactions/functions/MockFunctionFailure.ts", "line": 35 }, "name": "request", "type": { "primitive": "any" } }, { "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/interactions/functions/MockFunctionFailure.ts", "line": 37 }, "name": "response", "type": { "primitive": "any" } } ], "symbolId": "src/interactions/functions/MockFunctionFailure:WillCallThrowingFunction" }, "@contract-case/case-definition-dsl.interactions.functions.WillReceiveFunctionCall": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.interactions.base.AnyInteractionDescriptor", "docs": { "custom": { "public": "true" }, "stability": "stable", "summary": "Defines an example that expects a function to be called with specific arguments." }, "fqn": "@contract-case/case-definition-dsl.interactions.functions.WillReceiveFunctionCall", "initializer": { "docs": { "stability": "stable", "summary": "Defines an example that expects a function to be called with specific arguments." }, "locationInModule": { "filename": "src/interactions/functions/MockFunctionCall.ts", "line": 45 }, "parameters": [ { "docs": { "summary": "- a {@link mocks.functions.FunctionExecutionExample }." }, "name": "example", "type": { "fqn": "@contract-case/case-definition-dsl.interactions.functions.FunctionExecutionExample" } } ] }, "kind": "class", "locationInModule": { "filename": "src/interactions/functions/MockFunctionCall.ts", "line": 16 }, "name": "WillReceiveFunctionCall", "namespace": "interactions.functions", "properties": [ { "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/interactions/functions/MockFunctionCall.ts", "line": 38 }, "name": "functionName", "type": { "primitive": "string" } }, { "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/interactions/functions/MockFunctionCall.ts", "line": 34 }, "name": "request", "type": { "primitive": "any" } }, { "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/interactions/functions/MockFunctionCall.ts", "line": 36 }, "name": "response", "type": { "primitive": "any" } } ], "symbolId": "src/interactions/functions/MockFunctionCall:WillReceiveFunctionCall" }, "@contract-case/case-definition-dsl.interactions.functions.WillReceiveFunctionCallAndThrow": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.interactions.base.AnyInteractionDescriptor", "docs": { "custom": { "public": "true" }, "stability": "stable", "summary": "Defines an example that expects a function to be called with specific arguments." }, "fqn": "@contract-case/case-definition-dsl.interactions.functions.WillReceiveFunctionCallAndThrow", "initializer": { "docs": { "stability": "stable", "summary": "Defines an example that expects a function to be called with specific arguments." }, "locationInModule": { "filename": "src/interactions/functions/MockFunctionFailingCall.ts", "line": 45 }, "parameters": [ { "docs": { "summary": "- a {@link mocks.functions.FunctionExecutionExample }." }, "name": "example", "type": { "fqn": "@contract-case/case-definition-dsl.interactions.functions.ThrowingFunctionExecutionExample" } } ] }, "kind": "class", "locationInModule": { "filename": "src/interactions/functions/MockFunctionFailingCall.ts", "line": 16 }, "name": "WillReceiveFunctionCallAndThrow", "namespace": "interactions.functions", "properties": [ { "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/interactions/functions/MockFunctionFailingCall.ts", "line": 38 }, "name": "functionName", "type": { "primitive": "string" } }, { "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/interactions/functions/MockFunctionFailingCall.ts", "line": 34 }, "name": "request", "type": { "primitive": "any" } }, { "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/interactions/functions/MockFunctionFailingCall.ts", "line": 36 }, "name": "response", "type": { "primitive": "any" } } ], "symbolId": "src/interactions/functions/MockFunctionFailingCall:WillReceiveFunctionCallAndThrow" }, "@contract-case/case-definition-dsl.interactions.http.HttpExample": { "assembly": "@contract-case/case-definition-dsl", "datatype": true, "docs": { "custom": { "public": "true" }, "stability": "stable" }, "fqn": "@contract-case/case-definition-dsl.interactions.http.HttpExample", "kind": "interface", "locationInModule": { "filename": "src/interactions/http/types.ts", "line": 6 }, "name": "HttpExample", "namespace": "interactions.http", "properties": [ { "abstract": true, "docs": { "stability": "stable", "summary": "A test equivalence matcher that will match an HTTP request (recommended: the Test Equivalence Matcher `HttpRequest`)." }, "immutable": true, "locationInModule": { "filename": "src/interactions/http/types.ts", "line": 10 }, "name": "request", "type": { "primitive": "any" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "A test equivalence matcher that will match an HTTP response (recommended: the Test Equivalence Matcher `HttpResponse`)." }, "immutable": true, "locationInModule": { "filename": "src/interactions/http/types.ts", "line": 14 }, "name": "response", "type": { "primitive": "any" } } ], "symbolId": "src/interactions/http/types:HttpExample" }, "@contract-case/case-definition-dsl.interactions.http.WillReceiveHttpRequest": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.interactions.base.AnyInteractionDescriptor", "docs": { "custom": { "public": "true" }, "remarks": "Use this to define a contract at an HTTP client.", "stability": "stable", "summary": "Defines an example that expects to receive an HTTP request." }, "fqn": "@contract-case/case-definition-dsl.interactions.http.WillReceiveHttpRequest", "initializer": { "docs": { "remarks": "Use this to define a contract at an HTTP client.", "stability": "stable", "summary": "Defines an example that expects to receive an HTTP request." }, "locationInModule": { "filename": "src/interactions/http/WillReceiveHttpRequest.ts", "line": 41 }, "parameters": [ { "docs": { "summary": "- an {@link mocks.http.HttpExample }." }, "name": "httpExample", "type": { "fqn": "@contract-case/case-definition-dsl.interactions.http.HttpExample" } } ] }, "kind": "class", "locationInModule": { "filename": "src/interactions/http/WillReceiveHttpRequest.ts", "line": 14 }, "name": "WillReceiveHttpRequest", "namespace": "interactions.http", "properties": [ { "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/interactions/http/WillReceiveHttpRequest.ts", "line": 32 }, "name": "request", "type": { "primitive": "any" } }, { "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/interactions/http/WillReceiveHttpRequest.ts", "line": 34 }, "name": "response", "type": { "primitive": "any" } } ], "symbolId": "src/interactions/http/WillReceiveHttpRequest:WillReceiveHttpRequest" }, "@contract-case/case-definition-dsl.interactions.http.WillSendHttpRequest": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.interactions.base.AnyInteractionDescriptor", "docs": { "custom": { "public": "true" }, "remarks": "Use this to test HTTP servers.", "stability": "stable", "summary": "Defines an example that expects to send an HTTP request." }, "fqn": "@contract-case/case-definition-dsl.interactions.http.WillSendHttpRequest", "initializer": { "docs": { "remarks": "Use this to test HTTP servers.", "stability": "stable", "summary": "Defines an example that expects to send an HTTP request." }, "locationInModule": { "filename": "src/interactions/http/WillSendHttpRequest.ts", "line": 39 }, "parameters": [ { "docs": { "summary": "-." }, "name": "httpExample", "type": { "fqn": "@contract-case/case-definition-dsl.interactions.http.HttpExample" } } ] }, "kind": "class", "locationInModule": { "filename": "src/interactions/http/WillSendHttpRequest.ts", "line": 13 }, "name": "WillSendHttpRequest", "namespace": "interactions.http", "properties": [ { "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/interactions/http/WillSendHttpRequest.ts", "line": 31 }, "name": "request", "type": { "primitive": "any" } }, { "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/interactions/http/WillSendHttpRequest.ts", "line": 33 }, "name": "response", "type": { "primitive": "any" } } ], "symbolId": "src/interactions/http/WillSendHttpRequest:WillSendHttpRequest" }, "@contract-case/case-definition-dsl.matchers.IgnoreThisClass": { "assembly": "@contract-case/case-definition-dsl", "docs": { "stability": "stable", "summary": "Empty class to make jsii-docgen happy with this module." }, "fqn": "@contract-case/case-definition-dsl.matchers.IgnoreThisClass", "initializer": { "docs": { "stability": "stable" } }, "kind": "class", "locationInModule": { "filename": "src/matchers/index.ts", "line": 15 }, "name": "IgnoreThisClass", "namespace": "matchers", "symbolId": "src/matchers/index:IgnoreThisClass" }, "@contract-case/case-definition-dsl.matchers.arrays.ArrayContains": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "docs": { "custom": { "public": "true" }, "stability": "stable", "summary": "Matches an Array which contains elements that match the given matchers - note that two different matchers may be satisfied by the same item in the array." }, "fqn": "@contract-case/case-definition-dsl.matchers.arrays.ArrayContains", "initializer": { "docs": { "stability": "stable", "summary": "Matches an Array which contains elements that match the given matchers - note that two different matchers may be satisfied by the same item in the array." }, "locationInModule": { "filename": "src/matchers/arrays/ArrayContains.ts", "line": 23 }, "parameters": [ { "docs": { "summary": "- any number of matchers, each of which must be found inside the array." }, "name": "matchers", "type": { "collection": { "elementtype": { "primitive": "any" }, "kind": "array" } } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/arrays/ArrayContains.ts", "line": 10 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/arrays/ArrayContains.ts", "line": 36 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "returns": { "type": { "primitive": "any" } } } ], "name": "ArrayContains", "namespace": "matchers.arrays", "symbolId": "src/matchers/arrays/ArrayContains:ArrayContains" }, "@contract-case/case-definition-dsl.matchers.arrays.ArrayEachEntryMatches": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "docs": { "custom": { "public": "true" }, "stability": "stable", "summary": "Matches an array where each element matches the provided matcher." }, "fqn": "@contract-case/case-definition-dsl.matchers.arrays.ArrayEachEntryMatches", "initializer": { "docs": { "stability": "stable", "summary": "Matches an array where each element matches the provided matcher." }, "locationInModule": { "filename": "src/matchers/arrays/ArrayEachEntryMatches.ts", "line": 21 }, "parameters": [ { "docs": { "summary": "- The matcher for each entry in the array." }, "name": "matcher", "type": { "primitive": "any" } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/arrays/ArrayEachEntryMatches.ts", "line": 9 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/arrays/ArrayEachEntryMatches.ts", "line": 34 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "returns": { "type": { "primitive": "any" } } } ], "name": "ArrayEachEntryMatches", "namespace": "matchers.arrays", "symbolId": "src/matchers/arrays/ArrayEachEntryMatches:ArrayEachEntryMatches" }, "@contract-case/case-definition-dsl.matchers.arrays.ArrayEachEntryMatchesWithExample": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.AnyMatcherWithExample", "docs": { "custom": { "public": "true" }, "remarks": "This example must still pass the\nprovided matcher", "stability": "stable", "summary": "Matches an array where each element matches the provided matcher, but with a custom example for the whole array." }, "fqn": "@contract-case/case-definition-dsl.matchers.arrays.ArrayEachEntryMatchesWithExample", "initializer": { "docs": { "remarks": "This example must still pass the\nprovided matcher", "stability": "stable", "summary": "Matches an array where each element matches the provided matcher, but with a custom example for the whole array." }, "locationInModule": { "filename": "src/matchers/arrays/ArrayEachEntryMatchesWithExample.ts", "line": 30 }, "parameters": [ { "docs": { "summary": "- The matcher for each entry in the array." }, "name": "matcher", "type": { "primitive": "any" } }, { "docs": { "summary": "- An optional example of the whole array to return." }, "name": "example", "type": { "collection": { "elementtype": { "primitive": "any" }, "kind": "array" } } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/arrays/ArrayEachEntryMatchesWithExample.ts", "line": 12 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/arrays/ArrayEachEntryMatchesWithExample.ts", "line": 43 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.AnyMatcherWithExample", "returns": { "type": { "primitive": "any" } } } ], "name": "ArrayEachEntryMatchesWithExample", "namespace": "matchers.arrays", "symbolId": "src/matchers/arrays/ArrayEachEntryMatchesWithExample:ArrayEachEntryMatchesWithExample" }, "@contract-case/case-definition-dsl.matchers.arrays.ArrayLength": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "docs": { "custom": { "public": "true" }, "stability": "stable", "summary": "Matches an Array whose length is within the specified range (or 1-infinity if not specified)." }, "fqn": "@contract-case/case-definition-dsl.matchers.arrays.ArrayLength", "initializer": { "docs": { "stability": "stable", "summary": "Matches an Array whose length is within the specified range (or 1-infinity if not specified)." }, "locationInModule": { "filename": "src/matchers/arrays/ArrayLength.ts", "line": 47 }, "parameters": [ { "docs": { "summary": "- An `ArrayLengthOptions` object with optional minLength (default 1) and maxLength (default infinity) properties." }, "name": "options", "type": { "fqn": "@contract-case/case-definition-dsl.matchers.arrays.ArrayLengthOptions" } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/arrays/ArrayLength.ts", "line": 31 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/arrays/ArrayLength.ts", "line": 65 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "returns": { "type": { "primitive": "any" } } } ], "name": "ArrayLength", "namespace": "matchers.arrays", "symbolId": "src/matchers/arrays/ArrayLength:ArrayLength" }, "@contract-case/case-definition-dsl.matchers.arrays.ArrayLengthOptions": { "assembly": "@contract-case/case-definition-dsl", "datatype": true, "docs": { "custom": { "public": "true" }, "stability": "stable", "summary": "Options for the `ArrayLength` matcher." }, "fqn": "@contract-case/case-definition-dsl.matchers.arrays.ArrayLengthOptions", "kind": "interface", "locationInModule": { "filename": "src/matchers/arrays/ArrayLength.ts", "line": 11 }, "name": "ArrayLengthOptions", "namespace": "matchers.arrays", "properties": [ { "abstract": true, "docs": { "remarks": "Default infinity.", "stability": "stable", "summary": "The maximum length for the array - must be greater than minimum length." }, "immutable": true, "locationInModule": { "filename": "src/matchers/arrays/ArrayLength.ts", "line": 24 }, "name": "maxLength", "optional": true, "type": { "primitive": "number" } }, { "abstract": true, "docs": { "remarks": "Default 1.", "stability": "stable", "summary": "The minimum length for the array - must be greater than zero, otherwise empty arrays pass and you wouldn't be testing the array contents." }, "immutable": true, "locationInModule": { "filename": "src/matchers/arrays/ArrayLength.ts", "line": 18 }, "name": "minLength", "optional": true, "type": { "primitive": "number" } } ], "symbolId": "src/matchers/arrays/ArrayLength:ArrayLengthOptions" }, "@contract-case/case-definition-dsl.matchers.arrays.ArrayStartsWith": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "docs": { "custom": { "public": "true" }, "stability": "stable", "summary": "Matches an Array which starts with the provided array of matchers - any additional elements in the array are ignored." }, "fqn": "@contract-case/case-definition-dsl.matchers.arrays.ArrayStartsWith", "initializer": { "docs": { "stability": "stable", "summary": "Matches an Array which starts with the provided array of matchers - any additional elements in the array are ignored." }, "locationInModule": { "filename": "src/matchers/arrays/ArrayStartsWith.ts", "line": 21 }, "parameters": [ { "docs": { "remarks": "Additional elements in the actual array are ignored.", "summary": "- An array of matchers that describes the start of the array." }, "name": "matchers", "type": { "collection": { "elementtype": { "primitive": "any" }, "kind": "array" } } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/arrays/ArrayStartsWith.ts", "line": 9 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/arrays/ArrayStartsWith.ts", "line": 34 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "returns": { "type": { "primitive": "any" } } } ], "name": "ArrayStartsWith", "namespace": "matchers.arrays", "symbolId": "src/matchers/arrays/ArrayStartsWith:ArrayStartsWith" }, "@contract-case/case-definition-dsl.matchers.base.AnyMatcher": { "abstract": true, "assembly": "@contract-case/case-definition-dsl", "docs": { "custom": { "public": "true" }, "remarks": "Extend this if you don't\nhave an example in your Matcher. Otherwise, use `AnyMatcherWithExample`", "stability": "stable", "summary": "The base class for all Test Equivalence Matchers." }, "fqn": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "initializer": { "docs": { "remarks": "Extend this if you don't\nhave an example in your Matcher. Otherwise, use {@link matchers.internals.AnyMatcherWithExample }\nMatcher strings beginning with `_case:` are reserved for the default ContractCase\nmatchers.\n\nOnly use a types prefixed with `_case:` if you wish to create a special case\nfor a matching behaviour that is already provided by a core ContractCase matcher.", "stability": "stable", "summary": "The base class for all Test Equivalence Matchers." }, "locationInModule": { "filename": "src/matchers/base/AnyMatcher.ts", "line": 24 }, "parameters": [ { "docs": { "summary": "- The type string for this matcher (see {@link https://case.contract-testing.io/docs/reference/plugin-framework Extending ContractCase} for a description of these strings)." }, "name": "matcherType", "type": { "primitive": "string" } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/base/AnyMatcher.ts", "line": 8 }, "methods": [ { "docs": { "remarks": "It exists because the ContractCase matcher format is not legal in all languages that ContractCase supports.\n\nWARNING: Do not return a string from this method. You must instead return\nan object that can be serialised to JSON following the matcher format\ndescribed in {@link https://case.contract-testing.io/docs/reference/plugin-framework Extending ContractCase}.", "returns": "An object in the matcher format described {@link https://case.contract-testing.io/docs/reference/plugin-framework in the Extending ContractCase documentation}", "stability": "stable", "summary": "Only override this method if you are writing a matcher in a language other than TypeScript." }, "locationInModule": { "filename": "src/matchers/base/AnyMatcher.ts", "line": 39 }, "name": "toJSON", "returns": { "type": { "primitive": "any" } } } ], "name": "AnyMatcher", "namespace": "matchers.base", "symbolId": "src/matchers/base/AnyMatcher:AnyMatcher" }, "@contract-case/case-definition-dsl.matchers.base.AnyMatcherWithExample": { "abstract": true, "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "docs": { "custom": { "public": "true" }, "remarks": "Extend this if your matcher knows what the example will be. Otherwise, use `matchers.AnyMatcher`", "stability": "stable", "summary": "The base class for all Test Equivalence Matchers that have examples provided." }, "fqn": "@contract-case/case-definition-dsl.matchers.base.AnyMatcherWithExample", "initializer": { "docs": { "remarks": "Extend this if your matcher knows what the example will be. Otherwise, use `matchers.AnyMatcher`\n\nOnly use a type prefixed with `_case:` if you wish to create a special case\nfor a matching behaviour that is already provided by a core ContractCase matcher.", "stability": "stable", "summary": "The base class for all Test Equivalence Matchers that have examples provided." }, "locationInModule": { "filename": "src/matchers/base/AnyMatcher.ts", "line": 69 }, "parameters": [ { "docs": { "summary": "- The type string for this matcher (see {@link https://case.contract-testing.io/docs/reference/plugin-framework Extending ContractCase} for a description of these strings)." }, "name": "matcherType", "type": { "primitive": "string" } }, { "docs": { "summary": "- The data that will be used as the example for this matcher." }, "name": "example", "type": { "primitive": "any" } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/base/AnyMatcher.ts", "line": 55 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/base/AnyMatcher.ts", "line": 82 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "returns": { "type": { "primitive": "any" } } } ], "name": "AnyMatcherWithExample", "namespace": "matchers.base", "symbolId": "src/matchers/base/AnyMatcher:AnyMatcherWithExample" }, "@contract-case/case-definition-dsl.matchers.base.CascadingContextMatcher": { "abstract": true, "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "docs": { "custom": { "public": "true" }, "remarks": "It's useful for taking advantage of the context cascading available on all\nmatchers without needing to write you own matcher. Extend it if you want to\nmake a matcher that only changes the context object. If you don't know what\nthis means, you don't need to extend this matcher.\n\nDue to limitations with JSii, extending implementations MUST NOT override\n`toJSON`, or MUST return the result of `super.toJSON()` as part of their\ntoJSON method.", "stability": "stable", "summary": "This is a passthrough matcher that does nothing except call the child matcher with the current actual data." }, "fqn": "@contract-case/case-definition-dsl.matchers.base.CascadingContextMatcher", "initializer": { "docs": { "remarks": "It's useful for taking advantage of the context cascading available on all\nmatchers without needing to write you own matcher. Extend it if you want to\nmake a matcher that only changes the context object. If you don't know what\nthis means, you don't need to extend this matcher.\n\nDue to limitations with JSii, extending implementations MUST NOT override\n`toJSON`, or MUST return the result of `super.toJSON()` as part of their\ntoJSON method.", "stability": "stable", "summary": "This is a passthrough matcher that does nothing except call the child matcher with the current actual data." }, "locationInModule": { "filename": "src/matchers/base/CascadingContextMatcher.ts", "line": 47 }, "parameters": [ { "docs": { "summary": "- The matcher to apply these context changes to." }, "name": "child", "type": { "primitive": "any" } }, { "docs": { "summary": "- a map of properties to add to the context object." }, "name": "contextModifiers", "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "map" } } }, { "docs": { "summary": "- a map of properties to add to the current run object." }, "name": "currentRunModifiers", "type": { "collection": { "elementtype": { "primitive": "string" }, "kind": "map" } } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/base/CascadingContextMatcher.ts", "line": 19 }, "methods": [ { "docs": { "stability": "stable", "summary": "If extending this class, do not override this method (or if you do, make sure you call `super.toJSON()`)." }, "locationInModule": { "filename": "src/matchers/base/CascadingContextMatcher.ts", "line": 72 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "returns": { "type": { "primitive": "any" } } } ], "name": "CascadingContextMatcher", "namespace": "matchers.base", "symbolId": "src/matchers/base/CascadingContextMatcher:CascadingContextMatcher" }, "@contract-case/case-definition-dsl.matchers.convenience.And": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "docs": { "custom": { "public": "true" }, "remarks": "For best results, wrap the And matcher in a WithExample matcher.", "stability": "stable", "summary": "Matches all of the provided matchers. Useful for combining restrictions provided by different matchers, or creating new matchers without needing plugins." }, "fqn": "@contract-case/case-definition-dsl.matchers.convenience.And", "initializer": { "docs": { "remarks": "For best results, wrap the And matcher in a WithExample matcher.", "stability": "stable", "summary": "Matches all of the provided matchers. Useful for combining restrictions provided by different matchers, or creating new matchers without needing plugins." }, "locationInModule": { "filename": "src/matchers/convenience/And.ts", "line": 30 }, "parameters": [ { "docs": { "summary": "- An array of the matchers to run against this particular spot in the tree." }, "name": "matchers", "type": { "collection": { "elementtype": { "primitive": "any" }, "kind": "array" } } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/convenience/And.ts", "line": 14 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/convenience/And.ts", "line": 43 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "returns": { "type": { "primitive": "any" } } } ], "name": "And", "namespace": "matchers.convenience", "symbolId": "src/matchers/convenience/And:And" }, "@contract-case/case-definition-dsl.matchers.convenience.ChangeLogLevel": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.CascadingContextMatcher", "docs": { "custom": { "public": "true" }, "remarks": "This has no effect on matching.\n\nNote that this log level matcher will be saved into the contract, so it will\nalso affect the log level during verification. Usually you will want to\nremove the use of this matcher before saving the contract.", "stability": "stable", "summary": "Alters the ContractCase log level below this matcher. Useful for debugging." }, "fqn": "@contract-case/case-definition-dsl.matchers.convenience.ChangeLogLevel", "initializer": { "docs": { "remarks": "This has no effect on matching.\n\nNote that this log level matcher will be saved into the contract, so it will\nalso affect the log level during verification. Usually you will want to\nremove the use of this matcher before saving the contract.", "stability": "stable", "summary": "Alters the ContractCase log level below this matcher. Useful for debugging." }, "locationInModule": { "filename": "src/matchers/convenience/ChangeLogLevel.ts", "line": 27 }, "parameters": [ { "docs": { "remarks": "One of \"none\" | \"error\" | \"warn\" | \"debug\" | \"maintainerDebug\" | \"deepMaintainerDebug\". see [LogLevel](https://case.contract-testing.io/docs/reference/configuring#loglevel-none--error--warn--debug--maintainerdebug) for details", "summary": "- The new LogLevel." }, "name": "logLevel", "type": { "primitive": "string" } }, { "docs": { "summary": "- The next matcher in the tree." }, "name": "child", "type": { "primitive": "any" } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/convenience/ChangeLogLevel.ts", "line": 14 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/convenience/ChangeLogLevel.ts", "line": 39 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.CascadingContextMatcher", "returns": { "type": { "primitive": "any" } } } ], "name": "ChangeLogLevel", "namespace": "matchers.convenience", "symbolId": "src/matchers/convenience/ChangeLogLevel:ChangeLogLevel" }, "@contract-case/case-definition-dsl.matchers.convenience.NamedMatch": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "docs": { "custom": { "public": "true" }, "remarks": "Lookups can be made with {@link matchers.convenience.ReferenceMatch }.", "stability": "stable", "summary": "Saves the matcher below it with a unique name that can be used with lookups in tests after this one." }, "fqn": "@contract-case/case-definition-dsl.matchers.convenience.NamedMatch", "initializer": { "docs": { "remarks": "Lookups can be made with {@link matchers.convenience.ReferenceMatch }.", "stability": "stable", "summary": "Saves the matcher below it with a unique name that can be used with lookups in tests after this one." }, "locationInModule": { "filename": "src/matchers/convenience/NamedMatch.ts", "line": 27 }, "parameters": [ { "docs": { "summary": "- The name you can use to lookup this matcher later." }, "name": "name", "type": { "primitive": "string" } }, { "docs": { "remarks": "If omitted or undefined, the content will be looked up in a previously named match", "summary": "- The content of this named match." }, "name": "child", "type": { "primitive": "any" } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/convenience/NamedMatch.ts", "line": 10 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/convenience/NamedMatch.ts", "line": 41 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "returns": { "type": { "primitive": "any" } } } ], "name": "NamedMatch", "namespace": "matchers.convenience", "symbolId": "src/matchers/convenience/NamedMatch:NamedMatch" }, "@contract-case/case-definition-dsl.matchers.convenience.ReferenceMatch": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "docs": { "custom": { "public": "true" }, "stability": "stable", "summary": "Matches a named matcher created with {@link matchers.convenience.NamedMatch }." }, "fqn": "@contract-case/case-definition-dsl.matchers.convenience.ReferenceMatch", "initializer": { "docs": { "stability": "stable", "summary": "Matches a named matcher created with {@link matchers.convenience.NamedMatch }." }, "locationInModule": { "filename": "src/matchers/convenience/ReferenceMatch.ts", "line": 21 }, "parameters": [ { "docs": { "summary": "- The name you gave to a previous call of `NamedMatch`." }, "name": "name", "type": { "primitive": "string" } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/convenience/ReferenceMatch.ts", "line": 9 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/convenience/ReferenceMatch.ts", "line": 34 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "returns": { "type": { "primitive": "any" } } } ], "name": "ReferenceMatch", "namespace": "matchers.convenience", "symbolId": "src/matchers/convenience/ReferenceMatch:ReferenceMatch" }, "@contract-case/case-definition-dsl.matchers.convenience.StateVariable": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "docs": { "custom": { "public": "true" }, "remarks": "See {@link https://case.contract-testing.io/docs/defining-contracts/state-definitions state} * definitions}\nand {@link https://case.contract-testing.io/docs/reference/state-handlers state handlers} for\nmore details.", "stability": "stable", "summary": "Matches the content of a variable that comes from a state." }, "fqn": "@contract-case/case-definition-dsl.matchers.convenience.StateVariable", "initializer": { "docs": { "remarks": "See\n{@link https://case.contract-testing.io/docs/defining-contracts/state-definitions state definitions}\nand {@link https://case.contract-testing.io/docs/reference/state-handlers state handlers} for\nmore details.", "stability": "stable", "summary": "Matches the content of a variable that comes from a state." }, "locationInModule": { "filename": "src/matchers/convenience/StateVariable.ts", "line": 26 }, "parameters": [ { "docs": { "summary": "- The name of the variable." }, "name": "name", "type": { "primitive": "string" } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/convenience/StateVariable.ts", "line": 12 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/convenience/StateVariable.ts", "line": 39 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "returns": { "type": { "primitive": "any" } } } ], "name": "StateVariable", "namespace": "matchers.convenience", "symbolId": "src/matchers/convenience/StateVariable:StateVariable" }, "@contract-case/case-definition-dsl.matchers.convenience.WithExample": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.CascadingContextMatcher", "docs": { "custom": { "public": "true" }, "remarks": "Useful when you have a complicated\nset of constraints and ContractCase can't figure out what the best example should be.\n\nNote that providing any example will override examples provided further down the tree.", "stability": "stable", "summary": "Adds an example to the provided matcher." }, "fqn": "@contract-case/case-definition-dsl.matchers.convenience.WithExample", "initializer": { "docs": { "remarks": "Useful when you have a complicated\nset of {@link matchers.convenience.And } constraints and ContractCase can't\nfigure out what the best example should be.\n\nNote that providing any example will override examples provided further down the tree.", "stability": "stable", "summary": "Adds an example to the provided matcher." }, "locationInModule": { "filename": "src/matchers/convenience/WithExample.ts", "line": 25 }, "parameters": [ { "docs": { "summary": "- Any matcher to add an example to." }, "name": "matcher", "type": { "primitive": "any" } }, { "docs": { "summary": "- The example to use when stripping the matchers." }, "name": "example", "type": { "primitive": "any" } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/convenience/WithExample.ts", "line": 11 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/convenience/WithExample.ts", "line": 38 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.CascadingContextMatcher", "returns": { "type": { "primitive": "any" } } } ], "name": "WithExample", "namespace": "matchers.convenience", "symbolId": "src/matchers/convenience/WithExample:WithExample" }, "@contract-case/case-definition-dsl.matchers.functions.FunctionArguments": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "docs": { "custom": { "public": "true" }, "remarks": "Usually you don't need to use this matcher directly, the mock creates it for you.", "stability": "stable", "summary": "Matches function arguments, for use with a MockFunctionCall / MockFunctionExecution." }, "fqn": "@contract-case/case-definition-dsl.matchers.functions.FunctionArguments", "initializer": { "docs": { "stability": "stable", "summary": "Matches function arguments, for use with a FunctionExecutionMock." }, "locationInModule": { "filename": "src/matchers/functions/FunctionArguments.ts", "line": 19 }, "parameters": [ { "docs": { "summary": "- an array where each entry will be matched against the arguments." }, "name": "expectedArguments", "type": { "collection": { "elementtype": { "primitive": "any" }, "kind": "array" } } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/functions/FunctionArguments.ts", "line": 12 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/functions/FunctionArguments.ts", "line": 32 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "returns": { "type": { "primitive": "any" } } } ], "name": "FunctionArguments", "namespace": "matchers.functions", "properties": [ { "docs": { "stability": "stable" }, "locationInModule": { "filename": "src/matchers/functions/FunctionArguments.ts", "line": 13 }, "name": "arguments", "type": { "collection": { "elementtype": { "primitive": "any" }, "kind": "array" } } } ], "symbolId": "src/matchers/functions/FunctionArguments:FunctionArguments" }, "@contract-case/case-definition-dsl.matchers.http.BasicAuthHeaderValue": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.strings.StringPrefix", "docs": { "custom": { "public": "true" }, "stability": "stable", "summary": "Matches the value part of a basic auth header with the supplied username and password - useful in conjunction with the StateVariable matcher." }, "fqn": "@contract-case/case-definition-dsl.matchers.http.BasicAuthHeaderValue", "initializer": { "docs": { "stability": "stable" }, "locationInModule": { "filename": "src/matchers/http/BasicAuthHeaderValue.ts", "line": 16 }, "parameters": [ { "docs": { "summary": "- The username for this basic auth header." }, "name": "username", "type": { "primitive": "any" } }, { "docs": { "summary": "- The password for this basic auth password." }, "name": "password", "type": { "primitive": "any" } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/http/BasicAuthHeaderValue.ts", "line": 11 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/http/BasicAuthHeaderValue.ts", "line": 28 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.strings.StringPrefix", "returns": { "type": { "primitive": "any" } } } ], "name": "BasicAuthHeaderValue", "namespace": "matchers.http", "symbolId": "src/matchers/http/BasicAuthHeaderValue:BasicAuthHeaderValue" }, "@contract-case/case-definition-dsl.matchers.http.BearerTokenHeaderValue": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.strings.StringPrefix", "docs": { "custom": { "public": "true" }, "stability": "stable", "summary": "Matches the value part of a OIDC or OAuth header with the supplied token - useful in conjunction with the StateVariable matcher." }, "fqn": "@contract-case/case-definition-dsl.matchers.http.BearerTokenHeaderValue", "initializer": { "docs": { "stability": "stable", "summary": "Matches the value part of a OIDC or OAuth header with the supplied token - useful in conjunction with the StateVariable matcher." }, "locationInModule": { "filename": "src/matchers/http/BearerTokenHeaderValue.ts", "line": 17 }, "parameters": [ { "docs": { "summary": "- A string or string matcher for a Bearer auth token." }, "name": "token", "type": { "primitive": "any" } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/http/BearerTokenHeaderValue.ts", "line": 10 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/http/BearerTokenHeaderValue.ts", "line": 29 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.strings.StringPrefix", "returns": { "type": { "primitive": "any" } } } ], "name": "BearerTokenHeaderValue", "namespace": "matchers.http", "symbolId": "src/matchers/http/BearerTokenHeaderValue:BearerTokenHeaderValue" }, "@contract-case/case-definition-dsl.matchers.http.HttpRequest": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "docs": { "custom": { "public": "true" }, "stability": "stable", "summary": "Matches any HTTP Request with the provided properties." }, "fqn": "@contract-case/case-definition-dsl.matchers.http.HttpRequest", "initializer": { "docs": { "stability": "stable", "summary": "Matches any HTTP Request with the provided properties." }, "locationInModule": { "filename": "src/matchers/http/HttpRequest.ts", "line": 67 }, "parameters": [ { "docs": { "summary": "- An HttpResponseExample that describes the response." }, "name": "requestExample", "type": { "fqn": "@contract-case/case-definition-dsl.matchers.http.HttpRequestExample" } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/http/HttpRequest.ts", "line": 47 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/http/HttpRequest.ts", "line": 94 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "returns": { "type": { "primitive": "any" } } } ], "name": "HttpRequest", "namespace": "matchers.http", "properties": [ { "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/matchers/http/HttpRequest.ts", "line": 51 }, "name": "method", "type": { "primitive": "any" } }, { "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/matchers/http/HttpRequest.ts", "line": 53 }, "name": "path", "type": { "primitive": "any" } }, { "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/matchers/http/HttpRequest.ts", "line": 61 }, "name": "body", "optional": true, "type": { "primitive": "any" } }, { "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/matchers/http/HttpRequest.ts", "line": 59 }, "name": "headers", "optional": true, "type": { "primitive": "any" } }, { "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/matchers/http/HttpRequest.ts", "line": 57 }, "name": "query", "optional": true, "type": { "primitive": "any" } }, { "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/matchers/http/HttpRequest.ts", "line": 55 }, "name": "uniqueName", "optional": true, "type": { "primitive": "string" } } ], "symbolId": "src/matchers/http/HttpRequest:HttpRequest" }, "@contract-case/case-definition-dsl.matchers.http.HttpRequestExample": { "assembly": "@contract-case/case-definition-dsl", "datatype": true, "docs": { "custom": { "public": "true" }, "stability": "stable" }, "fqn": "@contract-case/case-definition-dsl.matchers.http.HttpRequestExample", "kind": "interface", "locationInModule": { "filename": "src/matchers/http/HttpRequest.ts", "line": 8 }, "name": "HttpRequestExample", "namespace": "matchers.http", "properties": [ { "abstract": true, "docs": { "remarks": "Case insensitive. Note that DELETE, GET and HEAD\nrequests should not have bodies - see the HTTP RFCs for details.", "stability": "stable", "summary": "A string or string matcher that matches the method used for this example (eg `\"GET\"` or `\"POST\"`)." }, "immutable": true, "locationInModule": { "filename": "src/matchers/http/HttpRequest.ts", "line": 14 }, "name": "method", "type": { "primitive": "any" } }, { "abstract": true, "docs": { "remarks": "Note that any query parameters must be in the query, not in the path.", "stability": "stable", "summary": "A string or string matcher that matches the path of this example." }, "immutable": true, "locationInModule": { "filename": "src/matchers/http/HttpRequest.ts", "line": 19 }, "name": "path", "type": { "primitive": "any" } }, { "abstract": true, "docs": { "remarks": "If not provided, no body matching is performed.", "stability": "stable", "summary": "A test equivalence matcher or json object that describes the body for this response." }, "immutable": true, "locationInModule": { "filename": "src/matchers/http/HttpRequest.ts", "line": 40 }, "name": "body", "optional": true, "type": { "primitive": "any" } }, { "abstract": true, "docs": { "remarks": "If not provided, no header matching is performed", "stability": "stable", "summary": "A Map of header names and associated test-equivalence matcher values accepted by this example." }, "immutable": true, "locationInModule": { "filename": "src/matchers/http/HttpRequest.ts", "line": 35 }, "name": "headers", "optional": true, "type": { "primitive": "any" } }, { "abstract": true, "docs": { "remarks": "Usually this is a Map of\ntest-equivalence matchers to match the parsed query string, keyed by\nparameter name. Repeated parameters are collated and put in an\narray in this map.", "stability": "stable", "summary": "A test-equivalence matcher for the query." }, "immutable": true, "locationInModule": { "filename": "src/matchers/http/HttpRequest.ts", "line": 30 }, "name": "query", "optional": true, "type": { "primitive": "any" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "What unique name, if any, to give to this request." }, "immutable": true, "locationInModule": { "filename": "src/matchers/http/HttpRequest.ts", "line": 22 }, "name": "uniqueName", "optional": true, "type": { "primitive": "string" } } ], "symbolId": "src/matchers/http/HttpRequest:HttpRequestExample" }, "@contract-case/case-definition-dsl.matchers.http.HttpResponse": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "docs": { "custom": { "public": "true" }, "stability": "stable", "summary": "Matches any HTTP Response with the provided properties." }, "fqn": "@contract-case/case-definition-dsl.matchers.http.HttpResponse", "initializer": { "docs": { "stability": "stable", "summary": "Matches any HTTP Response with the provided properties." }, "locationInModule": { "filename": "src/matchers/http/HttpResponse.ts", "line": 45 }, "parameters": [ { "docs": { "summary": "- An HttpResponseExample that describes the response." }, "name": "responseExample", "type": { "fqn": "@contract-case/case-definition-dsl.matchers.http.HttpResponseExample" } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/http/HttpResponse.ts", "line": 29 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/http/HttpResponse.ts", "line": 67 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "returns": { "type": { "primitive": "any" } } } ], "name": "HttpResponse", "namespace": "matchers.http", "properties": [ { "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/matchers/http/HttpResponse.ts", "line": 35 }, "name": "status", "type": { "primitive": "any" } }, { "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/matchers/http/HttpResponse.ts", "line": 39 }, "name": "body", "optional": true, "type": { "primitive": "any" } }, { "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/matchers/http/HttpResponse.ts", "line": 37 }, "name": "headers", "optional": true, "type": { "primitive": "any" } }, { "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/matchers/http/HttpResponse.ts", "line": 33 }, "name": "uniqueName", "optional": true, "type": { "primitive": "string" } } ], "symbolId": "src/matchers/http/HttpResponse:HttpResponse" }, "@contract-case/case-definition-dsl.matchers.http.HttpResponseExample": { "assembly": "@contract-case/case-definition-dsl", "datatype": true, "docs": { "custom": { "public": "true" }, "stability": "stable" }, "fqn": "@contract-case/case-definition-dsl.matchers.http.HttpResponseExample", "kind": "interface", "locationInModule": { "filename": "src/matchers/http/HttpResponse.ts", "line": 8 }, "name": "HttpResponseExample", "namespace": "matchers.http", "properties": [ { "abstract": true, "docs": { "stability": "stable", "summary": "Any test-equivalence matcher, string, or number for the HTTP status code accepted by this example (Recommended: Use the `HttpStatusCode` matcher)." }, "immutable": true, "locationInModule": { "filename": "src/matchers/http/HttpResponse.ts", "line": 10 }, "name": "status", "type": { "primitive": "any" } }, { "abstract": true, "docs": { "remarks": "If not provided, no body matching is performed.", "stability": "stable", "summary": "A test equivalence matcher or json object that describes the body for this response." }, "immutable": true, "locationInModule": { "filename": "src/matchers/http/HttpResponse.ts", "line": 22 }, "name": "body", "optional": true, "type": { "primitive": "any" } }, { "abstract": true, "docs": { "remarks": "If not provided, no header matching is performed", "stability": "stable", "summary": "A Map of header names and associated test-equivalence matcher values accepted by this example." }, "immutable": true, "locationInModule": { "filename": "src/matchers/http/HttpResponse.ts", "line": 17 }, "name": "headers", "optional": true, "type": { "primitive": "any" } }, { "abstract": true, "docs": { "stability": "stable", "summary": "What unique name, if any, to give to this response." }, "immutable": true, "locationInModule": { "filename": "src/matchers/http/HttpResponse.ts", "line": 13 }, "name": "uniqueName", "optional": true, "type": { "primitive": "string" } } ], "symbolId": "src/matchers/http/HttpResponse:HttpResponseExample" }, "@contract-case/case-definition-dsl.matchers.http.HttpStatusCode": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.AnyMatcherWithExample", "docs": { "custom": { "public": "true" }, "stability": "stable", "summary": "Matches an HTTP status code." }, "fqn": "@contract-case/case-definition-dsl.matchers.http.HttpStatusCode", "initializer": { "docs": { "remarks": "Matching can be relaxed with `X`, eg `\"4XX\"` or `\"5XX\"`. This is useful for error handling.\n\nIf you need to match multiple specific statues, you can provide an array of string or numbers.\nThis behaviour is provided so that you can offer flexibility to the\nimplementation if the code path for multiple status codes is exactly the\nsame. It is not appropriate to use multiple status codes if the code paths\nare intended to be different. For more context, see\n{@link https://case.contract-testing.io/docs/faq#how-do-i-tell-contractcase-that-a-field-is-optional the section on optional values in the documentation}\nfor more details.", "stability": "stable", "summary": "Matches an HTTP status code." }, "locationInModule": { "filename": "src/matchers/http/HttpStatusCode/HttpStatusCode.ts", "line": 38 }, "parameters": [ { "docs": { "summary": "- The http status code to match, expressed as a number or string (eg `200`, `\"404\"` or `\"4XX\"`)." }, "name": "statusCode", "type": { "union": { "types": [ { "primitive": "string" }, { "collection": { "elementtype": { "primitive": "string" }, "kind": "array" } } ] } } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/http/HttpStatusCode/HttpStatusCode.ts", "line": 9 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/http/HttpStatusCode/HttpStatusCode.ts", "line": 53 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.AnyMatcherWithExample", "returns": { "type": { "primitive": "any" } } } ], "name": "HttpStatusCode", "namespace": "matchers.http", "symbolId": "src/matchers/http/HttpStatusCode/HttpStatusCode:HttpStatusCode" }, "@contract-case/case-definition-dsl.matchers.http.UriEncodedString": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "docs": { "custom": { "public": "true" }, "remarks": "During matching, the actual value is decoded with `decodeUriComponent()` and passed to the child matcher.", "stability": "stable", "summary": "Convenience matcher to treat the string as a uri encoded string - useful in `path` segments." }, "fqn": "@contract-case/case-definition-dsl.matchers.http.UriEncodedString", "initializer": { "docs": { "remarks": "During matching, the actual value is decoded with `decodeUriComponent()` and passed to the child matcher.", "stability": "stable", "summary": "Convenience matcher to treat the string as a uri encoded string - useful in `path` segments." }, "locationInModule": { "filename": "src/matchers/http/UriEncodedString.ts", "line": 31 }, "parameters": [ { "docs": { "summary": "- Any string matcher or literal string." }, "name": "child", "type": { "primitive": "any" } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/http/UriEncodedString.ts", "line": 11 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/http/UriEncodedString.ts", "line": 44 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "returns": { "type": { "primitive": "any" } } } ], "name": "UriEncodedString", "namespace": "matchers.http", "symbolId": "src/matchers/http/UriEncodedString:UriEncodedString" }, "@contract-case/case-definition-dsl.matchers.modifiers.ExactlyLike": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.CascadingContextMatcher", "docs": { "custom": { "public": "true" }, "remarks": "Use this to switch\nout of `shapedLike` and back to the default exact matching.", "stability": "stable", "summary": "Everything inside this matcher will be matched exactly, unless overridden with a generic matcher (eg `AnyString` or` ShapedLike`)." }, "fqn": "@contract-case/case-definition-dsl.matchers.modifiers.ExactlyLike", "initializer": { "docs": { "remarks": "Use this to switch\nout of `shapedLike` and back to the default exact matching.", "stability": "stable", "summary": "Everything inside this matcher will be matched exactly, unless overridden with a generic matcher (eg `AnyString` or` ShapedLike`)." }, "locationInModule": { "filename": "src/matchers/modifiers/ExactlyLike.ts", "line": 18 }, "parameters": [ { "docs": { "summary": "- The object, array, primitive or matcher to match exactly." }, "name": "content", "type": { "primitive": "any" } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/modifiers/ExactlyLike.ts", "line": 10 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/modifiers/ExactlyLike.ts", "line": 30 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.CascadingContextMatcher", "returns": { "type": { "primitive": "any" } } } ], "name": "ExactlyLike", "namespace": "matchers.modifiers", "symbolId": "src/matchers/modifiers/ExactlyLike:ExactlyLike" }, "@contract-case/case-definition-dsl.matchers.modifiers.ShapedLike": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.CascadingContextMatcher", "docs": { "custom": { "public": "true" }, "remarks": "Use this to switch out\nof the default `exactlyLike` matching.", "stability": "stable", "summary": "Everything inside this matcher will be matched on the shape of the data (ie, type alone), unless overridden with other matchers." }, "fqn": "@contract-case/case-definition-dsl.matchers.modifiers.ShapedLike", "initializer": { "docs": { "remarks": "Use this to switch out\nof the default `exactlyLike` matching.", "stability": "stable", "summary": "Everything inside this matcher will be matched on the shape of the data (ie, type alone), unless overridden with other matchers." }, "locationInModule": { "filename": "src/matchers/modifiers/ShapedLike.ts", "line": 18 }, "parameters": [ { "docs": { "summary": "- The object, array, primitive or matcher to match the shape against." }, "name": "content", "type": { "primitive": "any" } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/modifiers/ShapedLike.ts", "line": 10 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/modifiers/ShapedLike.ts", "line": 30 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.CascadingContextMatcher", "returns": { "type": { "primitive": "any" } } } ], "name": "ShapedLike", "namespace": "matchers.modifiers", "symbolId": "src/matchers/modifiers/ShapedLike:ShapedLike" }, "@contract-case/case-definition-dsl.matchers.objects.ObjectEachKeyMatches": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "docs": { "custom": { "public": "true" }, "stability": "stable", "summary": "Matches an object where each key matches the provided matcher." }, "fqn": "@contract-case/case-definition-dsl.matchers.objects.ObjectEachKeyMatches", "initializer": { "docs": { "stability": "stable", "summary": "Matches an object where each key matches the provided matcher." }, "locationInModule": { "filename": "src/matchers/objects/ObjectEachKeyMatches.ts", "line": 20 }, "parameters": [ { "docs": { "summary": "- The matcher that all keys must pass." }, "name": "matcher", "type": { "primitive": "any" } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/objects/ObjectEachKeyMatches.ts", "line": 9 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/objects/ObjectEachKeyMatches.ts", "line": 34 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "returns": { "type": { "primitive": "any" } } } ], "name": "ObjectEachKeyMatches", "namespace": "matchers.objects", "symbolId": "src/matchers/objects/ObjectEachKeyMatches:ObjectEachKeyMatches" }, "@contract-case/case-definition-dsl.matchers.objects.ObjectEachValueMatches": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "docs": { "custom": { "public": "true" }, "stability": "stable", "summary": "Matches an object where each value matches the provided matcher." }, "fqn": "@contract-case/case-definition-dsl.matchers.objects.ObjectEachValueMatches", "initializer": { "docs": { "stability": "stable", "summary": "Matches an object where each value matches the provided matcher." }, "locationInModule": { "filename": "src/matchers/objects/ObjectEachValueMatches.ts", "line": 20 }, "parameters": [ { "docs": { "summary": "- The matcher that all values must pass." }, "name": "matcher", "type": { "primitive": "any" } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/objects/ObjectEachValueMatches.ts", "line": 9 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/objects/ObjectEachValueMatches.ts", "line": 34 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "returns": { "type": { "primitive": "any" } } } ], "name": "ObjectEachValueMatches", "namespace": "matchers.objects", "symbolId": "src/matchers/objects/ObjectEachValueMatches:ObjectEachValueMatches" }, "@contract-case/case-definition-dsl.matchers.primitives.AnyBoolean": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.AnyMatcherWithExample", "docs": { "custom": { "public": "true" }, "stability": "stable", "summary": "Matches any Boolean." }, "fqn": "@contract-case/case-definition-dsl.matchers.primitives.AnyBoolean", "initializer": { "docs": { "stability": "stable", "summary": "Matches any Boolean." }, "locationInModule": { "filename": "src/matchers/primitives/AnyBoolean.ts", "line": 25 }, "parameters": [ { "docs": { "summary": "- An example boolean." }, "name": "example", "type": { "primitive": "boolean" } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/primitives/AnyBoolean.ts", "line": 8 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/primitives/AnyBoolean.ts", "line": 38 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.AnyMatcherWithExample", "returns": { "type": { "primitive": "any" } } } ], "name": "AnyBoolean", "namespace": "matchers.primitives", "symbolId": "src/matchers/primitives/AnyBoolean:AnyBoolean" }, "@contract-case/case-definition-dsl.matchers.primitives.AnyInteger": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.AnyMatcherWithExample", "docs": { "custom": { "public": "true" }, "stability": "stable", "summary": "Matches any whole integer number." }, "fqn": "@contract-case/case-definition-dsl.matchers.primitives.AnyInteger", "initializer": { "docs": { "stability": "stable", "summary": "Matches any whole integer number." }, "locationInModule": { "filename": "src/matchers/primitives/AnyInteger.ts", "line": 25 }, "parameters": [ { "docs": { "summary": "- Any floating point number, not infinity, not NaN." }, "name": "example", "type": { "primitive": "number" } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/primitives/AnyInteger.ts", "line": 8 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/primitives/AnyInteger.ts", "line": 37 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.AnyMatcherWithExample", "returns": { "type": { "primitive": "any" } } } ], "name": "AnyInteger", "namespace": "matchers.primitives", "symbolId": "src/matchers/primitives/AnyInteger:AnyInteger" }, "@contract-case/case-definition-dsl.matchers.primitives.AnyNull": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.AnyMatcherWithExample", "docs": { "custom": { "public": "true" }, "stability": "stable", "summary": "Matches `null` (useful for languages like Java where `body: null` means no body, but you want to match a eg a json document that has the body `\"null\"`)." }, "fqn": "@contract-case/case-definition-dsl.matchers.primitives.AnyNull", "initializer": { "docs": { "stability": "stable", "summary": "Matches `null` (useful for languages like Java where `body: null` means no body, but you want to match a eg a json document that has the body `\"null\"`)." }, "locationInModule": { "filename": "src/matchers/primitives/AnyNull.ts", "line": 26 } }, "kind": "class", "locationInModule": { "filename": "src/matchers/primitives/AnyNull.ts", "line": 9 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/primitives/AnyNull.ts", "line": 38 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.AnyMatcherWithExample", "returns": { "type": { "primitive": "any" } } } ], "name": "AnyNull", "namespace": "matchers.primitives", "symbolId": "src/matchers/primitives/AnyNull:AnyNull" }, "@contract-case/case-definition-dsl.matchers.primitives.AnyNumber": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.AnyMatcherWithExample", "docs": { "custom": { "public": "true" }, "stability": "stable", "summary": "Matches a number following [RFC 8259 JSON](https://www.rfc-editor.org/rfc/rfc8259)." }, "fqn": "@contract-case/case-definition-dsl.matchers.primitives.AnyNumber", "initializer": { "docs": { "stability": "stable", "summary": "Matches a number following {@link https://www.rfc-editor.org/rfc/rfc8259 RFC 8259 JSON}." }, "locationInModule": { "filename": "src/matchers/primitives/AnyNumber.ts", "line": 26 }, "parameters": [ { "docs": { "summary": "- An example number." }, "name": "example", "type": { "primitive": "number" } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/primitives/AnyNumber.ts", "line": 8 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/primitives/AnyNumber.ts", "line": 38 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.AnyMatcherWithExample", "returns": { "type": { "primitive": "any" } } } ], "name": "AnyNumber", "namespace": "matchers.primitives", "symbolId": "src/matchers/primitives/AnyNumber:AnyNumber" }, "@contract-case/case-definition-dsl.matchers.strings.AnyString": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.AnyMatcherWithExample", "docs": { "custom": { "public": "true" }, "stability": "stable", "summary": "Matches any string." }, "fqn": "@contract-case/case-definition-dsl.matchers.strings.AnyString", "initializer": { "docs": { "stability": "stable", "summary": "Matches any string." }, "locationInModule": { "filename": "src/matchers/strings/AnyString.ts", "line": 25 }, "parameters": [ { "docs": { "summary": "- An example string." }, "name": "example", "type": { "primitive": "string" } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/strings/AnyString.ts", "line": 8 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/strings/AnyString.ts", "line": 37 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.AnyMatcherWithExample", "returns": { "type": { "primitive": "any" } } } ], "name": "AnyString", "namespace": "matchers.strings", "symbolId": "src/matchers/strings/AnyString:AnyString" }, "@contract-case/case-definition-dsl.matchers.strings.Base64Encoded": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "docs": { "custom": { "public": "true" }, "remarks": "WARNING: Since many strings are accidentally decodable as base64, this matcher is\nbest combined with a more restrictive string matcher (eg `StringifiedJson`).", "stability": "stable", "summary": "Transformation matcher that matches a base64 encoded version of the given string or string matcher." }, "fqn": "@contract-case/case-definition-dsl.matchers.strings.Base64Encoded", "initializer": { "docs": { "remarks": "WARNING: Since many strings are accidentally decodable as base64, this matcher is\nbest combined with a more restrictive string matcher (eg `StringifiedJson`).", "stability": "stable", "summary": "Transformation matcher that matches a base64 encoded version of the given string or string matcher." }, "locationInModule": { "filename": "src/matchers/strings/Base64Encoded.ts", "line": 30 }, "parameters": [ { "docs": { "summary": "- The string or string matcher that would match the decoded string." }, "name": "child", "type": { "primitive": "any" } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/strings/Base64Encoded.ts", "line": 12 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/strings/Base64Encoded.ts", "line": 43 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "returns": { "type": { "primitive": "any" } } } ], "name": "Base64Encoded", "namespace": "matchers.strings", "symbolId": "src/matchers/strings/Base64Encoded:Base64Encoded" }, "@contract-case/case-definition-dsl.matchers.strings.StringContaining": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.AnyMatcherWithExample", "docs": { "custom": { "public": "true" }, "stability": "stable", "summary": "Matches any string that contains the given substring." }, "fqn": "@contract-case/case-definition-dsl.matchers.strings.StringContaining", "initializer": { "docs": { "stability": "stable", "summary": "Matches any string that contains the given substring." }, "locationInModule": { "filename": "src/matchers/strings/StringContaining.ts", "line": 26 }, "parameters": [ { "docs": { "summary": "- The substring that the matcher must contain." }, "name": "substring", "type": { "primitive": "string" } }, { "docs": { "summary": "- An example string that passes this matcher." }, "name": "example", "type": { "primitive": "string" } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/strings/StringContaining.ts", "line": 8 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/strings/StringContaining.ts", "line": 39 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.AnyMatcherWithExample", "returns": { "type": { "primitive": "any" } } } ], "name": "StringContaining", "namespace": "matchers.strings", "symbolId": "src/matchers/strings/StringContaining:StringContaining" }, "@contract-case/case-definition-dsl.matchers.strings.StringPrefix": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "docs": { "custom": { "public": "true" }, "remarks": "At match time, the actual string is checked for the constant prefix, and then\nthe rest of the string is passed to the suffix matcher..\n\nThe suffix matcher must be expecting a string.\n\nSee also {@link matchers.strings.StringSuffix StringSuffix}", "stability": "stable", "summary": "Matches any string that begins with the given constant string prefix, and ends with a matchable suffix." }, "fqn": "@contract-case/case-definition-dsl.matchers.strings.StringPrefix", "initializer": { "docs": { "remarks": "At match time, the actual string is checked for the constant prefix, and then\nthe rest of the string is passed to the suffix matcher..\n\nThe suffix matcher must be expecting a string.\n\nSee also {@link matchers.strings.StringSuffix StringSuffix}", "stability": "stable", "summary": "Matches any string that begins with the given constant string prefix, and ends with a matchable suffix." }, "locationInModule": { "filename": "src/matchers/strings/StringPrefix.ts", "line": 47 }, "parameters": [ { "docs": { "remarks": "Must be a string and not a matcher", "summary": "- The prefix string." }, "name": "prefix", "type": { "primitive": "string" } }, { "docs": { "summary": "- A string or matcher to match against the suffix." }, "name": "suffix", "type": { "primitive": "any" } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/strings/StringPrefix.ts", "line": 20 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/strings/StringPrefix.ts", "line": 64 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "returns": { "type": { "primitive": "any" } } } ], "name": "StringPrefix", "namespace": "matchers.strings", "symbolId": "src/matchers/strings/StringPrefix:StringPrefix" }, "@contract-case/case-definition-dsl.matchers.strings.StringSuffix": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "docs": { "custom": { "public": "true" }, "remarks": "At match time, the actual string is checked for the expected constant suffix,\nand then the beginning of the string is passed to the prefix matcher.\n\nThe prefix matcher must be expecting a string.\n\nSee also {@link matchers.strings.StringPrefix StringPrefix}", "stability": "stable", "summary": "Matches any string that begins with a matchable prefix, and ends with a constant suffix." }, "fqn": "@contract-case/case-definition-dsl.matchers.strings.StringSuffix", "initializer": { "docs": { "stability": "stable" }, "locationInModule": { "filename": "src/matchers/strings/StringSuffix.ts", "line": 35 }, "parameters": [ { "docs": { "remarks": "If you don't mind what the prefix is, pass null / undefined", "summary": "- A string or matcher to match against the prefix." }, "name": "prefix", "type": { "primitive": "any" } }, { "docs": { "remarks": "Must be a string and not a matcher", "summary": "- The suffix for the matched string." }, "name": "suffix", "type": { "primitive": "string" } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/strings/StringSuffix.ts", "line": 18 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/strings/StringSuffix.ts", "line": 52 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "returns": { "type": { "primitive": "any" } } } ], "name": "StringSuffix", "namespace": "matchers.strings", "symbolId": "src/matchers/strings/StringSuffix:StringSuffix" }, "@contract-case/case-definition-dsl.matchers.strings.StringifiedJson": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "docs": { "custom": { "public": "true" }, "remarks": "For example, if the actual data is the string:\n\n```ts\n\"{\\\"foo\\\":2}\"\n```\n\nthen you could match it with:\n\n```ts\nStringifiedJson({\n \"foo\": 2\n})\n```\n\nor\n\n```ts\nStringifiedJson({\n \"foo\": AnyNumber(2)\n})\n```", "stability": "stable", "summary": "Transformation matcher that matches a JSON.stringify()ed version of the given object." }, "fqn": "@contract-case/case-definition-dsl.matchers.strings.StringifiedJson", "initializer": { "docs": { "remarks": "For example, if the actual data is the string:\n\n```ts\n\"{\\\"foo\\\":2}\"\n```\n\nthen you could match it with:\n\n```ts\nStringifiedJson({\n \"foo\": 2\n})\n```\n\nor\n\n```ts\nStringifiedJson({\n \"foo\": AnyNumber(2)\n})\n```", "stability": "stable", "summary": "Transformation matcher that matches a JSON.stringify()ed version of the given object." }, "locationInModule": { "filename": "src/matchers/strings/StringifiedJson.ts", "line": 69 }, "parameters": [ { "docs": { "summary": "- The object or matcher that matches the decoded." }, "name": "child", "type": { "primitive": "any" } } ] }, "kind": "class", "locationInModule": { "filename": "src/matchers/strings/StringifiedJson.ts", "line": 32 }, "methods": [ { "docs": { "custom": { "privateRemarks": "This comment and the implementation is boilerplate on all matchers to avoid\noutputting duplicate unimportant documentation on all matcher classes of\nthe docs. Only modify this comment or the implementation via search and replace." }, "stability": "stable", "summary": "For non-TypeScript implementations (see `AnyMatcher.toJSON`)." }, "locationInModule": { "filename": "src/matchers/strings/StringifiedJson.ts", "line": 82 }, "name": "toJSON", "overrides": "@contract-case/case-definition-dsl.matchers.base.AnyMatcher", "returns": { "type": { "primitive": "any" } } } ], "name": "StringifiedJson", "namespace": "matchers.strings", "symbolId": "src/matchers/strings/StringifiedJson:StringifiedJson" }, "@contract-case/case-definition-dsl.states.AnyState": { "abstract": true, "assembly": "@contract-case/case-definition-dsl", "docs": { "custom": { "public": "true" }, "remarks": "You don't need to read the documentation for this class unless you are working\non a wrapper for ContractCase.", "stability": "stable", "summary": "The base class for all ContractCase State Descriptors. You shouldn't need to extend this." }, "fqn": "@contract-case/case-definition-dsl.states.AnyState", "initializer": { "docs": { "remarks": "You don't need to read the documentation for this class unless you are working\non a wrapper for ContractCase.", "stability": "stable", "summary": "The base class for all ContractCase State Descriptors. You shouldn't need to extend this." }, "locationInModule": { "filename": "src/states/AnyState.ts", "line": 28 }, "parameters": [ { "name": "stateType", "type": { "primitive": "string" } }, { "docs": { "remarks": "This must\nmatch one of the state handlers provided in the configuration during the\nexample run.", "summary": "- The name of the state used by this example." }, "name": "stateName", "type": { "primitive": "string" } } ] }, "kind": "class", "locationInModule": { "filename": "src/states/AnyState.ts", "line": 10 }, "methods": [ { "docs": { "remarks": "You don't need to call this\nmethod, unless working on a wrapper for ContractCase.\n\nThis method returns the entire state descriptor as a JSON string, as a convenience\nso that wrapper libraries don't need to figure out how to walk a tree of example objects.", "returns": "A JSON string representation of this state.", "stability": "stable", "summary": "You shouldn't need to override this method." }, "locationInModule": { "filename": "src/states/AnyState.ts", "line": 67 }, "name": "stringify", "returns": { "type": { "primitive": "string" } } }, { "docs": { "remarks": "It exists because the ContractCase matcher format is not legal in all languages that ContractCase supports.\n\nIt isn't called by any implementation directly, it's used on the javascript side by `JSON.stringify()`.\n\nCalling it from a wrapper library will return unhelpful results, as JSii can't map all objects that it returns.\n\nWARNING: Do not return a string from this method. You must instead return\nan object that can be serialised to JSON following the matcher format\ndescribed in [Extending ContractCase](https://case.contract-testing.io/docs/reference/plugin-framework).", "returns": "An object in the matcher format described [in the Extending ContractCase documentation](https://case.contract-testing.io/docs/reference/plugin-framework).", "stability": "stable", "summary": "You shouldn't need to override or call this method." }, "locationInModule": { "filename": "src/states/AnyState.ts", "line": 48 }, "name": "toJSON", "returns": { "type": { "primitive": "any" } } } ], "name": "AnyState", "namespace": "states", "properties": [ { "docs": { "stability": "stable", "summary": "The name of this state, used to determine which state handler to run." }, "immutable": true, "locationInModule": { "filename": "src/states/AnyState.ts", "line": 15 }, "name": "stateName", "type": { "primitive": "string" } } ], "symbolId": "src/states/AnyState:AnyState" }, "@contract-case/case-definition-dsl.states.InState": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.states.AnyState", "docs": { "custom": { "public": "true" }, "stability": "stable", "summary": "A state descriptor for configuring an example that needs to run in a particular named state." }, "fqn": "@contract-case/case-definition-dsl.states.InState", "initializer": { "docs": { "stability": "stable", "summary": "A state descriptor for configuring an example that needs to run in a particular named state." }, "locationInModule": { "filename": "src/states/InState.ts", "line": 22 }, "parameters": [ { "docs": { "remarks": "This must\nmatch one of the state handlers provided in the configuration during the\nexample run.", "summary": "- The name of the state used by this example." }, "name": "stateName", "type": { "primitive": "string" } } ] }, "kind": "class", "locationInModule": { "filename": "src/states/InState.ts", "line": 10 }, "name": "InState", "namespace": "states", "symbolId": "src/states/InState:InState" }, "@contract-case/case-definition-dsl.states.InStateWithVariables": { "assembly": "@contract-case/case-definition-dsl", "base": "@contract-case/case-definition-dsl.states.AnyState", "docs": { "custom": { "public": "true" }, "stability": "stable", "summary": "A state descriptor for configuring an example that needs to run in a particular named state, and with variables provided by the framework." }, "fqn": "@contract-case/case-definition-dsl.states.InStateWithVariables", "initializer": { "docs": { "stability": "stable", "summary": "A state descriptor for configuring an example that needs to run in a particular named state, and with variables provided by the framework." }, "locationInModule": { "filename": "src/states/InStateWithVariables.ts", "line": 27 }, "parameters": [ { "docs": { "remarks": "This must\nmatch one of the state handlers provided in the configuration during the\nexample run.", "summary": "- The name of the state used by this example." }, "name": "stateName", "type": { "primitive": "string" } }, { "docs": { "summary": "- A object where the keys are variable names, mapped to any data or matcher objects." }, "name": "variables", "type": { "collection": { "elementtype": { "primitive": "any" }, "kind": "map" } } } ] }, "kind": "class", "locationInModule": { "filename": "src/states/InStateWithVariables.ts", "line": 11 }, "name": "InStateWithVariables", "namespace": "states", "properties": [ { "docs": { "stability": "stable" }, "immutable": true, "locationInModule": { "filename": "src/states/InStateWithVariables.ts", "line": 15 }, "name": "variables", "type": { "collection": { "elementtype": { "primitive": "any" }, "kind": "map" } } } ], "symbolId": "src/states/InStateWithVariables:InStateWithVariables" } }, "version": "0.29.1", "fingerprint": "8xqLpSi1FHir0wNt4SDJ9SB1LpSw+Y+QhCpt6mjJ4gM=" }