@stdlib/string-left-trim-n-cli 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/NOTICE CHANGED
@@ -1 +1 @@
1
- Copyright (c) 2016-2023 The Stdlib Authors.
1
+ Copyright (c) 2016-2024 The Stdlib Authors.
package/README.md CHANGED
@@ -57,7 +57,6 @@ limitations under the License.
57
57
 
58
58
 
59
59
 
60
-
61
60
  <!-- Section for describing a command-line interface. -->
62
61
 
63
62
 
@@ -204,7 +203,7 @@ See [LICENSE][stdlib-license].
204
203
 
205
204
  ## Copyright
206
205
 
207
- Copyright &copy; 2016-2023. The Stdlib [Authors][stdlib-authors].
206
+ Copyright &copy; 2016-2024. The Stdlib [Authors][stdlib-authors].
208
207
 
209
208
  </section>
210
209
 
@@ -217,8 +216,8 @@ Copyright &copy; 2016-2023. The Stdlib [Authors][stdlib-authors].
217
216
  [npm-image]: http://img.shields.io/npm/v/@stdlib/string-left-trim-n-cli.svg
218
217
  [npm-url]: https://npmjs.org/package/@stdlib/string-left-trim-n-cli
219
218
 
220
- [test-image]: https://github.com/stdlib-js/string-left-trim-n/actions/workflows/test.yml/badge.svg?branch=v0.1.0
221
- [test-url]: https://github.com/stdlib-js/string-left-trim-n/actions/workflows/test.yml?query=branch:v0.1.0
219
+ [test-image]: https://github.com/stdlib-js/string-left-trim-n/actions/workflows/test.yml/badge.svg?branch=v0.2.0
220
+ [test-url]: https://github.com/stdlib-js/string-left-trim-n/actions/workflows/test.yml?query=branch:v0.2.0
222
221
 
223
222
  [coverage-image]: https://img.shields.io/codecov/c/github/stdlib-js/string-left-trim-n/main.svg
224
223
  [coverage-url]: https://codecov.io/github/stdlib-js/string-left-trim-n?branch=main
@@ -245,8 +244,11 @@ Copyright &copy; 2016-2023. The Stdlib [Authors][stdlib-authors].
245
244
  [es-module]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Modules
246
245
 
247
246
  [deno-url]: https://github.com/stdlib-js/string-left-trim-n/tree/deno
247
+ [deno-readme]: https://github.com/stdlib-js/string-left-trim-n/blob/deno/README.md
248
248
  [umd-url]: https://github.com/stdlib-js/string-left-trim-n/tree/umd
249
+ [umd-readme]: https://github.com/stdlib-js/string-left-trim-n/blob/umd/README.md
249
250
  [esm-url]: https://github.com/stdlib-js/string-left-trim-n/tree/esm
251
+ [esm-readme]: https://github.com/stdlib-js/string-left-trim-n/blob/esm/README.md
250
252
  [branches-url]: https://github.com/stdlib-js/string-left-trim-n/blob/main/branches.md
251
253
 
252
254
  [stdlib-license]: https://raw.githubusercontent.com/stdlib-js/string-left-trim-n/main/LICENSE
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stdlib/string-left-trim-n-cli",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "description": "Trim `n` characters from the beginning of a string.",
5
5
  "license": "Apache-2.0",
6
6
  "author": {
@@ -25,20 +25,20 @@
25
25
  "url": "https://github.com/stdlib-js/stdlib/issues"
26
26
  },
27
27
  "dependencies": {
28
- "@stdlib/assert-is-regexp-string": "^0.1.0",
29
- "@stdlib/cli-ctor": "^0.1.0",
30
- "@stdlib/fs-read-file": "^0.1.0",
31
- "@stdlib/process-read-stdin": "^0.1.0",
32
- "@stdlib/regexp-eol": "^0.1.0",
33
- "@stdlib/streams-node-stdin": "^0.1.0",
34
- "@stdlib/string-replace": "^0.1.0",
35
- "@stdlib/utils-regexp-from-string": "^0.1.0",
36
- "@stdlib/string-left-trim-n": "0.1.0"
28
+ "@stdlib/assert-is-regexp-string": "^0.2.0",
29
+ "@stdlib/cli-ctor": "^0.1.1",
30
+ "@stdlib/fs-read-file": "^0.2.0",
31
+ "@stdlib/process-read-stdin": "^0.2.0",
32
+ "@stdlib/regexp-eol": "^0.2.0",
33
+ "@stdlib/streams-node-stdin": "^0.2.0",
34
+ "@stdlib/string-replace": "^0.2.0",
35
+ "@stdlib/utils-regexp-from-string": "^0.2.0",
36
+ "@stdlib/string-left-trim-n": "0.2.0"
37
37
  },
