Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork1
syntax-tree/unist-util-assert
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
unist utility to assert trees.
- What is this?
- When should I use this?
- Install
- Use
- API
- Extensions
- Types
- Compatibility
- Related
- Contribute
- License
This package is a tiny utility that helps you deal with nodes.
This utility is typically useful when you expect certain nodes in your APIsand want to make sure they’re valid and as expected.
Different utilities,mdast-util-assert,hast-util-assert, andnlcst-test,do the same but for mdast, hast, and nlcst nodes, respectively.
This package isESM only.In Node.js (version 16+), install withnpm:
npm install unist-util-assert
In Deno withesm.sh:
import{assert}from'https://esm.sh/unist-util-assert@4'
In browsers withesm.sh:
<scripttype="module">import{assert}from'https://esm.sh/unist-util-assert@4?bundle'</script>
import{_void,assert,parent}from'unist-util-assert'assert({type:'root',children:[]})assert({type:'break'})assert({type:'element',properties:{},children:[]})// All OK.assert({children:[]})// AssertionError: node should have a type: `{ children: [] }`parent({type:'break'})// AssertionError: parent should have `children`: `{ type: 'break' }`assert({type:'element',properties:function(){}})// AssertionError: non-specced property `properties` should be JSON: `{ type: 'element', properties: [Function] }`_void({type:'text',value:'Alpha'})// AssertionError: void should not have `value`: `{ type: 'text', value: 'Alpha' }`assert({type:'paragraph',children:['foo']})// AssertionError: node should be an object: `'foo'` in `{ type: 'paragraph', children: [ 'foo' ] }`
This package exports the identifiers_void,assert,literal,parent, andwrap.There is no default export.
Assert thattree is a valid unistNode.
Iftree is a parent, all children will be asserted too.
tree(unknown)— thing to assertparent(Parent, optional)— optional, valid parent
Nothing.
Whentree (or its descendants) is not a node.
Assert thattree is a valid unistParent.
All children will be asserted too.
tree(unknown)— thing to assertparent(Parent, optional)— optional, valid parent
Nothing.
Whentree is not a parent or its descendants are not nodes.
Assert thatnode is a valid unistLiteral.
tree(unknown)— thing to assertparent(Parent, optional)— optional, valid parent
Nothing.
Whennode is not a literal.
Assert thatnode is a valid void node.
tree(unknown)— thing to assertparent(Parent, optional)— optional, valid parent
Nothing.
Whennode is not a node, a parent, or a literal.
Wrapper that adds the current node (and parent, if available) to errormessages.
fn((node?: any, parent?: Parent | null | undefined) => asserts node is Node))— custom assertion
Wrappedfn.
Assertion error fromnode:assert (TypeScript type).
typeAssertionError=import('node:assert').AssertionError
This module can be used as a base to test subsets of unist (for an example, seemdast-util-assert).All functions that are exposed from such a module, and functions used internallyto test children, should be wrapped inwrap, which adds an inspectable stringof the respective node, and its parent when available, to the exposed errormessage.
This package is fully typed withTypeScript.It exports the additional typeAssertionError.
Projects maintained by the unified collective are compatible with maintainedversions of Node.js.
When we cut a new major release, we drop support for unmaintained versions ofNode.This means we try to keep the current release line,unist-util-assert@^4,compatible with Node.js 16.
mdast-util-assert— assert mdast nodeshast-util-assert— assert hast nodesnlcst-test— assert nlcst nodes
Seecontributing.md insyntax-tree/.github forways to get started.Seesupport.md for ways to get help.
This project has acode of conduct.By interacting with this repository, organization, or community you agree toabide by its terms.
About
utility to assert nodes
Topics
Resources
License
Code of conduct
Contributing
Security policy
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Sponsor this project
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
Contributors2
Uh oh!
There was an error while loading.Please reload this page.