ensure(validationDatum1[, ...validationDatumN[, options]])

Provides a complete cumulated input validation for an API endpoint. Validates multiple input arguments and consolidates eventual errors into one.

Arguments

validationDatum1[, ...validationDatumN]

For each argument to be validated a validationDatum of following stucture should be defined:

javascript [argumentName, inputValue, ensureFunction, (options = {})];

[options]

Eventual options be passed to underlying ensureX functions. If custom error constructor is passed with an Error option, then cumulated error is created with this constructor.

Usage example

```javascript const ensure = require("type/ensure"); const ensureString = require("type/string/ensure"); const ensureNaturalNumber = require("type/natural-number/ensure");

const resolveRepositoryIssue = (repoName, issueNumber) => { // Validate input [repoName, issueNumber] = ensure( ["repoName", repoName, ensureString], ["issueNumber", issueNumber, ensureNaturalNumber], { Error: UserError } ); // ... logic }; ```