38
38
  "devDependencies": {
39
- "@stdlib/assert-is-browser": "^0.1.0",
40
- "@stdlib/assert-is-windows": "^0.1.0",
41
- "@stdlib/process-exec-path": "^0.1.0",
39
+ "@stdlib/assert-is-browser": "^0.1.1",
40
+ "@stdlib/assert-is-windows": "^0.1.1",
41
+ "@stdlib/process-exec-path": "^0.1.1",
42
42
  "tape": "git+https://github.com/kgryte/tape.git#fix/globby",
43
43
  "proxyquire": "^2.0.0",
44
44
  "istanbul": "^0.4.1",
@@ -1,165 +0,0 @@
1
- #/
2
- # @license Apache-2.0
3
- #
4
- # Copyright (c) 2023 The Stdlib Authors.
5
- #
6
- # Licensed under the Apache License, Version 2.0 (the "License");
7
- # you may not use this file except in compliance with the License.
8
- # You may obtain a copy of the License at
9
- #
10
- # http://www.apache.org/licenses/LICENSE-2.0
11
- #
12
- # Unless required by applicable law or agreed to in writing, software
13
- # distributed under the License is distributed on an "AS IS" BASIS,
14
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- # See the License for the specific language governing permissions and
16
- # limitations under the License.
17
- #/
18
-
19
- # Workflow name:
20
- name: publish_cli
21
-
22
- # Workflow triggers:
23
- on:
24
- # Allow the workflow to be manually run:
25
- workflow_dispatch:
26
- # Workflow inputs:
27
- inputs:
28
- version:
29
- description: 'Version Increment'
30
- type: choice
31
- default: 'none'
32
- options:
33
- - 'none'
34
- - 'major'
35
- - 'minor'
36
- - 'patch'
37
- - 'premajor'
38
- - 'preminor'
39
- - 'prepatch'
40
- - 'prerelease'
41
-
42
- # Workflow jobs:
43
- jobs:
44
-
45
- # Define job to publish package to npm:
46
- publish:
47
-
48
- # Define display name:
49
- name: 'Publish CLI package to npm'
50
-
51
- # Define the type of virtual host machine on which to run the job:
52
- runs-on: ubuntu-latest
53
-
54
- # Define environment variables:
55
- env:
56
- SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
57
- NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
58
-
59
- # Define the sequence of job steps...
60
- steps:
61
-
62
- # Checkout cli branch:
63
- - name: 'Checkout cli branch'
64
- uses: actions/checkout@v3
65
- with:
66
- ref: cli
67
-
68
- # Install Node.js:
69
- - name: 'Install Node.js'
70
- uses: actions/setup-node@v3
71
- with:
72
- node-version: 16
73
- timeout-minutes: 5
74
-
75
- # Configure git:
76
- - name: 'Configure git'
77
- run: |
78
- git config --local user.email "noreply@stdlib.io"
79
- git config --local user.name "stdlib-bot"
80
-
81
- # Increment package version (if requested):
82
- - name: 'Increment package version (if requested)'
83
- if: ${{ github.event.inputs.version != 'none' }}
84
- run: |
85
- # Save NPM_TOKEN to user's .npmrc:
86
- echo "//registry.npmjs.org/:_authToken=${NPM_TOKEN}" > ~/.npmrc
87
-
88
- # Increment package version:
89
- npm version ${{ github.event.inputs.version }} --no-git-tag-version
90
-
91
- # Define variable for new version:
92
- NEW_VERSION=$(node -p "require('./package.json').version")
93
-
94
- # Replace branch in README.md link definitions for badges with the new version:
95
- find . -type f -name '*.md' -print0 | xargs -0 sed -Ei "s/branch([=:])[^ ]+/branch\1v${NEW_VERSION}/g"
96
-
97
- # Create a new commit and tag:
98
- git add package.json README.md
99
- git commit -m "Release v${NEW_VERSION}"
100
- git tag -a "v${NEW_VERSION}-cli" -m "Release v${NEW_VERSION}"
101
-
102
- # Push changes to GitHub:
103
- SLUG=${{ github.repository }}
104
- git push "https://$GITHUB_ACTOR:$GITHUB_TOKEN@github.com/$SLUG.git" --follow-tags
105
-
106
- # Replace GitHub MathJax equations with SVGs:
107
- - name: 'Replace GitHub MathJax equations with SVGs'
108
- run: |
109
- find . -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe 's/```math\n([\s\S]+?)\n```\n\n//g'
110
- find . -type f -name '*.md' -print0 | xargs -0 perl -0777 -i -pe 's/<!-- <div class="equation"(.*)(<\/div>\s*-->)/<div class="equation"$1<\/div>/sg'
111
-
112
- # Replace GitHub links to individual packages with npm links:
113
- - name: 'Replace all GitHub links to individual packages with npm links'
114
- run: |
115
- find . -type f -name '*.md' -print0 | xargs -0 sed -Ei '/tree\/main/b; s/@stdlib\/([^:]*)\]: https:\/\/github.com\/stdlib-js/@stdlib\/\1\]: https:\/\/www.npmjs.com\/package\/@stdlib/g'
116
- SLUG=${{ github.repository }}
117
- ESCAPED_SLUG=${SLUG//\//\\\/}
118
- REPO=${SLUG#*/}
119
- find . -type f -name '*.md' -print0 | xargs -0 sed -Ei "s/https:\/\/github.com\/${ESCAPED_SLUG}\/tree\/main/https:\/\/www.npmjs.com\/package\/@stdlib\/${REPO}/g"
120
-
121
- # Publish package to npm:
122
- - name: 'Publish package to npm'
123
- uses: JS-DevTools/npm-publish@v2
124
- with:
125
- token: ${{ secrets.NPM_TOKEN }}
126
- access: public
127
-
128
- # Discard any uncommitted changes:
129
- - name: 'Discard any uncommitted changes'
130
- run: |
131
- git reset --hard
132
-
133
- # Send status to Slack channel if job fails:
134
- - name: 'Send status to Slack channel in case of failure'
135
- uses: act10ns/slack@v2
136
- with:
137
- status: ${{ job.status }}
138
- steps: ${{ toJson(steps) }}
139
- channel: '#npm-ci'
140
- if: failure()
141
-
142
- # Define job to cancel any running or queued workflow runs...
143
- cancel:
144
-
145
- # Define the type of virtual host machine on which to run the job:
146
- runs-on: ubuntu-latest
147
-
148
- # Time out the job after 3 minutes:
149
- timeout-minutes: 3
150
-
151
- # Define the sequence of job steps...
152
- steps:
153
-
154
- # Cancel any running or queued workflow runs:
155
- - name: 'Cancel running or queued workflow runs'
156
- uses: styfle/cancel-workflow-action@0.11.0
157
- with:
158
- workflow_id: >-
159
- benchmark.yml,
160
- examples.yml,
161
- test.yml,
162
- test_coverage.yml,
163
- test_install.yml,
164
- publish.yml
165
- access_token: ${{ github.token }}
package/CONTRIBUTORS DELETED
@@ -1,39 +0,0 @@
1
- # This file is generated by tools/scripts/update_contributors.
2
- #
3
- # Contributors listed in alphabetical order.
4
-
5
- Ali Salesi <ali_sal1381@yahoo.com>
6
- Amit Jimiwal <amitjimiwal45@gmail.com>
7
- Athan Reines <kgryte@gmail.com>
8
- Brendan Graetz <bguiz@users.noreply.github.com>
9
- Bruno Fenzl <brunofenzl@gmail.com>
10
- Christopher Dambamuromo <chridam@gmail.com>
11
- Dan Rose <danoftheroses@gmail.com>
12
- Dominik Moritz <domoritz@gmail.com>
13
- Dorrin Sotoudeh <dorrinsotoudeh123@gmail.com>
14
- Frank Kovacs <fran70kk@gmail.com>
15
- Harshita Kalani <harshitakalani02@gmail.com>
16
- James Gelok <jdgelok@gmail.com>
17
- Jithin KS <jithinks112@gmail.com>
18
- Joey Reed <joeyrreed@gmail.com>
19
- Jordan Gallivan <115050475+Jordan-Gallivan@users.noreply.github.com>
20
- Joris Labie <joris.labie1@gmail.com>
21
- Justin Dennison <justin1dennison@gmail.com>
22
- Marcus Fantham <mfantham@users.noreply.github.com>
23
- Matt Cochrane <matthew.cochrane.eng@gmail.com>
24
- Milan Raj <rajsite@users.noreply.github.com>
25
- Momtchil Momtchev <momtchil@momtchev.com>
26
- Naresh Jagadeesan <naresh.naresh000@gmail.com>
27
- Nithin Katta <88046362+nithinkatta@users.noreply.github.com>
28
- Ognjen Jevremović <ognjenjevremovic@users.noreply.github.com>
29
- Philipp Burckhardt <pburckhardt@outlook.com>
30
- Pranav Goswami <goswami.4@iitj.ac.in>
31
- Ricky Reusser <rsreusser@gmail.com>
32
- Roman Stetsyk <25715951+romanstetsyk@users.noreply.github.com>
33
- Ryan Seal <splrk@users.noreply.github.com>
34
- Seyyed Parsa Neshaei <spneshaei@users.noreply.github.com>
35
- Shraddheya Shendre <shendreshraddheya@gmail.com>
36
- Stephannie Jiménez Gacha <steff456@hotmail.com>
37
- Yernar Yergaziyev <yernar.yergaziyev@erg.kz>
38
- orimiles5 <97595296+orimiles5@users.noreply.github.com>
39
- rei2hu <reimu@reimu.ws>
@@ -1,33 +0,0 @@
1
- /**
2
- * @license Apache-2.0
3
- *
4
- * Copyright (c) 2021 The Stdlib Authors.
5
- *
6
- * Licensed under the Apache License, Version 2.0 (the "License");
7
- * you may not use this file except in compliance with the License.
8
- * You may obtain a copy of the License at
9
- *
10
- * http://www.apache.org/licenses/LICENSE-2.0
11
- *
12
- * Unless required by applicable law or agreed to in writing, software
13
- * distributed under the License is distributed on an "AS IS" BASIS,
14
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- * See the License for the specific language governing permissions and
16
- * limitations under the License.
17
- */
18
-
19
- var proc = require( 'process' );
20
- var resolve = require( 'path' ).resolve;
21
- var proxyquire = require( 'proxyquire' );
22
-
23
- var fpath = resolve( __dirname, '..', 'bin', 'cli' );
24
-
25
- proc.stdin.isTTY = false;
26
-
27
- proxyquire( fpath, {
28
- '@stdlib/process-read-stdin': stdin
29
- });
30
-
31
- function stdin( clbk ) {
32
- clbk( new Error( 'beep' ) );
33
- }
package/test/test.cli.js DELETED
@@ -1,266 +0,0 @@
1
- /**
2
- * @license Apache-2.0
3
- *
4
- * Copyright (c) 2021 The Stdlib Authors.
5
- *
6
- * Licensed under the Apache License, Version 2.0 (the "License");
7
- * you may not use this file except in compliance with the License.
8
- * You may obtain a copy of the License at
9
- *
10
- * http://www.apache.org/licenses/LICENSE-2.0
11
- *
12
- * Unless required by applicable law or agreed to in writing, software
13
- * distributed under the License is distributed on an "AS IS" BASIS,
14
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- * See the License for the specific language governing permissions and
16
- * limitations under the License.
17
- */
18
-
19
- 'use strict';
20
-
21
- // MODULES //
22
-
23
- var resolve = require( 'path' ).resolve;
24
- var exec = require( 'child_process' ).exec;
25
- var tape = require( 'tape' );
26
- var IS_BROWSER = require( '@stdlib/assert-is-browser' );
27
- var IS_WINDOWS = require( '@stdlib/assert-is-windows' );
28
- var EXEC_PATH = require( '@stdlib/process-exec-path' );
29
- var replace = require( '@stdlib/string-replace' );
30
- var readFileSync = require( '@stdlib/fs-read-file' ).sync;
31
-
32
-
33
- // VARIABLES //
34
-
35
- var fpath = resolve( __dirname, '..', 'bin', 'cli' );
36
- var opts = {
37
- 'skip': IS_BROWSER || IS_WINDOWS
38
- };
39
-
40
-
41
- // FIXTURES //
42
-
43
- var PKG_VERSION = require( './../package.json' ).version;
44
-
45
-
46
- // TESTS //
47
-
48
- tape( 'command-line interface', function test( t ) {
49
- t.ok( true, __filename );
50
- t.end();
51
- });
52
-
53
- tape( 'when invoked with a `--help` flag, the command-line interface prints the help text to `stderr`', opts, function test( t ) {
54
- var expected;
55
- var cmd;
56
-
57
- expected = readFileSync( resolve( __dirname, '..', 'docs', 'usage.txt' ), {
58
- 'encoding': 'utf8'
59
- });
60
- cmd = [
61
- EXEC_PATH,
62
- fpath,
63
- '--help'
64
- ];
65
-
66
- exec( cmd.join( ' ' ), done );
67
-
68
- function done( error, stdout, stderr ) {
69
- if ( error ) {
70
- t.fail( error.message );
71
- } else {
72
- t.strictEqual( stdout.toString(), '', 'does not print to `stdout`' );
73
- t.strictEqual( stderr.toString(), expected+'\n', 'expected value' );
74
- }
75
- t.end();
76
- }
77
- });
78
-
79
- tape( 'when invoked with a `-h` flag, the command-line interface prints the help text to `stderr`', opts, function test( t ) {
80
- var expected;
81
- var cmd;
82
-
83
- expected = readFileSync( resolve( __dirname, '..', 'docs', 'usage.txt' ), {
84
- 'encoding': 'utf8'
85
- });
86
- cmd = [
87
- EXEC_PATH,
88
- fpath,
89
- '-h'
90
- ];
91
-
92
- exec( cmd.join( ' ' ), done );
93
-
94
- function done( error, stdout, stderr ) {
95
- if ( error ) {
96
- t.fail( error.message );
97
- } else {
98
- t.strictEqual( stdout.toString(), '', 'does not print to `stdout`' );
99
- t.strictEqual( stderr.toString(), expected+'\n', 'expected value' );
100
- }
101
- t.end();
102
- }
103
- });
104
-
105
- tape( 'when invoked with a `--version` flag, the command-line interface prints the version to `stderr`', opts, function test( t ) {
106
- var cmd = [
107
- EXEC_PATH,
108
- fpath,
109
- '--version'
110
- ];
111
-
112
- exec( cmd.join( ' ' ), done );
113
-
114
- function done( error, stdout, stderr ) {
115
- if ( error ) {
116
- t.fail( error.message );
117
- } else {
118
- t.strictEqual( stdout.toString(), '', 'does not print to `stdout`' );
119
- t.strictEqual( stderr.toString(), PKG_VERSION+'\n', 'expected value' );
120
- }
121
- t.end();
122
- }
123
- });
124
-
125
- tape( 'when invoked with a `-V` flag, the command-line interface prints the version to `stderr`', opts, function test( t ) {
126
- var cmd = [
127
- EXEC_PATH,
128
- fpath,
129
- '-V'
130
- ];
131
-
132
- exec( cmd.join( ' ' ), done );
133
-
134
- function done( error, stdout, stderr ) {
135
- if ( error ) {
136
- t.fail( error.message );
137
- } else {
138
- t.strictEqual( stdout.toString(), '', 'does not print to `stdout`' );
139
- t.strictEqual( stderr.toString(), PKG_VERSION+'\n', 'expected value' );
140
- }
141
- t.end();
142
- }
143
- });
144
-
145
- tape( 'the command-line interface trims whitespace from the beginning of a string argument', opts, function test( t ) {
146
- var cmd = [
147
- EXEC_PATH,
148
- '-e',
149
- '"process.stdin.isTTY = true; process.argv[ 2 ] = \' beep boop\'; process.argv[ 3 ] = \'--n=2\'; require( \''+fpath+'\' );"'
150
- ];
151
-
152
- exec( cmd.join( ' ' ), done );
153
-
154
- function done( error, stdout, stderr ) {
155
- if ( error ) {
156
- t.fail( error.message );
157
- } else {
158
- t.strictEqual( stdout.toString(), ' beep boop\n', 'expected value' );
159
- t.strictEqual( stderr.toString(), '', 'does not print to `stderr`' );
160
- }
161
- t.end();
162
- }
163
- });
164
-
165
- tape( 'the command-line interface supports use as a standard stream', opts, function test( t ) {
166
- var cmd = [
167
- 'printf "beep boop \n hello world"',
168
- '|',
169
- EXEC_PATH,
170
- fpath,
171
- '--n=3'
172
- ];
173
-
174
- exec( cmd.join( ' ' ), done );
175
-
176
- function done( error, stdout, stderr ) {
177
- if ( error ) {
178
- t.fail( error.message );
179
- } else {
180
- t.strictEqual( stdout.toString(), 'beep boop \nhello world\n', 'expected value' );
181
- t.strictEqual( stderr.toString(), '', 'does not print to `stderr`' );
182
- }
183
- t.end();
184
- }
185
- });
186
-
187
- tape( 'the command-line interface supports specifying a custom delimiter when used as a standard stream (string)', opts, function test( t ) {
188
- var cmd = [
189
- 'printf \' foo \t bar \t baz \'',
190
- '|',
191
- EXEC_PATH,
192
- fpath,
193
- '--split \'\t\'',
194
- '--n=3'
195
- ];
196
-
197
- exec( cmd.join( ' ' ), done );
198
-
199
- function done( error, stdout, stderr ) {
200
- if ( error ) {
201
- t.fail( error.message );
202
- } else {
203
- t.strictEqual( stdout.toString(), 'foo \nbar \nbaz \n', 'expected value' );
204
- t.strictEqual( stderr.toString(), '', 'does not print to `stderr`' );
205
- }
206
- t.end();
207
- }
208
- });
209
-
210
- tape( 'the command-line interface supports specifying a custom delimiter when used as a standard stream (regexp)', opts, function test( t ) {
211
- var cmd = [
212
- 'printf \' foo \t bar \t baz \'',
213
- '|',
214
- EXEC_PATH,
215
- fpath,
216
- '--split=/\\\\t/',
217
- '--n=3'
218
- ];
219
-
220
- exec( cmd.join( ' ' ), done );
221
-
222
- function done( error, stdout, stderr ) {
223
- if ( error ) {
224
- t.fail( error.message );
225
- } else {
226
- t.strictEqual( stdout.toString(), 'foo \nbar \nbaz \n', 'expected value' );
227
- t.strictEqual( stderr.toString(), '', 'does not print to `stderr`' );
228
- }
229
- t.end();
230
- }
231
- });
232
-
233
- tape( 'when used as a standard stream, if an error is encountered when reading from `stdin`, the command-line interface prints an error and sets a non-zero exit code', opts, function test( t ) {
234
- var script;
235
- var opts;
236
- var cmd;
237
-
238
- script = readFileSync( resolve( __dirname, 'fixtures', 'stdin_error.js.txt' ), {
239
- 'encoding': 'utf8'
240
- });
241
-
242
- // Replace single quotes with double quotes:
243
- script = replace( script, '\'', '"' );
244
-
245
- cmd = [
246
- EXEC_PATH,
247
- '-e',
248
- '\''+script+'\''
249
- ];
250
-
251
- opts = {
252
- 'cwd': __dirname
253
- };
254
-
255
- exec( cmd.join( ' ' ), opts, done );
256
-
257
- function done( error, stdout, stderr ) {
258
- if ( error ) {
259
- t.pass( error.message );
260
- t.strictEqual( error.code, 1, 'expected exit code' );
261
- }
262
- t.strictEqual( stdout.toString(), '', 'does not print to `stdout`' );
263
- t.strictEqual( stderr.toString(), 'Error: beep\n', 'expected value' );
264
- t.end();
265
- }
266
- });