string-looks-like
Version:
An assert function that is used to compare multiline string. Support placeholders.
68 lines (45 loc) • 1.68 kB
Markdown
string-looks-like
==================
[](https://travis-ci.com/eight04/string-looks-like)
[](https://codecov.io/gh/eight04/string-looks-like)
[](https://packagephobia.now.sh/result?p=string-looks-like)
An assert utility that is used to assert multiline string. Support placeholders.

Installation
------------
```
npm install -D string-looks-like
```
Usage
-----
```js
const {looksLike} = require("string-looks-like");
looksLike("Hello world!", "Hello {{\w+}}!");
looksLike(helloWorldFunction.toString(), `
function test() {
console.log("hello {{\w+}}!");
}
`);
```
API
----
This module exports following members:
* `looksLike`
### looksLike
```js
looksLike(actual: String, expect: String) => Array<String | MatchObject>
```
Test a string with a template and throw an `AssertionError` if not matched.
* Whitespace in `expect` matches zero or more whitespaces.
* A placeholder `{{}}` will be converted into regexp. Matched string or the match object (with capture groups) will be stored in an array as the return value.
* Compare character-by-character.
Related projects
----------------
* [html-looks-like](https://www.npmjs.com/package/html-looks-like)
Changelog
---------
* 0.1.1 (Feb 7, 2020)
- Add: return matched result.
- Fix: multiple placeholders.
* 0.1.0 (Feb 7, 2020)
- First release.