validation.ts ×1
Frontier kind: Code frontier
unlabeled · c_cb6a2c3c25d5
40 tests · 2319 LOC · 18 files · introduces 0 tests · 1 LOC · 1 file
Introduces — evidence that enters the hierarchy at this concept
Code
1 range 1 lines · 1 files
Tests
0 tests
Contains — complete concept membership
Neighbourhood graph
The orange circle is the focus. Violet and green circles are every ancestor and descendant, broader and narrower, at any distance; blue squares and pink diamonds are the introduced files and exact introduced tests of every visible concept, not only the focus's. Arrows point from broader to narrower concepts and bridge only concepts omitted from this view. Undirected links show source or test introduction. Concept and file size follows LOC; exact test nodes use test-count units.
Focus concept
Ancestors (broader)
Descendants (narrower)
Introduced files
Introduced tests
Introduced files, introduced tests, and structurally relevant concept specialization
In the embedded map, ordinary wheel input scrolls the page; use the visible controls to zoom and drag to pan. Open the full-screen map for canvas navigation: wheel pans, Ctrl/Command plus wheel zooms, and arrow keys pan when this region is focused. On touch screens, open the full-screen map to pan or pinch. If JavaScript or WebGL is unavailable, use the native relationship evidence on this page.
Graph controls are ready.
Interactive rendering requires JavaScript and WebGL. Use the native relationship evidence on this page while the interactive map is unavailable.
JavaScript is disabled; use the native relationship evidence on this page to explore the same evidence.
Native relationship evidence
Every exact file and test below is linked only from the concept that introduces it.
validation.ts ×1 — Focused concept
Introduced files:
command.mjs|title=Command global parsing hints coerce should not be applied multiple times for nested commands|occurrence=1 — Ancestor (broader)
Introduced tests:
yargs.mjs|title=yargs dsl tests positional allows an implied argument to be specified|occurrence=1 — Ancestor (broader)
Introduced tests:
yargs.mjs|title=yargs dsl tests positional allows a choices array to be specified|occurrence=1 — Ancestor (broader)
Introduced tests:
yargs.mjs|title=yargs dsl tests positional allows a conflicting argument to be specified|occurrence=1 — Ancestor (broader)
Introduced tests:
yargs.mjs|title=yargs dsl tests positional allows a coerce method to be provided|occurrence=1 — Ancestor (broader)
Introduced tests:
yargs.mjs|title=yargs dsl tests positional populates array with appropriate arguments|occurrence=1 — Ancestor (broader)
Introduced tests:
yargs.mjs|title=yargs dsl tests parse can be called multiple times with the same behavior|occurrence=1 — Ancestor (broader)
Introduced tests:
yargs.mjs|title=yargs dsl tests positional allows normalize to be specified|occurrence=1 — Ancestor (broader)
Introduced tests:
command.mjs|title=Command async builder allows positionals to be configured asynchronously|occurrence=1 — Ancestor (broader)
Introduced tests:
yargs.mjs|title=yargs dsl tests positional does not parse large scientific notation values, when type string|occurrence=1 — Ancestor (broader)
Introduced tests:
middleware.mjs|title=middleware applyBeforeValidation=true resolves async middleware, before applying validation|occurrence=1 — Ancestor (broader)
Introduced tests:
middleware.mjs|title=middleware applyBeforeValidation=true applies aliases before middleware is called, for global middleware|occurrence=1 — Ancestor (broader)
Introduced tests:
middleware.mjs|title=middleware applyBeforeValidation=true runs before validation|occurrence=1 — Ancestor (broader)
Introduced tests:
validation.mjs|title=validation tests choices succeeds when demandOption is true and valid choice is provided|occurrence=1 — Ancestor (broader)
Introduced tests:
middleware.mjs|title=middleware applyBeforeValidation=true applies aliases before middleware is called, when middleware is added in builder|occurrence=1 — Ancestor (broader)
Introduced tests:
usage.mjs|title=usage tests demand options using .demand() no failure occurs if the required arguments and the required number of commands are provided|occurrence=1 — Ancestor (broader)
Introduced tests:
middleware.mjs|title=middleware applyBeforeValidation=true runs before validation, when middleware is added in builder|occurrence=1 — Ancestor (broader)
Introduced tests:
usage.mjs|title=usage tests showHelpOnFail should handle being chained both globally and on a command chained on globally|occurrence=1, usage.mjs|title=usage tests showHelpOnFail should handle being chained both globally and on a command chained on command and globally (priority given to command message)|occurrence=1 — Ancestor (broader)
Introduced tests:
usage.mjs|title=usage tests showHelpOnFail should handle being chained both globally and on a command chained on to command|occurrence=1 — Ancestor (broader)
Introduced tests:
yargs-factory.ts ×1 — Ancestor (broader)
Introduced files:
Introduced tests:
middleware.mjs|title=middleware async $0 applies middleware before performing validation, with explicit $0|occurrence=1 — Ancestor (broader)
Introduced tests:
yargs-factory.ts ×1 — Ancestor (broader)
Introduced files:
Introduced tests:
usage.mjs|title=usage tests demand options using .demand() missing argument message given if one command, but an argument not on the list is provided|occurrence=1 — Ancestor (broader)
Introduced tests:
usage.mjs|title=usage tests demand options using .demand() missing command message if all the required arguments exist, but not enough commands are provided|occurrence=2 — Ancestor (broader)
Introduced tests:
usage.mjs|title=usage tests demand options using .demand() missing command message if all the required arguments exist, but not enough commands are provided|occurrence=1 — Ancestor (broader)
Introduced tests:
usage.mjs|title=usage tests demand options using .demand() using .require() should show an error along with the missing arguments on demand fail|occurrence=1 — Ancestor (broader)
Introduced tests:
usage.mjs|title=usage tests demand options using .demand() should show an error along with the missing arguments on demand fail|occurrence=1 — Ancestor (broader)
Introduced tests:
yargs-factory.ts ×1 — Ancestor (broader)
Introduced files:
usage.mjs|title=usage tests showHelpOnFail should display user supplied message|occurrence=1 — Ancestor (broader)
Introduced tests:
validation.mjs|title=validation tests defaults should not fail when demanded options with defaults are missing|occurrence=1 — Ancestor (broader)
Introduced tests:
usage.mjs|title=usage tests with strict() option set with hyphens in options accepts mixed options with values|occurrence=1 — Ancestor (broader)
Introduced tests:
middleware.mjs|title=middleware synchronous $0 applies middleware before performing validation, with implicit $0|occurrence=1 — Ancestor (broader)
Introduced tests:
middleware.mjs|title=middleware async $0 applies middleware before performing validation, with implied $0|occurrence=1 — Ancestor (broader)
Introduced tests:
usage.mjs|title=usage tests demand option with boolean flag should not report missing required arguments when given an alias|occurrence=1 — Ancestor (broader)
Introduced tests:
usage.mjs|title=usage tests exitProcess should not call process.exit on error if disabled|occurrence=1 — Ancestor (broader)
Introduced tests:
validation.mjs|title=validation tests demand fails when a required argument is missing|occurrence=1 — Ancestor (broader)
Introduced tests:
max demanded count shouldn't interpret the second argument as a max when it is an array|occurrence=1 — Ancestor (broader)
Introduced tests:
validation.mjs|title=validation tests demand fails when required arguments are present, but a command is missing|occurrence=1 — Ancestor (broader)
Introduced tests:
validation.mjs|title=validation tests demandOption allows an array of options to be demanded|occurrence=1 — Ancestor (broader)
Introduced tests:
usage.mjs|title=usage tests demand options should return valid values when demand passes|occurrence=1 — Ancestor (broader)
Introduced tests:
yargs-factory.ts ×1 — Ancestor (broader)
Introduced files:
validation.ts ×4 — Descendant (narrower)
Introduced files:
validation.ts ×3 — Descendant (narrower)
Introduced files:
yargs-factory.ts ×2 — Descendant (narrower)
Introduced files:
validation.ts ×4 — Descendant (narrower)
Introduced files:
yargs-factory.ts ×2 — Descendant (narrower)
Introduced files:
maybe-async-result.ts ×4 — Descendant (narrower)
Introduced files:
yargs-factory.ts ×2 — Descendant (narrower)
Introduced files:
yargs-factory.ts ×3 — Descendant (narrower)
Introduced files:
usage.ts ×2 — Descendant (narrower)
Introduced files:
yargs-factory.ts ×1 — Descendant (narrower)
Introduced files:
middleware.ts ×3 — Descendant (narrower)
Introduced files:
yargs-factory.ts ×3 — Descendant (narrower)
Introduced files:
yargs-factory.ts ×2 — Descendant (narrower)
Introduced files:
yargs-factory.ts ×5 — Descendant (narrower)
Introduced files:
yargs-factory.ts ×5 — Descendant (narrower)
Introduced files:
yargs-factory.ts ×1 — Descendant (narrower)
Introduced files:
yargs-factory.ts ×1 — Descendant (narrower)
Introduced files:
yargs-factory.ts ×2 — Descendant (narrower)
Introduced files:
usage.ts ×1 — Descendant (narrower)
Introduced files:
yargs-factory.ts ×9 — Descendant (narrower)
Introduced files:
yargs-factory.ts ×1 — Descendant (narrower)
Introduced files:
yargs-factory.ts ×1 — Descendant (narrower)
Introduced files:
yargs-factory.ts ×1 — Descendant (narrower)
Introduced files:
yargs-factory.ts ×1 — Descendant (narrower)
Introduced files:
yargs-factory.ts ×1 — Descendant (narrower)
Introduced files:
yargs-factory.ts ×1 — Descendant (narrower)
Introduced files:
yargs-factory.ts ×2 — Descendant (narrower)
Introduced files:
command.ts ×1 — Descendant (narrower)
Introduced files:
yargs-factory.ts ×1 — Descendant (narrower)
Introduced files:
yargs-factory.ts ×1 — Descendant (narrower)
Introduced files:
yargs-factory.ts ×1 — Descendant (narrower)
Introduced files:
yargs-factory.ts ×1 — Descendant (narrower)
Introduced files:
yargs-factory.ts ×35 — Descendant (narrower)
Introduced files:
yargs-factory.ts ×124 — Descendant (narrower)
Introduced files:
Introduced tests:
argsert.ts ×1 — Descendant (narrower)
Introduced files:
Introduced tests:
argsert.mjs|title=Argsert allows for any type if * is provided|occurrence=1, argsert.mjs|title=Argsert should ignore trailing undefined values|occurrence=1 — Descendant (narrower)
Introduced tests:
argsert.ts ×1 — Descendant (narrower)
Introduced files:
argsert.ts ×1 — Descendant (narrower)
Introduced files:
argsert.ts ×1 — Descendant (narrower)
Introduced files:
argsert.ts ×1 — Descendant (narrower)
Introduced files:
argsert.ts ×1 — Descendant (narrower)
Introduced files:
Introduced tests:
argsert.ts ×2 — Descendant (narrower)
Introduced files:
argsert.ts ×3 — Descendant (narrower)
Introduced files:
parse-command.ts ×1 — Descendant (narrower)
Introduced files:
parse-command.ts ×1 — Descendant (narrower)
Introduced files:
parse-command.ts ×3 — Descendant (narrower)
Introduced files:
process-argv.ts ×1 — Descendant (narrower)
Introduced files:
process-argv.ts ×3 — Descendant (narrower)
Introduced files:
argsert.ts ×1 — Descendant (narrower)
Introduced files:
apply-extends.ts ×4 — Descendant (narrower)
Introduced files:
Introduced tests:
argsert.ts ×4 — Descendant (narrower)
Introduced files:
obj-filter.ts ×2 — Descendant (narrower)
Introduced files:
argsert.ts ×3 — Descendant (narrower)
Introduced files:
common-types.ts ×4 — Descendant (narrower)
Introduced files:
process-argv.ts ×5 — Descendant (narrower)
Introduced files:
Introduced tests:
is-promise.ts ×2 — Descendant (narrower)
Introduced files:
Introduced tests:
parse-command.ts ×1 — Descendant (narrower)
Introduced files:
Introduced tests:
parse-command.ts ×2 — Descendant (narrower)
Introduced files:
yerror.ts ×2 — Descendant (narrower)
Introduced files:
is-promise.ts ×1 — Descendant (narrower)
Introduced files:
Introduced tests
Every collected test enters the hierarchy at exactly one concept.
No tests are introduced at this concept. Its intent tests are introduced by other concepts.
Introduced code
Every collected source range enters the hierarchy at exactly one concept.
1 file ranked by introduced lines: 1 introduced LOC across 1 ranges.
Expand a file to inspect source; the > gutter marks introduced lines.
lib/validation.ts 1 introduced LOC · 1 range
Open complete file
110
if (
111
! Object . prototype . hasOwnProperty . call ( argv , key ) ||
113
) {
114
missing = missing || {};