===========================================================
                                      .___ __  __   
          _________________  __ __  __| _/|__|/  |_ 
         / ___\_` __ \__  \ |  |  \/ __ | | \\_  __\
        / /_/  >  | \// __ \|  |  / /_/ | |  ||  |  
        \___  /|__|  (____  /____/\____ | |__||__|  
       /_____/            \/           \/           
              grep rough audit - static analysis tool
                  v2.8 written by @Wireghoul
=================================[justanotherhacker.com]===
node-shelljs-0.8.3/README.md-519-Like unix `sed`, ShellJS `sed` supports capture groups. Capture groups are specified
node-shelljs-0.8.3/README.md:520:using the `$n` syntax:
node-shelljs-0.8.3/README.md-521-
##############################################
node-shelljs-0.8.3/RELEASE.md-4-2. Bump version, create tags, push, and release:
node-shelljs-0.8.3/RELEASE.md:5:  - `$ npm run <release:major|release:minor|release:patch>`
node-shelljs-0.8.3/RELEASE.md-6-  - `major` - breaking API changes
##############################################
node-shelljs-0.8.3/RELEASE.md-9-3. Update `CHANGELOG.md`
node-shelljs-0.8.3/RELEASE.md:10:  - `$ npm run changelog`
node-shelljs-0.8.3/RELEASE.md-11-  - Manually verify that the changelog makes sense
node-shelljs-0.8.3/RELEASE.md:12:  - `$ git push`
node-shelljs-0.8.3/RELEASE.md-13-4. Generate the documentup website by visiting
##############################################
node-shelljs-0.8.3/src/sed.js-32-//@ Like unix `sed`, ShellJS `sed` supports capture groups. Capture groups are specified
node-shelljs-0.8.3/src/sed.js:33://@ using the `$n` syntax:
node-shelljs-0.8.3/src/sed.js-34-//@
##############################################
node-shelljs-0.8.3/test/cd.js-77-test('cd + other commands', t => {
node-shelljs-0.8.3/test/cd.js:78:  t.falsy(fs.existsSync(`${t.context.tmp}/file1`));
node-shelljs-0.8.3/test/cd.js-79-  let result = shell.cd('test/resources');
##############################################
node-shelljs-0.8.3/test/cd.js-81-  t.is(result.code, 0);
node-shelljs-0.8.3/test/cd.js:82:  result = shell.cp('file1', `../../${t.context.tmp}`);
node-shelljs-0.8.3/test/cd.js-83-  t.falsy(shell.error());
node-shelljs-0.8.3/test/cd.js-84-  t.is(result.code, 0);
node-shelljs-0.8.3/test/cd.js:85:  result = shell.cd(`../../${t.context.tmp}`);
node-shelljs-0.8.3/test/cd.js-86-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/chmod.js-29-  t.is(result.code, 1);
node-shelljs-0.8.3/test/chmod.js:30:  result = shell.chmod('893', `${TMP}/chmod`);  // invalid permissions - mode must be in octal
node-shelljs-0.8.3/test/chmod.js-31-  t.truthy(shell.error());
##############################################
node-shelljs-0.8.3/test/chmod.js-36-  utils.skipOnWin(t, () => {
node-shelljs-0.8.3/test/chmod.js:37:    let result = shell.chmod('755', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-38-    t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js-39-    t.is(
node-shelljs-0.8.3/test/chmod.js:40:      common.statFollowLinks(`${TMP}/chmod/file1`).mode & BITMASK,
node-shelljs-0.8.3/test/chmod.js-41-      parseInt('755', 8)
node-shelljs-0.8.3/test/chmod.js-42-    );
node-shelljs-0.8.3/test/chmod.js:43:    result = shell.chmod('644', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-44-    t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js-45-    t.is(
node-shelljs-0.8.3/test/chmod.js:46:      common.statFollowLinks(`${TMP}/chmod/file1`).mode & BITMASK,
node-shelljs-0.8.3/test/chmod.js-47-      parseInt('644', 8)
##############################################
node-shelljs-0.8.3/test/chmod.js-53-  utils.skipOnWin(t, () => {
node-shelljs-0.8.3/test/chmod.js:54:    let result = shell.chmod('o+x', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-55-    t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js-56-    t.is(
node-shelljs-0.8.3/test/chmod.js:57:      common.statFollowLinks(`${TMP}/chmod/file1`).mode & parseInt('007', 8),
node-shelljs-0.8.3/test/chmod.js-58-      parseInt('005', 8)
node-shelljs-0.8.3/test/chmod.js-59-    );
node-shelljs-0.8.3/test/chmod.js:60:    result = shell.chmod('644', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-61-    t.is(result.code, 0);
##############################################
node-shelljs-0.8.3/test/chmod.js-66-  utils.skipOnWin(t, () => {
node-shelljs-0.8.3/test/chmod.js:67:    let result = shell.chmod('+x', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-68-    t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js-69-    t.is(
node-shelljs-0.8.3/test/chmod.js:70:      common.statFollowLinks(`${TMP}/chmod/file1`).mode & BITMASK,
node-shelljs-0.8.3/test/chmod.js-71-      parseInt('755', 8)
node-shelljs-0.8.3/test/chmod.js-72-    );
node-shelljs-0.8.3/test/chmod.js:73:    result = shell.chmod('644', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-74-    t.is(result.code, 0);
##############################################
node-shelljs-0.8.3/test/chmod.js-79-  utils.skipOnWin(t, () => {
node-shelljs-0.8.3/test/chmod.js:80:    let result = shell.chmod('u+s', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-81-    t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js-82-    t.is(
node-shelljs-0.8.3/test/chmod.js:83:      common.statFollowLinks(`${TMP}/chmod/file1`).mode & parseInt('4000', 8),
node-shelljs-0.8.3/test/chmod.js-84-      parseInt('4000', 8)
node-shelljs-0.8.3/test/chmod.js-85-    );
node-shelljs-0.8.3/test/chmod.js:86:    result = shell.chmod('u-s', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-87-    t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js-88-    t.is(
node-shelljs-0.8.3/test/chmod.js:89:      common.statFollowLinks(`${TMP}/chmod/file1`).mode & BITMASK,
node-shelljs-0.8.3/test/chmod.js-90-      parseInt('644', 8)
##############################################
node-shelljs-0.8.3/test/chmod.js-94-    // setuid is never cleared from a directory unless explicitly asked for.
node-shelljs-0.8.3/test/chmod.js:95:    result = shell.chmod('u+s', `${TMP}/chmod/c`);
node-shelljs-0.8.3/test/chmod.js-96-
node-shelljs-0.8.3/test/chmod.js-97-    t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js:98:    result = shell.chmod('755', `${TMP}/chmod/c`);
node-shelljs-0.8.3/test/chmod.js-99-    t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js-100-    t.is(
node-shelljs-0.8.3/test/chmod.js:101:      common.statFollowLinks(`${TMP}/chmod/c`).mode & parseInt('4000', 8),
node-shelljs-0.8.3/test/chmod.js-102-      parseInt('4000', 8)
node-shelljs-0.8.3/test/chmod.js-103-    );
node-shelljs-0.8.3/test/chmod.js:104:    result = shell.chmod('u-s', `${TMP}/chmod/c`);
node-shelljs-0.8.3/test/chmod.js-105-    t.is(result.code, 0);
##############################################
node-shelljs-0.8.3/test/chmod.js-110-  utils.skipOnWin(t, () => {
node-shelljs-0.8.3/test/chmod.js:111:    let result = shell.chmod('g+s', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-112-    t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js-113-    t.is(
node-shelljs-0.8.3/test/chmod.js:114:      common.statFollowLinks(`${TMP}/chmod/file1`).mode & parseInt('2000', 8),
node-shelljs-0.8.3/test/chmod.js-115-      parseInt('2000', 8)
node-shelljs-0.8.3/test/chmod.js-116-    );
node-shelljs-0.8.3/test/chmod.js:117:    result = shell.chmod('g-s', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-118-    t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js-119-    t.is(
node-shelljs-0.8.3/test/chmod.js:120:      common.statFollowLinks(`${TMP}/chmod/file1`).mode & BITMASK,
node-shelljs-0.8.3/test/chmod.js-121-      parseInt('644', 8)
##############################################
node-shelljs-0.8.3/test/chmod.js-127-  utils.skipOnWin(t, () => {
node-shelljs-0.8.3/test/chmod.js:128:    let result = shell.chmod('+t', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-129-    t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js-130-    t.is(
node-shelljs-0.8.3/test/chmod.js:131:      common.statFollowLinks(`${TMP}/chmod/file1`).mode & parseInt('1000', 8),
node-shelljs-0.8.3/test/chmod.js-132-      parseInt('1000', 8)
node-shelljs-0.8.3/test/chmod.js-133-    );
node-shelljs-0.8.3/test/chmod.js:134:    result = shell.chmod('-t', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-135-    t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js-136-    t.is(
node-shelljs-0.8.3/test/chmod.js:137:      common.statFollowLinks(`${TMP}/chmod/file1`).mode & BITMASK,
node-shelljs-0.8.3/test/chmod.js-138-      parseInt('644', 8)
node-shelljs-0.8.3/test/chmod.js-139-    );
node-shelljs-0.8.3/test/chmod.js:140:    t.is(common.statFollowLinks(`${TMP}/chmod/file1`).mode & parseInt('1000', 8), 0);
node-shelljs-0.8.3/test/chmod.js-141-  });
##############################################
node-shelljs-0.8.3/test/chmod.js-145-  utils.skipOnWin(t, () => {
node-shelljs-0.8.3/test/chmod.js:146:    let result = shell.chmod('a-w', `${TMP}/chmod/b/a/b`);
node-shelljs-0.8.3/test/chmod.js-147-    t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js-148-    t.is(
node-shelljs-0.8.3/test/chmod.js:149:      common.statFollowLinks(`${TMP}/chmod/b/a/b`).mode & BITMASK,
node-shelljs-0.8.3/test/chmod.js-150-      parseInt('555', 8)
node-shelljs-0.8.3/test/chmod.js-151-    );
node-shelljs-0.8.3/test/chmod.js:152:    result = shell.chmod('755', `${TMP}/chmod/b/a/b`);
node-shelljs-0.8.3/test/chmod.js-153-    t.is(result.code, 0);
##############################################
node-shelljs-0.8.3/test/chmod.js-158-  utils.skipOnWin(t, () => {
node-shelljs-0.8.3/test/chmod.js:159:    let result = shell.chmod('-R', 'a+w', `${TMP}/chmod/b`);
node-shelljs-0.8.3/test/chmod.js-160-    t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js-161-    t.is(
node-shelljs-0.8.3/test/chmod.js:162:      common.statFollowLinks(`${TMP}/chmod/b/a/b`).mode & BITMASK,
node-shelljs-0.8.3/test/chmod.js-163-      BITMASK
node-shelljs-0.8.3/test/chmod.js-164-    );
node-shelljs-0.8.3/test/chmod.js:165:    result = shell.chmod('-R', '755', `${TMP}/chmod/b`);
node-shelljs-0.8.3/test/chmod.js-166-    t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js-167-    t.is(
node-shelljs-0.8.3/test/chmod.js:168:      common.statFollowLinks(`${TMP}/chmod/b/a/b`).mode & BITMASK,
node-shelljs-0.8.3/test/chmod.js-169-      parseInt('755', 8)
##############################################
node-shelljs-0.8.3/test/chmod.js-175-  utils.skipOnWin(t, () => {
node-shelljs-0.8.3/test/chmod.js:176:    fs.symlinkSync(`${TMP}/chmod/b/a`, `${TMP}/chmod/a/b/c/link`, 'dir');
node-shelljs-0.8.3/test/chmod.js:177:    let result = shell.chmod('-R', 'u-w', `${TMP}/chmod/a/b`);
node-shelljs-0.8.3/test/chmod.js-178-    t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js-179-    t.is(
node-shelljs-0.8.3/test/chmod.js:180:      common.statFollowLinks(`${TMP}/chmod/a/b/c`).mode & parseInt('700', 8),
node-shelljs-0.8.3/test/chmod.js-181-      parseInt('500', 8)
##############################################
node-shelljs-0.8.3/test/chmod.js-183-    t.is(
node-shelljs-0.8.3/test/chmod.js:184:      common.statFollowLinks(`${TMP}/chmod/b/a`).mode & parseInt('700', 8),
node-shelljs-0.8.3/test/chmod.js-185-      parseInt('700', 8)
node-shelljs-0.8.3/test/chmod.js-186-    );
node-shelljs-0.8.3/test/chmod.js:187:    result = shell.chmod('-R', 'u+w', `${TMP}/chmod/a/b`);
node-shelljs-0.8.3/test/chmod.js-188-    t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js:189:    fs.unlinkSync(`${TMP}/chmod/a/b/c/link`);
node-shelljs-0.8.3/test/chmod.js-190-  });
##############################################
node-shelljs-0.8.3/test/chmod.js-193-test('Test combinations', t => {
node-shelljs-0.8.3/test/chmod.js:194:  let result = shell.chmod('a-rwx', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-195-  t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js-196-  t.is(
node-shelljs-0.8.3/test/chmod.js:197:    common.statFollowLinks(`${TMP}/chmod/file1`).mode & parseInt('000', 8),
node-shelljs-0.8.3/test/chmod.js-198-    parseInt('000', 8)
node-shelljs-0.8.3/test/chmod.js-199-  );
node-shelljs-0.8.3/test/chmod.js:200:  result = shell.chmod('644', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-201-  t.is(result.code, 0);
##############################################
node-shelljs-0.8.3/test/chmod.js-204-test('multiple symbolic modes', t => {
node-shelljs-0.8.3/test/chmod.js:205:  let result = shell.chmod('a-rwx,u+r', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-206-  t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js-207-  t.is(
node-shelljs-0.8.3/test/chmod.js:208:    common.statFollowLinks(`${TMP}/chmod/file1`).mode & parseInt('400', 8),
node-shelljs-0.8.3/test/chmod.js-209-    parseInt('400', 8)
node-shelljs-0.8.3/test/chmod.js-210-  );
node-shelljs-0.8.3/test/chmod.js:211:  result = shell.chmod('644', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-212-  t.is(result.code, 0);
##############################################
node-shelljs-0.8.3/test/chmod.js-215-test('multiple symbolic modes #2', t => {
node-shelljs-0.8.3/test/chmod.js:216:  let result = shell.chmod('a-rwx,u+rw', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-217-  t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js-218-  t.is(
node-shelljs-0.8.3/test/chmod.js:219:    common.statFollowLinks(`${TMP}/chmod/file1`).mode & parseInt('600', 8),
node-shelljs-0.8.3/test/chmod.js-220-    parseInt('600', 8)
node-shelljs-0.8.3/test/chmod.js-221-  );
node-shelljs-0.8.3/test/chmod.js:222:  result = shell.chmod('644', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-223-  t.is(result.code, 0);
##############################################
node-shelljs-0.8.3/test/chmod.js-227-  utils.skipOnWin(t, () => {
node-shelljs-0.8.3/test/chmod.js:228:    let result = shell.chmod('a-rwx,u+rwx', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-229-    t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js-230-    t.is(
node-shelljs-0.8.3/test/chmod.js:231:      common.statFollowLinks(`${TMP}/chmod/file1`).mode & parseInt('700', 8),
node-shelljs-0.8.3/test/chmod.js-232-      parseInt('700', 8)
node-shelljs-0.8.3/test/chmod.js-233-    );
node-shelljs-0.8.3/test/chmod.js:234:    result = shell.chmod('644', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-235-    t.is(result.code, 0);
##############################################
node-shelljs-0.8.3/test/chmod.js-239-test('u+rw', t => {
node-shelljs-0.8.3/test/chmod.js:240:  let result = shell.chmod('000', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-241-  t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js:242:  result = shell.chmod('u+rw', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-243-  t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js-244-  t.is(
node-shelljs-0.8.3/test/chmod.js:245:    common.statFollowLinks(`${TMP}/chmod/file1`).mode & parseInt('600', 8),
node-shelljs-0.8.3/test/chmod.js-246-    parseInt('600', 8)
node-shelljs-0.8.3/test/chmod.js-247-  );
node-shelljs-0.8.3/test/chmod.js:248:  result = shell.chmod('644', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-249-  t.is(result.code, 0);
##############################################
node-shelljs-0.8.3/test/chmod.js-253-  utils.skipOnWin(t, () => {
node-shelljs-0.8.3/test/chmod.js:254:    let result = shell.chmod('000', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-255-    t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js:256:    result = shell.chmod('u+wx', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-257-    t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js-258-    t.is(
node-shelljs-0.8.3/test/chmod.js:259:      common.statFollowLinks(`${TMP}/chmod/file1`).mode & parseInt('300', 8),
node-shelljs-0.8.3/test/chmod.js-260-      parseInt('300', 8)
node-shelljs-0.8.3/test/chmod.js-261-    );
node-shelljs-0.8.3/test/chmod.js:262:    result = shell.chmod('644', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-263-    t.is(result.code, 0);
##############################################
node-shelljs-0.8.3/test/chmod.js-268-  utils.skipOnWin(t, () => {
node-shelljs-0.8.3/test/chmod.js:269:    let result = shell.chmod('000', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-270-    t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js:271:    result = shell.chmod('u+r,g+w,o+x', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-272-    t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js-273-    t.is(
node-shelljs-0.8.3/test/chmod.js:274:      common.statFollowLinks(`${TMP}/chmod/file1`).mode & parseInt('421', 8),
node-shelljs-0.8.3/test/chmod.js-275-      parseInt('421', 8)
node-shelljs-0.8.3/test/chmod.js-276-    );
node-shelljs-0.8.3/test/chmod.js:277:    result = shell.chmod('644', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-278-    t.is(result.code, 0);
##############################################
node-shelljs-0.8.3/test/chmod.js-283-  utils.skipOnWin(t, () => {
node-shelljs-0.8.3/test/chmod.js:284:    let result = shell.chmod('000', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-285-    t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js:286:    result = shell.chmod('u+rw,g+wx', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-287-    t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js-288-    t.is(
node-shelljs-0.8.3/test/chmod.js:289:      common.statFollowLinks(`${TMP}/chmod/file1`).mode & parseInt('630', 8),
node-shelljs-0.8.3/test/chmod.js-290-      parseInt('630', 8)
node-shelljs-0.8.3/test/chmod.js-291-    );
node-shelljs-0.8.3/test/chmod.js:292:    result = shell.chmod('644', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-293-    t.is(result.code, 0);
##############################################
node-shelljs-0.8.3/test/chmod.js-297-test('u-x,g+rw', t => {
node-shelljs-0.8.3/test/chmod.js:298:  let result = shell.chmod('700', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-299-  t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js:300:  result = shell.chmod('u-x,g+rw', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-301-  t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js-302-  t.is(
node-shelljs-0.8.3/test/chmod.js:303:    common.statFollowLinks(`${TMP}/chmod/file1`).mode & parseInt('660', 8),
node-shelljs-0.8.3/test/chmod.js-304-    parseInt('660', 8)
node-shelljs-0.8.3/test/chmod.js-305-  );
node-shelljs-0.8.3/test/chmod.js:306:  result = shell.chmod('644', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-307-  t.is(result.code, 0);
##############################################
node-shelljs-0.8.3/test/chmod.js-310-test('a-rwx,u+rw', t => {
node-shelljs-0.8.3/test/chmod.js:311:  let result = shell.chmod('a-rwx,u+rw', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-312-  t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js-313-  t.is(
node-shelljs-0.8.3/test/chmod.js:314:    common.statFollowLinks(`${TMP}/chmod/file1`).mode & parseInt('600', 8),
node-shelljs-0.8.3/test/chmod.js-315-    parseInt('600', 8)
node-shelljs-0.8.3/test/chmod.js-316-  );
node-shelljs-0.8.3/test/chmod.js:317:  result = shell.chmod('a-rwx,u+rw', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-318-  t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js-319-  t.is(
node-shelljs-0.8.3/test/chmod.js:320:    common.statFollowLinks(`${TMP}/chmod/file1`).mode & parseInt('600', 8),
node-shelljs-0.8.3/test/chmod.js-321-    parseInt('600', 8)
node-shelljs-0.8.3/test/chmod.js-322-  );
node-shelljs-0.8.3/test/chmod.js:323:  result = shell.chmod('644', `${TMP}/chmod/file1`);
node-shelljs-0.8.3/test/chmod.js-324-  t.is(result.code, 0);
##############################################
node-shelljs-0.8.3/test/chmod.js-327-test('Numeric modes', t => {
node-shelljs-0.8.3/test/chmod.js:328:  let result = shell.chmod('744', `${TMP}/chmod/xdir`);
node-shelljs-0.8.3/test/chmod.js-329-  t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js:330:  result = shell.chmod('644', `${TMP}/chmod/xdir/file`);
node-shelljs-0.8.3/test/chmod.js-331-  t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js:332:  result = shell.chmod('744', `${TMP}/chmod/xdir/deep`);
node-shelljs-0.8.3/test/chmod.js-333-  t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js:334:  result = shell.chmod('644', `${TMP}/chmod/xdir/deep/file`);
node-shelljs-0.8.3/test/chmod.js-335-  t.is(result.code, 0);
node-shelljs-0.8.3/test/chmod.js:336:  result = shell.chmod('-R', 'a+X', `${TMP}/chmod/xdir`);
node-shelljs-0.8.3/test/chmod.js-337-  t.is(result.code, 0);
##############################################
node-shelljs-0.8.3/test/chmod.js-342-    t.is(
node-shelljs-0.8.3/test/chmod.js:343:      common.statFollowLinks(`${TMP}/chmod/xdir`).mode & parseInt('755', 8),
node-shelljs-0.8.3/test/chmod.js-344-      parseInt('755', 8)
##############################################
node-shelljs-0.8.3/test/chmod.js-346-    t.is(
node-shelljs-0.8.3/test/chmod.js:347:      common.statFollowLinks(`${TMP}/chmod/xdir/file`).mode & parseInt('644', 8),
node-shelljs-0.8.3/test/chmod.js-348-      parseInt('644', 8)
##############################################
node-shelljs-0.8.3/test/chmod.js-350-    t.is(
node-shelljs-0.8.3/test/chmod.js:351:      common.statFollowLinks(`${TMP}/chmod/xdir/deep`).mode & parseInt('755', 8),
node-shelljs-0.8.3/test/chmod.js-352-      parseInt('755', 8)
##############################################
node-shelljs-0.8.3/test/chmod.js-354-    t.is(
node-shelljs-0.8.3/test/chmod.js:355:      common.statFollowLinks(`${TMP}/chmod/xdir/deep/file`).mode & parseInt('644', 8),
node-shelljs-0.8.3/test/chmod.js-356-      parseInt('644', 8)
##############################################
node-shelljs-0.8.3/test/cp.js-49-test('invalid option', t => {
node-shelljs-0.8.3/test/cp.js:50:  const result = shell.cp('-@', 'test/resources/file1', `${t.context.tmp}/file1`);
node-shelljs-0.8.3/test/cp.js-51-  t.truthy(shell.error());
node-shelljs-0.8.3/test/cp.js-52-  t.is(result.code, 1);
node-shelljs-0.8.3/test/cp.js:53:  t.falsy(fs.existsSync(`${t.context.tmp}/file1`));
node-shelljs-0.8.3/test/cp.js-54-  t.is(result.stderr, 'cp: option not recognized: @');
##############################################
node-shelljs-0.8.3/test/cp.js-57-test('invalid option #2', t => {
node-shelljs-0.8.3/test/cp.js:58:  const result = shell.cp('-Z', 'asdfasdf', `${t.context.tmp}/file2`);
node-shelljs-0.8.3/test/cp.js-59-  t.truthy(shell.error());
node-shelljs-0.8.3/test/cp.js-60-  t.is(result.code, 1);
node-shelljs-0.8.3/test/cp.js:61:  t.falsy(fs.existsSync(`${t.context.tmp}/file2`));
node-shelljs-0.8.3/test/cp.js-62-  t.is(result.stderr, 'cp: option not recognized: Z');
##############################################
node-shelljs-0.8.3/test/cp.js-69-  t.is(utils.numLines(result.stderr), 1);
node-shelljs-0.8.3/test/cp.js:70:  t.falsy(fs.existsSync(`${t.context.tmp}/asdfasdf`));
node-shelljs-0.8.3/test/cp.js-71-  t.is(result.stderr, 'cp: no such file or directory: asdfasdf');
##############################################
node-shelljs-0.8.3/test/cp.js-78-  t.is(utils.numLines(result.stderr), 2);
node-shelljs-0.8.3/test/cp.js:79:  t.falsy(fs.existsSync(`${t.context.tmp}/asdfasdf1`));
node-shelljs-0.8.3/test/cp.js:80:  t.falsy(fs.existsSync(`${t.context.tmp}/asdfasdf2`));
node-shelljs-0.8.3/test/cp.js-81-  t.is(
##############################################
node-shelljs-0.8.3/test/cp.js-94-test('too many sources #2', t => {
node-shelljs-0.8.3/test/cp.js:95:  const result = shell.cp('test/resources/file1', 'test/resources/file2', `${t.context.tmp}/a_file`);
node-shelljs-0.8.3/test/cp.js-96-  t.truthy(shell.error());
node-shelljs-0.8.3/test/cp.js-97-  t.is(result.code, 1);
node-shelljs-0.8.3/test/cp.js:98:  t.falsy(fs.existsSync(`${t.context.tmp}/a_file`));
node-shelljs-0.8.3/test/cp.js-99-  t.is(result.stderr, 'cp: dest is not a directory (too many sources)');
##############################################
node-shelljs-0.8.3/test/cp.js-123-  // Create tmp/new/cp/a
node-shelljs-0.8.3/test/cp.js:124:  const dest = `${t.context.tmp}/new/cp`;
node-shelljs-0.8.3/test/cp.js-125-  shell.mkdir('-p', dest);
node-shelljs-0.8.3/test/cp.js-126-  const oldContents = 'original content';
node-shelljs-0.8.3/test/cp.js:127:  shell.ShellString(oldContents).to(`${dest}/a`);
node-shelljs-0.8.3/test/cp.js-128-
node-shelljs-0.8.3/test/cp.js-129-  // Attempt to overwrite /tmp/new/cp/ with test/resources/cp/
node-shelljs-0.8.3/test/cp.js:130:  const result = shell.cp('-nR', 'test/resources/cp/', `${t.context.tmp}/new/`);
node-shelljs-0.8.3/test/cp.js-131-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/cp.js-133-  t.falsy(result.stderr);
node-shelljs-0.8.3/test/cp.js:134:  t.is(shell.cat(`${dest}/a`).toString(), oldContents);
node-shelljs-0.8.3/test/cp.js-135-});
##############################################
node-shelljs-0.8.3/test/cp.js-138-  const oldContents = 'original content';
node-shelljs-0.8.3/test/cp.js:139:  shell.cp('test/resources/file1', `${t.context.tmp}`);
node-shelljs-0.8.3/test/cp.js:140:  new shell.ShellString(oldContents).to(`${t.context.tmp}/file1`);
node-shelljs-0.8.3/test/cp.js:141:  const result = shell.cp('-n', 'test/resources/file1', `${t.context.tmp}`);
node-shelljs-0.8.3/test/cp.js-142-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/cp.js-144-  t.falsy(result.stderr);
node-shelljs-0.8.3/test/cp.js:145:  t.is(shell.cat(`${t.context.tmp}/file1`).toString(), oldContents);
node-shelljs-0.8.3/test/cp.js-146-});
##############################################
node-shelljs-0.8.3/test/cp.js-175-  t.is(result.code, 0);
node-shelljs-0.8.3/test/cp.js:176:  t.truthy(fs.existsSync(`${t.context.tmp}/file1`));
node-shelljs-0.8.3/test/cp.js-177-});
##############################################
node-shelljs-0.8.3/test/cp.js-179-test('simple - to file', t => {
node-shelljs-0.8.3/test/cp.js:180:  const result = shell.cp('test/resources/file2', `${t.context.tmp}/file2`);
node-shelljs-0.8.3/test/cp.js-181-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/cp.js-183-  t.is(result.code, 0);
node-shelljs-0.8.3/test/cp.js:184:  t.truthy(fs.existsSync(`${t.context.tmp}/file2`));
node-shelljs-0.8.3/test/cp.js-185-});
##############################################
node-shelljs-0.8.3/test/cp.js-191-  t.is(result.code, 0);
node-shelljs-0.8.3/test/cp.js:192:  t.truthy(fs.existsSync(`${t.context.tmp}/file1`));
node-shelljs-0.8.3/test/cp.js:193:  t.truthy(fs.existsSync(`${t.context.tmp}/file2`));
node-shelljs-0.8.3/test/cp.js-194-});
##############################################
node-shelljs-0.8.3/test/cp.js-200-  t.is(result.code, 0);
node-shelljs-0.8.3/test/cp.js:201:  t.truthy(fs.existsSync(`${t.context.tmp}/file1`));
node-shelljs-0.8.3/test/cp.js:202:  t.truthy(fs.existsSync(`${t.context.tmp}/file2`));
node-shelljs-0.8.3/test/cp.js-203-});
##############################################
node-shelljs-0.8.3/test/cp.js-205-test('-f option', t => {
node-shelljs-0.8.3/test/cp.js:206:  shell.cp('test/resources/file2', `${t.context.tmp}/file3`);
node-shelljs-0.8.3/test/cp.js:207:  t.truthy(fs.existsSync(`${t.context.tmp}/file3`));
node-shelljs-0.8.3/test/cp.js:208:  const result = shell.cp('-f', 'test/resources/file2', `${t.context.tmp}/file3`); // file exists, but -f specified
node-shelljs-0.8.3/test/cp.js-209-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/cp.js-211-  t.is(result.code, 0);
node-shelljs-0.8.3/test/cp.js:212:  t.truthy(fs.existsSync(`${t.context.tmp}/file3`));
node-shelljs-0.8.3/test/cp.js-213-});
##############################################
node-shelljs-0.8.3/test/cp.js-219-  t.is(result.code, 0);
node-shelljs-0.8.3/test/cp.js:220:  t.truthy(fs.existsSync(`${t.context.tmp}/file1`));
node-shelljs-0.8.3/test/cp.js:221:  t.truthy(fs.existsSync(`${t.context.tmp}/file2`));
node-shelljs-0.8.3/test/cp.js:222:  t.falsy(fs.existsSync(`${t.context.tmp}/file1.js`));
node-shelljs-0.8.3/test/cp.js:223:  t.falsy(fs.existsSync(`${t.context.tmp}/file2.js`));
node-shelljs-0.8.3/test/cp.js:224:  t.falsy(fs.existsSync(`${t.context.tmp}/file1.txt`));
node-shelljs-0.8.3/test/cp.js:225:  t.falsy(fs.existsSync(`${t.context.tmp}/file2.txt`));
node-shelljs-0.8.3/test/cp.js-226-});
##############################################
node-shelljs-0.8.3/test/cp.js-228-test('wildcard', t => {
node-shelljs-0.8.3/test/cp.js:229:  shell.rm(`${t.context.tmp}/file1`, `${t.context.tmp}/file2`);
node-shelljs-0.8.3/test/cp.js-230-  const result = shell.cp('test/resources/file*', t.context.tmp);
##############################################
node-shelljs-0.8.3/test/cp.js-233-  t.is(result.code, 0);
node-shelljs-0.8.3/test/cp.js:234:  t.truthy(fs.existsSync(`${t.context.tmp}/file1`));
node-shelljs-0.8.3/test/cp.js:235:  t.truthy(fs.existsSync(`${t.context.tmp}/file2`));
node-shelljs-0.8.3/test/cp.js:236:  t.truthy(fs.existsSync(`${t.context.tmp}/file1.js`));
node-shelljs-0.8.3/test/cp.js:237:  t.truthy(fs.existsSync(`${t.context.tmp}/file2.js`));
node-shelljs-0.8.3/test/cp.js:238:  t.truthy(fs.existsSync(`${t.context.tmp}/file1.txt`));
node-shelljs-0.8.3/test/cp.js:239:  t.truthy(fs.existsSync(`${t.context.tmp}/file2.txt`));
node-shelljs-0.8.3/test/cp.js-240-});
##############################################
node-shelljs-0.8.3/test/cp.js-246-  t.is(result.code, 0);
node-shelljs-0.8.3/test/cp.js:247:  t.truthy(fs.existsSync(`${t.context.tmp}/file1`));
node-shelljs-0.8.3/test/cp.js:248:  t.truthy(fs.existsSync(`${t.context.tmp}/file2`));
node-shelljs-0.8.3/test/cp.js-249-});
##############################################
node-shelljs-0.8.3/test/cp.js-255-  t.is(result.code, 1);
node-shelljs-0.8.3/test/cp.js:256:  t.falsy(fs.existsSync(`${t.context.tmp}/file1`));
node-shelljs-0.8.3/test/cp.js:257:  t.falsy(fs.existsSync(`${t.context.tmp}/file2`));
node-shelljs-0.8.3/test/cp.js-258-});
##############################################
node-shelljs-0.8.3/test/cp.js-264-  t.is(result.code, 0);
node-shelljs-0.8.3/test/cp.js:265:  t.is(shell.ls('-R', 'test/resources/cp').toString(), shell.ls('-R', `${t.context.tmp}/cp`).toString());
node-shelljs-0.8.3/test/cp.js-266-});
##############################################
node-shelljs-0.8.3/test/cp.js-269-  // Github issue #15
node-shelljs-0.8.3/test/cp.js:270:  const result = shell.cp('-R', 'test/resources/cp/', `${t.context.tmp}/`);
node-shelljs-0.8.3/test/cp.js-271-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/cp.js-273-  t.is(result.code, 0);
node-shelljs-0.8.3/test/cp.js:274:  t.is(shell.ls('-R', 'test/resources/cp').toString(), shell.ls('-R', `${t.context.tmp}/cp`).toString());
node-shelljs-0.8.3/test/cp.js-275-});
##############################################
node-shelljs-0.8.3/test/cp.js-282-  t.is(result.code, 0);
node-shelljs-0.8.3/test/cp.js:283:  t.truthy(fs.existsSync(`${t.context.tmp}/file1.txt`));
node-shelljs-0.8.3/test/cp.js:284:  t.truthy(fs.existsSync(`${t.context.tmp}/file2.txt`));
node-shelljs-0.8.3/test/cp.js-285-});
##############################################
node-shelljs-0.8.3/test/cp.js-292-  t.is(result.code, 0);
node-shelljs-0.8.3/test/cp.js:293:  t.truthy(fs.existsSync(`${t.context.tmp}/file1.txt`));
node-shelljs-0.8.3/test/cp.js:294:  t.falsy(common.statFollowLinks(`${t.context.tmp}/file1.txt`).isDirectory()); // don't let it be a dir
node-shelljs-0.8.3/test/cp.js-295-}
##############################################
node-shelljs-0.8.3/test/cp.js-307-    shell.cp('-R', 'test/resources/cp/*', t.context.tmp);
node-shelljs-0.8.3/test/cp.js:308:    t.truthy(common.statNoFollowLinks(`${t.context.tmp}/links/sym.lnk`).isSymbolicLink()); // this one is a link
node-shelljs-0.8.3/test/cp.js:309:    t.falsy((common.statNoFollowLinks(`${t.context.tmp}/fakeLinks/sym.lnk`).isSymbolicLink())); // this one isn't
node-shelljs-0.8.3/test/cp.js-310-    t.not(
node-shelljs-0.8.3/test/cp.js:311:      shell.cat(`${t.context.tmp}/links/sym.lnk`).toString(),
node-shelljs-0.8.3/test/cp.js:312:      shell.cat(`${t.context.tmp}/fakeLinks/sym.lnk`).toString()
node-shelljs-0.8.3/test/cp.js-313-    );
node-shelljs-0.8.3/test/cp.js:314:    const result = shell.cp('-R', `${t.context.tmp}/links/*`, `${t.context.tmp}/fakeLinks`);
node-shelljs-0.8.3/test/cp.js-315-    t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/cp.js-317-    t.is(result.code, 0);
node-shelljs-0.8.3/test/cp.js:318:    t.truthy(common.statNoFollowLinks(`${t.context.tmp}/links/sym.lnk`).isSymbolicLink()); // this one is a link
node-shelljs-0.8.3/test/cp.js:319:    t.truthy(common.statNoFollowLinks(`${t.context.tmp}/fakeLinks/sym.lnk`).isSymbolicLink()); // this one is now a link
node-shelljs-0.8.3/test/cp.js-320-    t.is(
node-shelljs-0.8.3/test/cp.js:321:      shell.cat(`${t.context.tmp}/links/sym.lnk`).toString(),
node-shelljs-0.8.3/test/cp.js:322:      shell.cat(`${t.context.tmp}/fakeLinks/sym.lnk`).toString()
node-shelljs-0.8.3/test/cp.js-323-    );
##############################################
node-shelljs-0.8.3/test/cp.js-331-    shell.cp('-R', 'test/resources/cp/*', t.context.tmp);
node-shelljs-0.8.3/test/cp.js:332:    t.truthy(common.statNoFollowLinks(`${t.context.tmp}/links/sym.lnk`).isSymbolicLink()); // this one is a link
node-shelljs-0.8.3/test/cp.js:333:    t.falsy((common.statNoFollowLinks(`${t.context.tmp}/fakeLinks/sym.lnk`).isSymbolicLink())); // this one isn't
node-shelljs-0.8.3/test/cp.js-334-    t.not(
node-shelljs-0.8.3/test/cp.js:335:      shell.cat(`${t.context.tmp}/links/sym.lnk`).toString(),
node-shelljs-0.8.3/test/cp.js:336:      shell.cat(`${t.context.tmp}/fakeLinks/sym.lnk`).toString()
node-shelljs-0.8.3/test/cp.js-337-    );
node-shelljs-0.8.3/test/cp.js:338:    const result = shell.cp(`${t.context.tmp}/links/*`, `${t.context.tmp}/fakeLinks`); // don't use -R
node-shelljs-0.8.3/test/cp.js-339-    t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/cp.js-341-    t.is(result.code, 0);
node-shelljs-0.8.3/test/cp.js:342:    t.truthy(common.statNoFollowLinks(`${t.context.tmp}/links/sym.lnk`).isSymbolicLink()); // this one is a link
node-shelljs-0.8.3/test/cp.js:343:    t.falsy(common.statNoFollowLinks(`${t.context.tmp}/fakeLinks/sym.lnk`).isSymbolicLink()); // this one is still not a link
node-shelljs-0.8.3/test/cp.js-344-    // But it still follows the link
node-shelljs-0.8.3/test/cp.js-345-    t.is(
node-shelljs-0.8.3/test/cp.js:346:      shell.cat(`${t.context.tmp}/links/sym.lnk`).toString(),
node-shelljs-0.8.3/test/cp.js:347:      shell.cat(`${t.context.tmp}/fakeLinks/sym.lnk`).toString()
node-shelljs-0.8.3/test/cp.js-348-    );
##############################################
node-shelljs-0.8.3/test/cp.js-353-  let result = shell.cp('-R', 'test/resources/cp', t.context.tmp);
node-shelljs-0.8.3/test/cp.js:354:  shell.ShellString('changing things around').to(`${t.context.tmp}/cp/dir_a/z`);
node-shelljs-0.8.3/test/cp.js:355:  t.not(shell.cat('test/resources/cp/dir_a/z').toString(), shell.cat(`${t.context.tmp}/cp/dir_a/z`).toString()); // before cp
node-shelljs-0.8.3/test/cp.js-356-  result = shell.cp('-Rf', 'test/resources/cp', t.context.tmp);
##############################################
node-shelljs-0.8.3/test/cp.js-359-  t.is(result.code, 0);
node-shelljs-0.8.3/test/cp.js:360:  t.is(shell.cat('test/resources/cp/dir_a/z').toString(), shell.cat(`${t.context.tmp}/cp/dir_a/z`).toString()); // after cp
node-shelljs-0.8.3/test/cp.js-361-});
##############################################
node-shelljs-0.8.3/test/cp.js-364-  // Github issue #44
node-shelljs-0.8.3/test/cp.js:365:  const result = shell.cp('-r', 'test/resources/issue44', `${t.context.tmp}/dir2`);
node-shelljs-0.8.3/test/cp.js-366-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/cp.js-368-  t.is(result.code, 0);
node-shelljs-0.8.3/test/cp.js:369:  t.is(shell.ls('-R', 'test/resources/issue44').toString(), shell.ls('-R', `${t.context.tmp}/dir2`).toString());
node-shelljs-0.8.3/test/cp.js-370-  t.is(
node-shelljs-0.8.3/test/cp.js-371-      shell.cat('test/resources/issue44/main.js').toString(),
node-shelljs-0.8.3/test/cp.js:372:      shell.cat(`${t.context.tmp}/dir2/main.js`).toString()
node-shelljs-0.8.3/test/cp.js-373-    );
##############################################
node-shelljs-0.8.3/test/cp.js-377-  // Github issue #44
node-shelljs-0.8.3/test/cp.js:378:  const result = shell.cp('-r', 'test/resources/issue44', `${t.context.tmp}/dir2/dir3`);
node-shelljs-0.8.3/test/cp.js-379-  t.truthy(shell.error());
##############################################
node-shelljs-0.8.3/test/cp.js-381-    result.stderr,
node-shelljs-0.8.3/test/cp.js:382:    `cp: cannot create directory '${t.context.tmp}/dir2/dir3': No such file or directory`
node-shelljs-0.8.3/test/cp.js-383-  );
node-shelljs-0.8.3/test/cp.js-384-  t.is(result.code, 1);
node-shelljs-0.8.3/test/cp.js:385:  t.falsy(fs.existsSync(`${t.context.tmp}/dir2`));
node-shelljs-0.8.3/test/cp.js-386-});
##############################################
node-shelljs-0.8.3/test/cp.js-388-test('recursive, copies entire directory', t => {
node-shelljs-0.8.3/test/cp.js:389:  const result = shell.cp('-r', 'test/resources/cp/dir_a', `${t.context.tmp}/dest`);
node-shelljs-0.8.3/test/cp.js-390-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/cp.js-392-  t.is(result.code, 0);
node-shelljs-0.8.3/test/cp.js:393:  t.truthy(fs.existsSync(`${t.context.tmp}/dest/z`));
node-shelljs-0.8.3/test/cp.js-394-});
##############################################
node-shelljs-0.8.3/test/cp.js-396-test('recursive, with trailing slash, does the exact same', t => {
node-shelljs-0.8.3/test/cp.js:397:  const result = shell.cp('-r', 'test/resources/cp/dir_a/', `${t.context.tmp}/dest`);
node-shelljs-0.8.3/test/cp.js-398-  t.is(result.code, 0);
node-shelljs-0.8.3/test/cp.js-399-  t.falsy(shell.error());
node-shelljs-0.8.3/test/cp.js:400:  t.truthy(fs.existsSync(`${t.context.tmp}/dest/z`));
node-shelljs-0.8.3/test/cp.js-401-});
##############################################
node-shelljs-0.8.3/test/cp.js-406-    t.is(common.statFollowLinks('test/resources/cp-mode-bits/executable').mode & execBit, execBit);
node-shelljs-0.8.3/test/cp.js:407:    shell.cp('test/resources/cp-mode-bits/executable', `${t.context.tmp}/executable`);
node-shelljs-0.8.3/test/cp.js-408-    t.is(
node-shelljs-0.8.3/test/cp.js-409-      common.statFollowLinks('test/resources/cp-mode-bits/executable').mode,
node-shelljs-0.8.3/test/cp.js:410:      common.statFollowLinks(`${t.context.tmp}/executable`).mode
node-shelljs-0.8.3/test/cp.js-411-    );
##############################################
node-shelljs-0.8.3/test/cp.js-420-  t.is(result.code, 0);
node-shelljs-0.8.3/test/cp.js:421:  t.truthy(fs.existsSync(`${t.context.tmp}/.hidden_file`));
node-shelljs-0.8.3/test/cp.js-422-});
##############################################
node-shelljs-0.8.3/test/cp.js-427-  t.truthy(shell.error());
node-shelljs-0.8.3/test/cp.js:428:  t.falsy(fs.existsSync(`${t.context.tmp}/.hidden_file`)); // doesn't copy dir contents
node-shelljs-0.8.3/test/cp.js:429:  t.falsy(fs.existsSync(`${t.context.tmp}/ls`)); // doesn't copy dir itself
node-shelljs-0.8.3/test/cp.js:430:  t.truthy(fs.existsSync(`${t.context.tmp}/file1.txt`));
node-shelljs-0.8.3/test/cp.js-431-});
##############################################
node-shelljs-0.8.3/test/cp.js-438-  t.truthy(shell.error());
node-shelljs-0.8.3/test/cp.js:439:  t.falsy(fs.existsSync(`${t.context.tmp}/.hidden_file`)); // doesn't copy dir contents
node-shelljs-0.8.3/test/cp.js:440:  t.falsy(fs.existsSync(`${t.context.tmp}/ls`)); // doesn't copy dir itself
node-shelljs-0.8.3/test/cp.js:441:  t.falsy(fs.existsSync(`${t.context.tmp}/a`)); // doesn't copy dir contents
node-shelljs-0.8.3/test/cp.js:442:  t.falsy(fs.existsSync(`${t.context.tmp}/cp`)); // doesn't copy dir itself
node-shelljs-0.8.3/test/cp.js:443:  t.truthy(fs.existsSync(`${t.context.tmp}/file1.txt`));
node-shelljs-0.8.3/test/cp.js:444:  t.truthy(fs.existsSync(`${t.context.tmp}/file2.txt`));
node-shelljs-0.8.3/test/cp.js-445-});
##############################################
node-shelljs-0.8.3/test/cp.js-449-    shell.cp('-R', 'test/resources/cp/links/sym.lnk', t.context.tmp);
node-shelljs-0.8.3/test/cp.js:450:    t.truthy(common.statNoFollowLinks(`${t.context.tmp}/sym.lnk`).isSymbolicLink());
node-shelljs-0.8.3/test/cp.js-451-  });
##############################################
node-shelljs-0.8.3/test/cp.js-456-    shell.cp('-P', 'test/resources/cp/links/sym.lnk', t.context.tmp);
node-shelljs-0.8.3/test/cp.js:457:    t.truthy(common.statNoFollowLinks(`${t.context.tmp}/sym.lnk`).isSymbolicLink());
node-shelljs-0.8.3/test/cp.js-458-  });
##############################################
node-shelljs-0.8.3/test/cp.js-463-    shell.cp('-PR', 'test/resources/cp/symFolder', t.context.tmp);
node-shelljs-0.8.3/test/cp.js:464:    t.truthy(common.statNoFollowLinks(`${t.context.tmp}/symFolder`).isSymbolicLink());
node-shelljs-0.8.3/test/cp.js-465-  });
##############################################
node-shelljs-0.8.3/test/cp.js-470-    shell.cp('-LPR', 'test/resources/cp/symFolder', t.context.tmp);
node-shelljs-0.8.3/test/cp.js:471:    t.falsy(common.statNoFollowLinks(`${t.context.tmp}/symFolder`).isSymbolicLink());
node-shelljs-0.8.3/test/cp.js:472:    t.falsy(common.statNoFollowLinks(`${t.context.tmp}/symFolder/sym.lnk`).isSymbolicLink());
node-shelljs-0.8.3/test/cp.js-473-  });
##############################################
node-shelljs-0.8.3/test/cp.js-477-  utils.skipOnWin(t, () => {
node-shelljs-0.8.3/test/cp.js:478:    const result = shell.cp('-rL', 'test/resources/cp/dir_a', `${t.context.tmp}/dest`);
node-shelljs-0.8.3/test/cp.js-479-    t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/cp.js-481-    t.is(result.code, 0);
node-shelljs-0.8.3/test/cp.js:482:    t.truthy(fs.existsSync(`${t.context.tmp}/dest/z`));
node-shelljs-0.8.3/test/cp.js-483-  });
##############################################
node-shelljs-0.8.3/test/cp.js-486-test('-u flag won\'t overwrite newer files', t => {
node-shelljs-0.8.3/test/cp.js:487:  shell.touch(`${t.context.tmp}/file1.js`);
node-shelljs-0.8.3/test/cp.js-488-  shell.cp('-u', 'test/resources/file1.js', t.context.tmp);
node-shelljs-0.8.3/test/cp.js-489-  t.falsy(shell.error());
node-shelljs-0.8.3/test/cp.js:490:  t.not(shell.cat('test/resources/file1.js').toString(), shell.cat(`${t.context.tmp}/file1.js`).toString());
node-shelljs-0.8.3/test/cp.js-491-});
##############################################
node-shelljs-0.8.3/test/cp.js-493-test('-u flag does overwrite older files', t => {
node-shelljs-0.8.3/test/cp.js:494:  shell.touch({ '-d': new Date(10) }, `${t.context.tmp}/file1.js`); // really old file
node-shelljs-0.8.3/test/cp.js-495-  shell.cp('-u', 'test/resources/file1.js', t.context.tmp);
node-shelljs-0.8.3/test/cp.js-496-  t.falsy(shell.error());
node-shelljs-0.8.3/test/cp.js:497:  t.is(shell.cat('test/resources/file1.js').toString(), shell.cat(`${t.context.tmp}/file1.js`).toString());
node-shelljs-0.8.3/test/cp.js-498-});
##############################################
node-shelljs-0.8.3/test/cp.js-500-test('-u flag works even if it\'s not overwriting a file', t => {
node-shelljs-0.8.3/test/cp.js:501:  t.falsy(fs.existsSync(`${t.context.tmp}/file1.js`));
node-shelljs-0.8.3/test/cp.js-502-  shell.cp('-u', 'test/resources/file1.js', t.context.tmp);
node-shelljs-0.8.3/test/cp.js-503-  t.falsy(shell.error());
node-shelljs-0.8.3/test/cp.js:504:  t.is(shell.cat('test/resources/file1.js').toString(), shell.cat(`${t.context.tmp}/file1.js`).toString());
node-shelljs-0.8.3/test/cp.js-505-});
##############################################
node-shelljs-0.8.3/test/cp.js-507-test('-u flag works correctly recursively', t => {
node-shelljs-0.8.3/test/cp.js:508:  shell.mkdir(`${t.context.tmp}/foo`);
node-shelljs-0.8.3/test/cp.js-509-  [1, 2, 3].forEach(num => {
node-shelljs-0.8.3/test/cp.js:510:    new shell.ShellString('old\n').to(`${t.context.tmp}/foo/file${num}`);
node-shelljs-0.8.3/test/cp.js:511:    shell.touch({ '-d': new Date(10) }, `${t.context.tmp}/foo/file${num}`);
node-shelljs-0.8.3/test/cp.js-512-  });
node-shelljs-0.8.3/test/cp.js:513:  shell.mkdir(`${t.context.tmp}/bar`);
node-shelljs-0.8.3/test/cp.js-514-  [1, 2, 3].forEach(num => {
node-shelljs-0.8.3/test/cp.js:515:    new shell.ShellString('new\n').to(`${t.context.tmp}/bar/file${num}`);
node-shelljs-0.8.3/test/cp.js:516:    shell.touch({ '-d': new Date(1000) }, `${t.context.tmp}/bar/file${num}`);
node-shelljs-0.8.3/test/cp.js-517-  });
node-shelljs-0.8.3/test/cp.js-518-  // put one new one in the foo directory
node-shelljs-0.8.3/test/cp.js:519:  new shell.ShellString('newest\n').to(`${t.context.tmp}/foo/file3`);
node-shelljs-0.8.3/test/cp.js:520:  shell.touch({ '-d': new Date(10000) }, `${t.context.tmp}/foo/file3`);
node-shelljs-0.8.3/test/cp.js:521:  shell.cp('-u', `${t.context.tmp}/foo/*`, `${t.context.tmp}/bar`);
node-shelljs-0.8.3/test/cp.js-522-  t.falsy(shell.error());
node-shelljs-0.8.3/test/cp.js:523:  t.is(shell.cat(`${t.context.tmp}/bar/*`).toString(), 'new\nnew\nnewest\n');
node-shelljs-0.8.3/test/cp.js-524-});
##############################################
node-shelljs-0.8.3/test/cp.js-527-  shell.cp('-R', 'test/resources/cp/symFolder', t.context.tmp);
node-shelljs-0.8.3/test/cp.js:528:  t.falsy(common.statNoFollowLinks(`${t.context.tmp}/symFolder`).isSymbolicLink());
node-shelljs-0.8.3/test/cp.js-529-});
##############################################
node-shelljs-0.8.3/test/cp.js-532-  shell.cp('test/resources/cp/links/sym.lnk', t.context.tmp);
node-shelljs-0.8.3/test/cp.js:533:  t.falsy(common.statNoFollowLinks(`${t.context.tmp}/sym.lnk`).isSymbolicLink());
node-shelljs-0.8.3/test/cp.js-534-});
##############################################
node-shelljs-0.8.3/test/cp.js-537-  shell.cp('-L', 'test/resources/cp/links/sym.lnk', t.context.tmp);
node-shelljs-0.8.3/test/cp.js:538:  t.falsy(common.statNoFollowLinks(`${t.context.tmp}/sym.lnk`).isSymbolicLink());
node-shelljs-0.8.3/test/cp.js-539-});
##############################################
node-shelljs-0.8.3/test/cp.js-542-  shell.cp('-LR', 'test/resources/cp/links/sym.lnk', t.context.tmp);
node-shelljs-0.8.3/test/cp.js:543:  t.falsy(common.statNoFollowLinks(`${t.context.tmp}/sym.lnk`).isSymbolicLink());
node-shelljs-0.8.3/test/cp.js-544-});
##############################################
node-shelljs-0.8.3/test/cp.js-547-  shell.cp('-LR', 'test/resources/cp/links', t.context.tmp);
node-shelljs-0.8.3/test/cp.js:548:  t.falsy(common.statNoFollowLinks(`${t.context.tmp}/links/sym.lnk`).isSymbolicLink());
node-shelljs-0.8.3/test/cp.js-549-});
##############################################
node-shelljs-0.8.3/test/cp.js-552-  shell.cp('-LP', 'test/resources/cp/links/sym.lnk', t.context.tmp);
node-shelljs-0.8.3/test/cp.js:553:  t.falsy(common.statNoFollowLinks(`${t.context.tmp}/sym.lnk`).isSymbolicLink());
node-shelljs-0.8.3/test/cp.js-554-  shell.cp('-LPR', 'test/resources/cp/links/sym.lnk', t.context.tmp);
node-shelljs-0.8.3/test/cp.js:555:  t.falsy(common.statNoFollowLinks(`${t.context.tmp}/sym.lnk`).isSymbolicLink());
node-shelljs-0.8.3/test/cp.js-556-});
##############################################
node-shelljs-0.8.3/test/cp.js-560-  const TMP = t.context.tmp;
node-shelljs-0.8.3/test/cp.js:561:  shell.mkdir(`${TMP}/foo`);
node-shelljs-0.8.3/test/cp.js-562-  for (let k = 0; k < 5; k++) {
node-shelljs-0.8.3/test/cp.js:563:    shell.mkdir(`${TMP}/foo/dir${k}`);
node-shelljs-0.8.3/test/cp.js-564-  }
node-shelljs-0.8.3/test/cp.js:565:  shell.cp('-r', `${TMP}/foo`, `${TMP}/bar`);
node-shelljs-0.8.3/test/cp.js:566:  t.is(shell.ls(`${TMP}/foo`).stdout, shell.ls(`${TMP}/bar`).stdout);
node-shelljs-0.8.3/test/cp.js-567-});
##############################################
node-shelljs-0.8.3/test/cp.js-578-  }
node-shelljs-0.8.3/test/cp.js:579:  shell.mkdir('-p', `${t.context.tmp}/0${directory}`);
node-shelljs-0.8.3/test/cp.js:580:  shell.cp('-r', `${t.context.tmp}/0`, `${t.context.tmp}/copytestdepth`);
node-shelljs-0.8.3/test/cp.js-581-  // Check full directory exists.
node-shelljs-0.8.3/test/cp.js:582:  t.truthy(shell.test('-d', `${t.context.tmp}/0/${directory}`));
node-shelljs-0.8.3/test/cp.js-583-  // Check full copy of directory does not exist.
node-shelljs-0.8.3/test/cp.js:584:  t.falsy(shell.test('-d', `${t.context.tmp}/copytestdepth${directory}`));
node-shelljs-0.8.3/test/cp.js-585-  // Check last directory to exist is below maxdepth.
node-shelljs-0.8.3/test/cp.js:586:  t.truthy(shell.test('-d', `${t.context.tmp}/copytestdepth${directory32deep}`));
node-shelljs-0.8.3/test/cp.js:587:  t.falsy(shell.test('-d', `${t.context.tmp}/copytestdepth${directory32deep}/32`));
node-shelljs-0.8.3/test/cp.js:588:  utils.skipOnWinForEPERM(shell.ln.bind(shell, '-s', `${t.context.tmp}/0`, `${t.context.tmp}/symlinktest`), () => {
node-shelljs-0.8.3/test/cp.js:589:    if (!shell.test('-L', `${t.context.tmp}/symlinktest`)) {
node-shelljs-0.8.3/test/cp.js-590-      t.fail();
##############################################
node-shelljs-0.8.3/test/cp.js-593-    // Create symlinks to check for cycle.
node-shelljs-0.8.3/test/cp.js:594:    shell.cd(`${t.context.tmp}/0/1/2/3/4`);
node-shelljs-0.8.3/test/cp.js-595-    t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/cp.js-603-
node-shelljs-0.8.3/test/cp.js:604:    shell.cp('-r', `${t.context.tmp}/0/1`, `${t.context.tmp}/copytestdepth`);
node-shelljs-0.8.3/test/cp.js-605-    t.falsy(shell.error());
node-shelljs-0.8.3/test/cp.js:606:    t.truthy(shell.test('-d', `${t.context.tmp}/copytestdepth/1/2/3/4/link/3/4/link/3/4`));
node-shelljs-0.8.3/test/cp.js-607-  });
##############################################
node-shelljs-0.8.3/test/cp.js-610-test('cp -L follows symlinks', t => {
node-shelljs-0.8.3/test/cp.js:611:  utils.skipOnWinForEPERM(shell.ln.bind(shell, '-s', `${t.context.tmp}/0`, `${t.context.tmp}/symlinktest`), () => {
node-shelljs-0.8.3/test/cp.js:612:    shell.mkdir('-p', `${t.context.tmp}/sub`);
node-shelljs-0.8.3/test/cp.js:613:    shell.mkdir('-p', `${t.context.tmp}/new`);
node-shelljs-0.8.3/test/cp.js:614:    shell.cp('-f', 'test/resources/file1.txt', `${t.context.tmp}/sub/file.txt`);
node-shelljs-0.8.3/test/cp.js:615:    shell.cd(`${t.context.tmp}/sub`);
node-shelljs-0.8.3/test/cp.js-616-    shell.ln('-s', 'file.txt', 'foo.lnk');
##############################################
node-shelljs-0.8.3/test/cp.js-633-test('Test with recursive option and symlinks.', t => {
node-shelljs-0.8.3/test/cp.js:634:  utils.skipOnWinForEPERM(shell.ln.bind(shell, '-s', `${t.context.tmp}/0`, `${t.context.tmp}/symlinktest`), () => {
node-shelljs-0.8.3/test/cp.js:635:    shell.mkdir('-p', `${t.context.tmp}/sub/sub1`);
node-shelljs-0.8.3/test/cp.js:636:    shell.cp('-f', 'test/resources/file1.txt', `${t.context.tmp}/sub/file.txt`);
node-shelljs-0.8.3/test/cp.js:637:    shell.cp('-f', 'test/resources/file1.txt', `${t.context.tmp}/sub/sub1/file.txt`);
node-shelljs-0.8.3/test/cp.js:638:    shell.cd(`${t.context.tmp}/sub`);
node-shelljs-0.8.3/test/cp.js-639-    shell.ln('-s', 'file.txt', 'foo.lnk');
##############################################
node-shelljs-0.8.3/test/cp.js-716-  // Ensure First file is copied
node-shelljs-0.8.3/test/cp.js:717:  t.is(shell.cat(`${t.context.tmp}/file1`).toString(), 'test1');
node-shelljs-0.8.3/test/cp.js-718-  t.is(
node-shelljs-0.8.3/test/cp.js-719-    result.stderr,
node-shelljs-0.8.3/test/cp.js:720:    `cp: will not overwrite just-created '${t.context.tmp}/file1' with 'test/resources/cp/file1'`
node-shelljs-0.8.3/test/cp.js-721-  );
##############################################
node-shelljs-0.8.3/test/cp.js-730-  // Ensure First file is copied
node-shelljs-0.8.3/test/cp.js:731:  t.is(shell.cat(`${t.context.tmp}/file1`).toString(), 'test1');
node-shelljs-0.8.3/test/cp.js-732-  t.is(
node-shelljs-0.8.3/test/cp.js-733-    result.stderr,
node-shelljs-0.8.3/test/cp.js:734:    `cp: will not overwrite just-created '${t.context.tmp}/file1' with 'test/resources/cp/file1'`
node-shelljs-0.8.3/test/cp.js-735-  );
##############################################
node-shelljs-0.8.3/test/cp.js-743-  // Ensure First file is copied
node-shelljs-0.8.3/test/cp.js:744:  t.is(shell.cat(`${t.context.tmp}/file1`).toString(), 'test1');
node-shelljs-0.8.3/test/cp.js-745-});
##############################################
node-shelljs-0.8.3/test/cp.js-751-    shell.cp('-r', 'test/resources/cp', t.context.tmp);
node-shelljs-0.8.3/test/cp.js:752:    shell.chmod('555', `${t.context.tmp}/cp/`);
node-shelljs-0.8.3/test/cp.js:753:    shell.chmod('555', `${t.context.tmp}/cp/dir_a`);
node-shelljs-0.8.3/test/cp.js:754:    shell.chmod('555', `${t.context.tmp}/cp/dir_b`);
node-shelljs-0.8.3/test/cp.js:755:    shell.chmod('555', `${t.context.tmp}/cp/a`);
node-shelljs-0.8.3/test/cp.js-756-
node-shelljs-0.8.3/test/cp.js:757:    const result = shell.cp('-r', `${t.context.tmp}/cp`, `${t.context.tmp}/cp_cp`);
node-shelljs-0.8.3/test/cp.js-758-    t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/cp.js-761-
node-shelljs-0.8.3/test/cp.js:762:    t.is(shell.ls('-R', `${t.context.tmp}/cp`) + '', shell.ls('-R', `${t.context.tmp}/cp_cp`) + '');
node-shelljs-0.8.3/test/cp.js:763:    t.is(fs.statSync(`${t.context.tmp}/cp_cp`).mode & parseInt('777', 8), parseInt('555', 8));
node-shelljs-0.8.3/test/cp.js:764:    t.is(fs.statSync(`${t.context.tmp}/cp_cp/dir_a`).mode & parseInt('777', 8), parseInt('555', 8));
node-shelljs-0.8.3/test/cp.js:765:    t.is(fs.statSync(`${t.context.tmp}/cp_cp/a`).mode & parseInt('777', 8), parseInt('555', 8));
node-shelljs-0.8.3/test/cp.js-766-
##############################################
node-shelljs-0.8.3/test/echo.js-66-  shell.mkdir(t.context.tmp);
node-shelljs-0.8.3/test/echo.js:67:  const tmp = `${t.context.tmp}/echo.txt`;
node-shelljs-0.8.3/test/echo.js-68-  const resultA = shell.echo('A').toEnd(tmp);
##############################################
node-shelljs-0.8.3/test/echo.js-125-  shell.mkdir(t.context.tmp);
node-shelljs-0.8.3/test/echo.js:126:  const tmp = `${t.context.tmp}/echo.txt`;
node-shelljs-0.8.3/test/echo.js-127-  const resultA = shell.echo('-n', 'A').toEnd(tmp);
##############################################
node-shelljs-0.8.3/test/exec.js-71-test('check if stdout goes to output', t => {
node-shelljs-0.8.3/test/exec.js:72:  const result = shell.exec(`${JSON.stringify(shell.config.execPath)} -e "console.log(1234);"`);
node-shelljs-0.8.3/test/exec.js-73-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/exec.js-78-test('check if stderr goes to output', t => {
node-shelljs-0.8.3/test/exec.js:79:  const result = shell.exec(`${JSON.stringify(shell.config.execPath)} -e "console.error(1234);"`);
node-shelljs-0.8.3/test/exec.js-80-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/exec.js-86-test('check if stdout + stderr go to output', t => {
node-shelljs-0.8.3/test/exec.js:87:  const result = shell.exec(`${JSON.stringify(shell.config.execPath)} -e "console.error(1234); console.log(666);"`);
node-shelljs-0.8.3/test/exec.js-88-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/exec.js-94-test('check if stdout + stderr should not be printed to console if silent', t => {
node-shelljs-0.8.3/test/exec.js:95:  shell.exec(`${JSON.stringify(shell.config.execPath)} -e "console.error(1234); console.log(666); process.exit(12);"`, { silent: true });
node-shelljs-0.8.3/test/exec.js-96-  const stdout = mocks.stdout();
##############################################
node-shelljs-0.8.3/test/exec.js-102-test('check exit code', t => {
node-shelljs-0.8.3/test/exec.js:103:  const result = shell.exec(`${JSON.stringify(shell.config.execPath)} -e "process.exit(12);"`);
node-shelljs-0.8.3/test/exec.js-104-  t.truthy(shell.error());
##############################################
node-shelljs-0.8.3/test/exec.js-109-  shell.cd('test/resources/external');
node-shelljs-0.8.3/test/exec.js:110:  const result = shell.exec(`${JSON.stringify(shell.config.execPath)} node_script.js`);
node-shelljs-0.8.3/test/exec.js-111-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/exec.js-140-test('set timeout option', t => {
node-shelljs-0.8.3/test/exec.js:141:  const result = shell.exec(`${JSON.stringify(shell.config.execPath)} test/resources/exec/slow.js 100`); // default timeout is ok
node-shelljs-0.8.3/test/exec.js-142-  t.falsy(shell.error());
node-shelljs-0.8.3/test/exec.js-143-  t.is(result.code, 0);
node-shelljs-0.8.3/test/exec.js:144:  shell.exec(`${JSON.stringify(shell.config.execPath)} test/resources/exec/slow.js 2000`, { timeout: 1000 }); // times out
node-shelljs-0.8.3/test/exec.js-145-  t.truthy(shell.error());
##############################################
node-shelljs-0.8.3/test/exec.js-150-  shell.env.FOO = 'Hello world';
node-shelljs-0.8.3/test/exec.js:151:  const result = shell.exec(process.platform !== 'win32' ? 'echo $FOO' : 'echo %FOO%');
node-shelljs-0.8.3/test/exec.js-152-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/exec.js-159-  utils.skipOnWin(t, () => {
node-shelljs-0.8.3/test/exec.js:160:    let result = shell.exec('echo $0');
node-shelljs-0.8.3/test/exec.js-161-    t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/exec.js-165-    if (bashPath) {
node-shelljs-0.8.3/test/exec.js:166:      result = shell.exec('echo $0', { shell: '/bin/bash' });
node-shelljs-0.8.3/test/exec.js-167-      t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/exec.js-182-test('encoding option works', t => {
node-shelljs-0.8.3/test/exec.js:183:  const result = shell.exec(`${JSON.stringify(shell.config.execPath)} -e "console.log(1234);"`, { encoding: 'buffer' });
node-shelljs-0.8.3/test/exec.js-184-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/exec.js-196-test.cb('no callback', t => {
node-shelljs-0.8.3/test/exec.js:197:  const c = shell.exec(`${JSON.stringify(shell.config.execPath)} -e "console.log(1234)"`, { async: true });
node-shelljs-0.8.3/test/exec.js-198-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/exec.js-203-test.cb('callback as 2nd argument', t => {
node-shelljs-0.8.3/test/exec.js:204:  shell.exec(`${JSON.stringify(shell.config.execPath)} -e "console.log(5678);"`, (code, stdout, stderr) => {
node-shelljs-0.8.3/test/exec.js-205-    t.is(code, 0);
##############################################
node-shelljs-0.8.3/test/exec.js-212-test.cb('callback as end argument', t => {
node-shelljs-0.8.3/test/exec.js:213:  shell.exec(`${JSON.stringify(shell.config.execPath)} -e "console.log(5566);"`, { async: true }, (code, stdout, stderr) => {
node-shelljs-0.8.3/test/exec.js-214-    t.is(code, 0);
##############################################
node-shelljs-0.8.3/test/exec.js-221-test.cb('callback as 3rd argument (silent:true)', t => {
node-shelljs-0.8.3/test/exec.js:222:  shell.exec(`${JSON.stringify(shell.config.execPath)} -e "console.log(5678);"`, { silent: true }, (code, stdout, stderr) => {
node-shelljs-0.8.3/test/exec.js-223-    t.is(code, 0);
##############################################
node-shelljs-0.8.3/test/exec.js-239-test.cb('encoding option works with async', t => {
node-shelljs-0.8.3/test/exec.js:240:  shell.exec(`${JSON.stringify(shell.config.execPath)} -e "console.log(5566);"`, { async: true, encoding: 'buffer' }, (code, stdout, stderr) => {
node-shelljs-0.8.3/test/exec.js-241-    t.is(code, 0);
##############################################
node-shelljs-0.8.3/test/global.js-35-test('rm', t => {
node-shelljs-0.8.3/test/global.js:36:  cp('-f', 'test/resources/file1', `${t.context.tmp}/file1`);
node-shelljs-0.8.3/test/global.js:37:  t.truthy(fs.existsSync(`${t.context.tmp}/file1`));
node-shelljs-0.8.3/test/global.js:38:  const result = rm(`${t.context.tmp}/file1`);
node-shelljs-0.8.3/test/global.js-39-  t.falsy(error());
node-shelljs-0.8.3/test/global.js-40-  t.is(result.code, 0);
node-shelljs-0.8.3/test/global.js:41:  t.falsy(fs.existsSync(`${t.context.tmp}/file1`));
node-shelljs-0.8.3/test/global.js-42-});
##############################################
node-shelljs-0.8.3/test/global.js-44-test('String.prototype is modified for global require', t => {
node-shelljs-0.8.3/test/global.js:45:  'foo'.to(`${t.context.tmp}/testfile.txt`);
node-shelljs-0.8.3/test/global.js:46:  t.is('foo', cat(`${t.context.tmp}/testfile.txt`).toString());
node-shelljs-0.8.3/test/global.js:47:  'bar'.toEnd(`${t.context.tmp}/testfile.txt`);
node-shelljs-0.8.3/test/global.js:48:  t.is('foobar', cat(`${t.context.tmp}/testfile.txt`).toString());
node-shelljs-0.8.3/test/global.js-49-});
##############################################
node-shelljs-0.8.3/test/grep.js-44-  t.falsy(fs.existsSync('asdfasdf')); // sanity check
node-shelljs-0.8.3/test/grep.js:45:  t.truthy(fs.existsSync(`${t.context.tmp}/file1`)); // sanity check
node-shelljs-0.8.3/test/grep.js:46:  const result = shell.grep(/asdf/g, `${t.context.tmp}/file1`, 'asdfasdf');
node-shelljs-0.8.3/test/grep.js-47-  t.truthy(shell.error());
##############################################
node-shelljs-0.8.3/test/ln.js-45-test('destination already exists', t => {
node-shelljs-0.8.3/test/ln.js:46:  const result = shell.ln(`${t.context.tmp}/file1`, `${t.context.tmp}/file2`);
node-shelljs-0.8.3/test/ln.js-47-  t.truthy(shell.error());
##############################################
node-shelljs-0.8.3/test/ln.js-51-test('non-existent source', t => {
node-shelljs-0.8.3/test/ln.js:52:  const result = shell.ln(`${t.context.tmp}/noexist`, `${t.context.tmp}/linkfile1`);
node-shelljs-0.8.3/test/ln.js-53-  t.truthy(shell.error());
##############################################
node-shelljs-0.8.3/test/ln.js-57-test('non-existent source (-sf)', t => {
node-shelljs-0.8.3/test/ln.js:58:  const result = shell.ln('-sf', 'no/exist', `${t.context.tmp}/badlink`);
node-shelljs-0.8.3/test/ln.js-59-  t.truthy(shell.error());
##############################################
node-shelljs-0.8.3/test/ln.js-63-test('non-existent source (-f)', t => {
node-shelljs-0.8.3/test/ln.js:64:  const result = shell.ln('-f', 'noexist', `${t.context.tmp}/badlink`);
node-shelljs-0.8.3/test/ln.js-65-  t.truthy(shell.error());
##############################################
node-shelljs-0.8.3/test/ln.js-73-test('basic usage', t => {
node-shelljs-0.8.3/test/ln.js:74:  const result = shell.ln(`${t.context.tmp}/file1`, `${t.context.tmp}/linkfile1`);
node-shelljs-0.8.3/test/ln.js:75:  t.truthy(fs.existsSync(`${t.context.tmp}/linkfile1`));
node-shelljs-0.8.3/test/ln.js-76-  t.is(
node-shelljs-0.8.3/test/ln.js:77:    fs.readFileSync(`${t.context.tmp}/file1`).toString(),
node-shelljs-0.8.3/test/ln.js:78:    fs.readFileSync(`${t.context.tmp}/linkfile1`).toString()
node-shelljs-0.8.3/test/ln.js-79-  );
node-shelljs-0.8.3/test/ln.js:80:  fs.writeFileSync(`${t.context.tmp}/file1`, 'new content 1');
node-shelljs-0.8.3/test/ln.js:81:  t.is(fs.readFileSync(`${t.context.tmp}/linkfile1`).toString(), 'new content 1');
node-shelljs-0.8.3/test/ln.js-82-  t.is(result.code, 0);
##############################################
node-shelljs-0.8.3/test/ln.js-85-test('With glob', t => {
node-shelljs-0.8.3/test/ln.js:86:  shell.rm(`${t.context.tmp}/linkfile1`);
node-shelljs-0.8.3/test/ln.js:87:  const result = shell.ln(`${t.context.tmp}/fi*1`, `${t.context.tmp}/linkfile1`);
node-shelljs-0.8.3/test/ln.js:88:  t.truthy(fs.existsSync(`${t.context.tmp}/linkfile1`));
node-shelljs-0.8.3/test/ln.js-89-  t.is(
node-shelljs-0.8.3/test/ln.js:90:    fs.readFileSync(`${t.context.tmp}/file1`).toString(),
node-shelljs-0.8.3/test/ln.js:91:    fs.readFileSync(`${t.context.tmp}/linkfile1`).toString()
node-shelljs-0.8.3/test/ln.js-92-  );
node-shelljs-0.8.3/test/ln.js:93:  fs.writeFileSync(`${t.context.tmp}/file1`, 'new content 1');
node-shelljs-0.8.3/test/ln.js:94:  t.is(fs.readFileSync(`${t.context.tmp}/linkfile1`).toString(), 'new content 1');
node-shelljs-0.8.3/test/ln.js-95-  t.is(result.code, 0);
##############################################
node-shelljs-0.8.3/test/ln.js-98-test('-s option', t => {
node-shelljs-0.8.3/test/ln.js:99:  utils.skipOnWinForEPERM(shell.ln.bind(shell, '-s', 'file2', `${t.context.tmp}/linkfile2`), () => {
node-shelljs-0.8.3/test/ln.js:100:    t.truthy(fs.existsSync(`${t.context.tmp}/linkfile2`));
node-shelljs-0.8.3/test/ln.js-101-    t.is(
node-shelljs-0.8.3/test/ln.js:102:      fs.readFileSync(`${t.context.tmp}/file2`).toString(),
node-shelljs-0.8.3/test/ln.js:103:      fs.readFileSync(`${t.context.tmp}/linkfile2`).toString()
node-shelljs-0.8.3/test/ln.js-104-    );
node-shelljs-0.8.3/test/ln.js:105:    fs.writeFileSync(`${t.context.tmp}/file2`, 'new content 2');
node-shelljs-0.8.3/test/ln.js:106:    t.is(fs.readFileSync(`${t.context.tmp}/linkfile2`).toString(), 'new content 2');
node-shelljs-0.8.3/test/ln.js-107-  });
##############################################
node-shelljs-0.8.3/test/ln.js-110-test('Symbolic link directory test', t => {
node-shelljs-0.8.3/test/ln.js:111:  shell.mkdir(`${t.context.tmp}/ln`);
node-shelljs-0.8.3/test/ln.js:112:  shell.touch(`${t.context.tmp}/ln/hello`);
node-shelljs-0.8.3/test/ln.js:113:  const result = shell.ln('-s', 'ln', `${t.context.tmp}/dir1`);
node-shelljs-0.8.3/test/ln.js:114:  t.truthy(fs.existsSync(`${t.context.tmp}/ln/hello`));
node-shelljs-0.8.3/test/ln.js:115:  t.truthy(fs.existsSync(`${t.context.tmp}/dir1/hello`));
node-shelljs-0.8.3/test/ln.js-116-  t.is(result.code, 0);
##############################################
node-shelljs-0.8.3/test/ln.js-140-test('-f option', t => {
node-shelljs-0.8.3/test/ln.js:141:  const result = shell.ln('-f', `${t.context.tmp}/file1.js`, `${t.context.tmp}/file2.js`);
node-shelljs-0.8.3/test/ln.js-142-  t.is(result.code, 0);
node-shelljs-0.8.3/test/ln.js:143:  t.truthy(fs.existsSync(`${t.context.tmp}/file2.js`));
node-shelljs-0.8.3/test/ln.js-144-  t.is(
node-shelljs-0.8.3/test/ln.js:145:    fs.readFileSync(`${t.context.tmp}/file1.js`).toString(),
node-shelljs-0.8.3/test/ln.js:146:    fs.readFileSync(`${t.context.tmp}/file2.js`).toString()
node-shelljs-0.8.3/test/ln.js-147-  );
node-shelljs-0.8.3/test/ln.js:148:  fs.writeFileSync(`${t.context.tmp}/file1.js`, 'new content js');
node-shelljs-0.8.3/test/ln.js:149:  t.is(fs.readFileSync(`${t.context.tmp}/file2.js`).toString(), 'new content js');
node-shelljs-0.8.3/test/ln.js-150-});
##############################################
node-shelljs-0.8.3/test/ln.js-152-test('-sf option', t => {
node-shelljs-0.8.3/test/ln.js:153:  utils.skipOnWinForEPERM(shell.ln.bind(shell, '-sf', 'file1.txt', `${t.context.tmp}/file2.txt`), () => {
node-shelljs-0.8.3/test/ln.js:154:    t.truthy(fs.existsSync(`${t.context.tmp}/file2.txt`));
node-shelljs-0.8.3/test/ln.js-155-    t.is(
node-shelljs-0.8.3/test/ln.js:156:      fs.readFileSync(`${t.context.tmp}/file1.txt`).toString(),
node-shelljs-0.8.3/test/ln.js:157:      fs.readFileSync(`${t.context.tmp}/file2.txt`).toString()
node-shelljs-0.8.3/test/ln.js-158-    );
node-shelljs-0.8.3/test/ln.js:159:    fs.writeFileSync(`${t.context.tmp}/file1.txt`, 'new content txt');
node-shelljs-0.8.3/test/ln.js:160:    t.is(fs.readFileSync(`${t.context.tmp}/file2.txt`).toString(), 'new content txt');
node-shelljs-0.8.3/test/ln.js-161-  });
##############################################
node-shelljs-0.8.3/test/ln.js-164-test('Abspath regression', t => {
node-shelljs-0.8.3/test/ln.js:165:  utils.skipOnWinForEPERM(shell.ln.bind(shell, '-sf', 'file1', path.resolve(`${t.context.tmp}/abspath`)), () => {
node-shelljs-0.8.3/test/ln.js:166:    t.truthy(fs.existsSync(`${t.context.tmp}/abspath`));
node-shelljs-0.8.3/test/ln.js-167-    t.is(
node-shelljs-0.8.3/test/ln.js:168:      fs.readFileSync(`${t.context.tmp}/file1`).toString(),
node-shelljs-0.8.3/test/ln.js:169:      fs.readFileSync(`${t.context.tmp}/abspath`).toString()
node-shelljs-0.8.3/test/ln.js-170-    );
node-shelljs-0.8.3/test/ln.js:171:    fs.writeFileSync(`${t.context.tmp}/file1`, 'new content 3');
node-shelljs-0.8.3/test/ln.js:172:    t.is(fs.readFileSync(`${t.context.tmp}/abspath`).toString(), 'new content 3');
node-shelljs-0.8.3/test/ln.js-173-  });
##############################################
node-shelljs-0.8.3/test/ln.js-176-test('Relative regression', t => {
node-shelljs-0.8.3/test/ln.js:177:  utils.skipOnWinForEPERM(shell.ln.bind(shell, '-sf', 'file1.txt', `${t.context.tmp}/file2.txt`), () => {
node-shelljs-0.8.3/test/ln.js:178:    shell.mkdir('-p', `${t.context.tmp}/new`);
node-shelljs-0.8.3/test/ln.js-179-    // Move the symlink first, as the reverse confuses `mv`.
node-shelljs-0.8.3/test/ln.js:180:    shell.mv(`${t.context.tmp}/file2.txt`, `${t.context.tmp}/new/file2.txt`);
node-shelljs-0.8.3/test/ln.js:181:    shell.mv(`${t.context.tmp}/file1.txt`, `${t.context.tmp}/new/file1.txt`);
node-shelljs-0.8.3/test/ln.js:182:    t.truthy(fs.existsSync(`${t.context.tmp}/new/file2.txt`));
node-shelljs-0.8.3/test/ln.js-183-    t.is(
node-shelljs-0.8.3/test/ln.js:184:      fs.readFileSync(`${t.context.tmp}/new/file1.txt`).toString(),
node-shelljs-0.8.3/test/ln.js:185:      fs.readFileSync(`${t.context.tmp}/new/file2.txt`).toString()
node-shelljs-0.8.3/test/ln.js-186-    );
node-shelljs-0.8.3/test/ln.js:187:    fs.writeFileSync(`${t.context.tmp}/new/file1.txt`, 'new content txt');
node-shelljs-0.8.3/test/ln.js:188:    t.is(fs.readFileSync(`${t.context.tmp}/new/file2.txt`).toString(), 'new content txt');
node-shelljs-0.8.3/test/ln.js-189-  });
##############################################
node-shelljs-0.8.3/test/ls.js-503-  t.truthy(result.toEnd);
node-shelljs-0.8.3/test/ls.js:504:  result.to(`${t.context.tmp}/testingToOutput.txt`);
node-shelljs-0.8.3/test/ls.js:505:  t.is(shell.cat(`${t.context.tmp}/testingToOutput.txt`).toString(), result.stdout);
node-shelljs-0.8.3/test/ls.js:506:  shell.rm(`${t.context.tmp}/testingToOutput.txt`);
node-shelljs-0.8.3/test/ls.js-507-});
##############################################
node-shelljs-0.8.3/test/mkdir.js-35-  t.is(result.code, 1);
node-shelljs-0.8.3/test/mkdir.js:36:  t.is(result.stderr, `mkdir: path already exists: ${t.context.tmp}`);
node-shelljs-0.8.3/test/mkdir.js-37-  t.is(common.statFollowLinks(t.context.tmp).mtime.toString(), mtime); // didn't mess with dir
##############################################
node-shelljs-0.8.3/test/mkdir.js-110-test('basic usage', t => {
node-shelljs-0.8.3/test/mkdir.js:111:  t.falsy(fs.existsSync(`${t.context.tmp}/t1`));
node-shelljs-0.8.3/test/mkdir.js:112:  const result = shell.mkdir(`${t.context.tmp}/t1`);
node-shelljs-0.8.3/test/mkdir.js-113-  t.falsy(shell.error());
node-shelljs-0.8.3/test/mkdir.js-114-  t.is(result.code, 0);
node-shelljs-0.8.3/test/mkdir.js:115:  t.truthy(fs.existsSync(`${t.context.tmp}/t1`));
node-shelljs-0.8.3/test/mkdir.js-116-});
##############################################
node-shelljs-0.8.3/test/mkdir.js-118-test('multiple dirs', t => {
node-shelljs-0.8.3/test/mkdir.js:119:  t.falsy(fs.existsSync(`${t.context.tmp}/t2`));
node-shelljs-0.8.3/test/mkdir.js:120:  t.falsy(fs.existsSync(`${t.context.tmp}/t3`));
node-shelljs-0.8.3/test/mkdir.js:121:  const result = shell.mkdir(`${t.context.tmp}/t2`, `${t.context.tmp}/t3`);
node-shelljs-0.8.3/test/mkdir.js-122-  t.falsy(shell.error());
node-shelljs-0.8.3/test/mkdir.js-123-  t.is(result.code, 0);
node-shelljs-0.8.3/test/mkdir.js:124:  t.truthy(fs.existsSync(`${t.context.tmp}/t2`));
node-shelljs-0.8.3/test/mkdir.js:125:  t.truthy(fs.existsSync(`${t.context.tmp}/t3`));
node-shelljs-0.8.3/test/mkdir.js-126-});
##############################################
node-shelljs-0.8.3/test/mkdir.js-128-test('one dir exists, the other does not', t => {
node-shelljs-0.8.3/test/mkdir.js:129:  shell.mkdir(`${t.context.tmp}/t1`);
node-shelljs-0.8.3/test/mkdir.js:130:  t.truthy(fs.existsSync(`${t.context.tmp}/t1`));
node-shelljs-0.8.3/test/mkdir.js:131:  t.falsy(fs.existsSync(`${t.context.tmp}/t4`));
node-shelljs-0.8.3/test/mkdir.js:132:  const result = shell.mkdir(`${t.context.tmp}/t1`, `${t.context.tmp}/t4`);
node-shelljs-0.8.3/test/mkdir.js-133-  t.is(result.code, 1);
node-shelljs-0.8.3/test/mkdir.js-134-  t.is(utils.numLines(shell.error()), 1);
node-shelljs-0.8.3/test/mkdir.js:135:  t.truthy(fs.existsSync(`${t.context.tmp}/t1`));
node-shelljs-0.8.3/test/mkdir.js:136:  t.truthy(fs.existsSync(`${t.context.tmp}/t4`));
node-shelljs-0.8.3/test/mkdir.js-137-});
##############################################
node-shelljs-0.8.3/test/mkdir.js-139-test('-p flag', t => {
node-shelljs-0.8.3/test/mkdir.js:140:  t.falsy(fs.existsSync(`${t.context.tmp}/a`));
node-shelljs-0.8.3/test/mkdir.js:141:  const result = shell.mkdir('-p', `${t.context.tmp}/a/b/c`);
node-shelljs-0.8.3/test/mkdir.js-142-  t.falsy(shell.error());
node-shelljs-0.8.3/test/mkdir.js-143-  t.is(result.code, 0);
node-shelljs-0.8.3/test/mkdir.js:144:  t.truthy(fs.existsSync(`${t.context.tmp}/a/b/c`));
node-shelljs-0.8.3/test/mkdir.js:145:  shell.rm('-Rf', `${t.context.tmp}/a`); // revert
node-shelljs-0.8.3/test/mkdir.js-146-});
##############################################
node-shelljs-0.8.3/test/mkdir.js-148-test('multiple dirs', t => {
node-shelljs-0.8.3/test/mkdir.js:149:  const result = shell.mkdir('-p', `${t.context.tmp}/zzza`,
node-shelljs-0.8.3/test/mkdir.js:150:    `${t.context.tmp}/zzzb`, `${t.context.tmp}/zzzc`);
node-shelljs-0.8.3/test/mkdir.js-151-  t.falsy(shell.error());
node-shelljs-0.8.3/test/mkdir.js-152-  t.is(result.code, 0);
node-shelljs-0.8.3/test/mkdir.js:153:  t.truthy(fs.existsSync(`${t.context.tmp}/zzza`));
node-shelljs-0.8.3/test/mkdir.js:154:  t.truthy(fs.existsSync(`${t.context.tmp}/zzzb`));
node-shelljs-0.8.3/test/mkdir.js:155:  t.truthy(fs.existsSync(`${t.context.tmp}/zzzc`));
node-shelljs-0.8.3/test/mkdir.js-156-});
##############################################
node-shelljs-0.8.3/test/mkdir.js-158-test('multiple dirs, array syntax', t => {
node-shelljs-0.8.3/test/mkdir.js:159:  const result = shell.mkdir('-p', [`${t.context.tmp}/yyya`,
node-shelljs-0.8.3/test/mkdir.js:160:    `${t.context.tmp}/yyyb`, `${t.context.tmp}/yyyc`]);
node-shelljs-0.8.3/test/mkdir.js-161-  t.falsy(shell.error());
node-shelljs-0.8.3/test/mkdir.js-162-  t.is(result.code, 0);
node-shelljs-0.8.3/test/mkdir.js:163:  t.truthy(fs.existsSync(`${t.context.tmp}/yyya`));
node-shelljs-0.8.3/test/mkdir.js:164:  t.truthy(fs.existsSync(`${t.context.tmp}/yyyb`));
node-shelljs-0.8.3/test/mkdir.js:165:  t.truthy(fs.existsSync(`${t.context.tmp}/yyyc`));
node-shelljs-0.8.3/test/mkdir.js-166-});
##############################################
node-shelljs-0.8.3/test/mkdir.js-168-test('globbed dir', t => {
node-shelljs-0.8.3/test/mkdir.js:169:  let result = shell.mkdir('-p', `${t.context.tmp}/mydir`);
node-shelljs-0.8.3/test/mkdir.js-170-  t.falsy(shell.error());
node-shelljs-0.8.3/test/mkdir.js-171-  t.is(result.code, 0);
node-shelljs-0.8.3/test/mkdir.js:172:  t.truthy(fs.existsSync(`${t.context.tmp}/mydir`));
node-shelljs-0.8.3/test/mkdir.js:173:  result = shell.mkdir('-p', `${t.context.tmp}/m*ir`);
node-shelljs-0.8.3/test/mkdir.js-174-  t.falsy(shell.error());
node-shelljs-0.8.3/test/mkdir.js-175-  t.is(result.code, 0);
node-shelljs-0.8.3/test/mkdir.js:176:  t.truthy(fs.existsSync(`${t.context.tmp}/mydir`));
node-shelljs-0.8.3/test/mkdir.js:177:  t.falsy(fs.existsSync(`${t.context.tmp}/m*ir`)); // doesn't create literal name
node-shelljs-0.8.3/test/mkdir.js-178-});
##############################################
node-shelljs-0.8.3/test/mkdir.js-180-test('non-normalized paths are still ok with -p', t => {
node-shelljs-0.8.3/test/mkdir.js:181:  const result = shell.mkdir('-p', `${t.context.tmp}/asdf/../asdf/./`);
node-shelljs-0.8.3/test/mkdir.js-182-  t.falsy(shell.error());
node-shelljs-0.8.3/test/mkdir.js-183-  t.is(result.code, 0);
node-shelljs-0.8.3/test/mkdir.js:184:  t.truthy(fs.existsSync(`${t.context.tmp}/asdf`));
node-shelljs-0.8.3/test/mkdir.js-185-});
##############################################
node-shelljs-0.8.3/test/mv.js-139-test('handles self OK', t => {
node-shelljs-0.8.3/test/mv.js:140:  const tmp2 = `${t.context.tmp}-2`;
node-shelljs-0.8.3/test/mv.js-141-  shell.mkdir(tmp2);
##############################################
node-shelljs-0.8.3/test/mv.js-143-  t.truthy(shell.error()); // there's an error, but not fatal
node-shelljs-0.8.3/test/mv.js:144:  t.truthy(fs.existsSync(`${tmp2}/file1`)); // moved OK
node-shelljs-0.8.3/test/mv.js-145-  t.is(result.code, 1);
node-shelljs-0.8.3/test/mv.js:146:  result = shell.mv(`${tmp2}/*`, '.'); // revert
node-shelljs-0.8.3/test/mv.js-147-  t.truthy(fs.existsSync('file1')); // moved OK
##############################################
node-shelljs-0.8.3/test/popd.js-128-    t.is(stdout, '');
node-shelljs-0.8.3/test/popd.js:129:    t.is(stderr, `${rootDir}\n`);
node-shelljs-0.8.3/test/popd.js-130-    t.is(process.cwd(), trail[0]);
##############################################
node-shelljs-0.8.3/test/pushd.js-341-    t.is(stdout, '');
node-shelljs-0.8.3/test/pushd.js:342:    t.is(stderr, `${path.resolve(rootDir, 'test/resources/pushd')} ${rootDir}\n`);
node-shelljs-0.8.3/test/pushd.js-343-    t.is(process.cwd(), trail[0]);
##############################################
node-shelljs-0.8.3/test/rm.js-38-test('cannot delete a directoy without recursive flag', t => {
node-shelljs-0.8.3/test/rm.js:39:  const result = shell.rm(`${t.context.tmp}/rm`);
node-shelljs-0.8.3/test/rm.js-40-  t.truthy(shell.error());
##############################################
node-shelljs-0.8.3/test/rm.js-94-test('simple rm', t => {
node-shelljs-0.8.3/test/rm.js:95:  t.truthy(fs.existsSync(`${t.context.tmp}/file1`));
node-shelljs-0.8.3/test/rm.js:96:  const result = shell.rm(`${t.context.tmp}/file1`);
node-shelljs-0.8.3/test/rm.js-97-  t.falsy(shell.error());
node-shelljs-0.8.3/test/rm.js-98-  t.is(result.code, 0);
node-shelljs-0.8.3/test/rm.js:99:  t.falsy(fs.existsSync(`${t.context.tmp}/file1`));
node-shelljs-0.8.3/test/rm.js-100-});
##############################################
node-shelljs-0.8.3/test/rm.js-102-test('recursive dir removal: -r option', t => {
node-shelljs-0.8.3/test/rm.js:103:  shell.mkdir('-p', `${t.context.tmp}/a/b/c`);
node-shelljs-0.8.3/test/rm.js:104:  t.truthy(fs.existsSync(`${t.context.tmp}/a/b/c`));
node-shelljs-0.8.3/test/rm.js:105:  const result = shell.rm('-rf', `${t.context.tmp}/a`);
node-shelljs-0.8.3/test/rm.js-106-  t.falsy(shell.error());
node-shelljs-0.8.3/test/rm.js-107-  t.is(result.code, 0);
node-shelljs-0.8.3/test/rm.js:108:  t.falsy(fs.existsSync(`${t.context.tmp}/a`));
node-shelljs-0.8.3/test/rm.js-109-});
##############################################
node-shelljs-0.8.3/test/rm.js-111-test('-R option does the same thing', t => {
node-shelljs-0.8.3/test/rm.js:112:  shell.mkdir('-p', `${t.context.tmp}/a/b/c`);
node-shelljs-0.8.3/test/rm.js:113:  t.truthy(fs.existsSync(`${t.context.tmp}/a/b/c`));
node-shelljs-0.8.3/test/rm.js:114:  const result = shell.rm('-Rf', `${t.context.tmp}/a`);
node-shelljs-0.8.3/test/rm.js-115-  t.falsy(shell.error());
node-shelljs-0.8.3/test/rm.js-116-  t.is(result.code, 0);
node-shelljs-0.8.3/test/rm.js:117:  t.falsy(fs.existsSync(`${t.context.tmp}/a`));
node-shelljs-0.8.3/test/rm.js-118-});
##############################################
node-shelljs-0.8.3/test/rm.js-120-test('recursive dir removal - absolute path', t => {
node-shelljs-0.8.3/test/rm.js:121:  shell.mkdir('-p', `${t.context.tmp}/a/b/c`);
node-shelljs-0.8.3/test/rm.js:122:  t.truthy(fs.existsSync(`${t.context.tmp}/a/b/c`));
node-shelljs-0.8.3/test/rm.js:123:  const result = shell.rm('-Rf', path.resolve(`./${t.context.tmp}/a`));
node-shelljs-0.8.3/test/rm.js-124-  t.falsy(shell.error());
node-shelljs-0.8.3/test/rm.js-125-  t.is(result.code, 0);
node-shelljs-0.8.3/test/rm.js:126:  t.falsy(fs.existsSync(`${t.context.tmp}/a`));
node-shelljs-0.8.3/test/rm.js-127-});
##############################################
node-shelljs-0.8.3/test/rm.js-129-test('wildcard', t => {
node-shelljs-0.8.3/test/rm.js:130:  const result = shell.rm(`${t.context.tmp}/file*`);
node-shelljs-0.8.3/test/rm.js-131-  t.falsy(shell.error());
node-shelljs-0.8.3/test/rm.js-132-  t.is(result.code, 0);
node-shelljs-0.8.3/test/rm.js:133:  t.falsy(fs.existsSync(`${t.context.tmp}/file1`));
node-shelljs-0.8.3/test/rm.js:134:  t.falsy(fs.existsSync(`${t.context.tmp}/file2`));
node-shelljs-0.8.3/test/rm.js:135:  t.falsy(fs.existsSync(`${t.context.tmp}/file1.js`));
node-shelljs-0.8.3/test/rm.js:136:  t.falsy(fs.existsSync(`${t.context.tmp}/file2.js`));
node-shelljs-0.8.3/test/rm.js-137-});
##############################################
node-shelljs-0.8.3/test/rm.js-139-test('recursive dir removal', t => {
node-shelljs-0.8.3/test/rm.js:140:  shell.mkdir('-p', `${t.context.tmp}/a/b/c`);
node-shelljs-0.8.3/test/rm.js:141:  shell.mkdir('-p', `${t.context.tmp}/b`);
node-shelljs-0.8.3/test/rm.js:142:  shell.mkdir('-p', `${t.context.tmp}/c`);
node-shelljs-0.8.3/test/rm.js:143:  shell.mkdir('-p', `${t.context.tmp}/.hidden`);
node-shelljs-0.8.3/test/rm.js:144:  t.truthy(fs.existsSync(`${t.context.tmp}/a/b/c`));
node-shelljs-0.8.3/test/rm.js:145:  t.truthy(fs.existsSync(`${t.context.tmp}/b`));
node-shelljs-0.8.3/test/rm.js:146:  t.truthy(fs.existsSync(`${t.context.tmp}/c`));
node-shelljs-0.8.3/test/rm.js:147:  t.truthy(fs.existsSync(`${t.context.tmp}/.hidden`));
node-shelljs-0.8.3/test/rm.js:148:  const result = shell.rm('-rf', `${t.context.tmp}/*`);
node-shelljs-0.8.3/test/rm.js-149-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/rm.js-156-test('recursive dir removal #2', t => {
node-shelljs-0.8.3/test/rm.js:157:  shell.mkdir('-p', `${t.context.tmp}/a/b/c`);
node-shelljs-0.8.3/test/rm.js:158:  shell.mkdir('-p', `${t.context.tmp}/b`);
node-shelljs-0.8.3/test/rm.js:159:  shell.mkdir('-p', `${t.context.tmp}/c`);
node-shelljs-0.8.3/test/rm.js:160:  shell.mkdir('-p', `${t.context.tmp}/.hidden`);
node-shelljs-0.8.3/test/rm.js:161:  t.truthy(fs.existsSync(`${t.context.tmp}/a/b/c`));
node-shelljs-0.8.3/test/rm.js:162:  t.truthy(fs.existsSync(`${t.context.tmp}/b`));
node-shelljs-0.8.3/test/rm.js:163:  t.truthy(fs.existsSync(`${t.context.tmp}/c`));
node-shelljs-0.8.3/test/rm.js:164:  t.truthy(fs.existsSync(`${t.context.tmp}/.hidden`));
node-shelljs-0.8.3/test/rm.js:165:  const result = shell.rm('-rf', `${t.context.tmp}/*`, `${t.context.tmp}/.*`);
node-shelljs-0.8.3/test/rm.js-166-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/rm.js-172-test('recursive dir removal - array-syntax', t => {
node-shelljs-0.8.3/test/rm.js:173:  shell.mkdir('-p', `${t.context.tmp}/a/b/c`);
node-shelljs-0.8.3/test/rm.js:174:  shell.mkdir('-p', `${t.context.tmp}/b`);
node-shelljs-0.8.3/test/rm.js:175:  shell.mkdir('-p', `${t.context.tmp}/c`);
node-shelljs-0.8.3/test/rm.js:176:  shell.mkdir('-p', `${t.context.tmp}/.hidden`);
node-shelljs-0.8.3/test/rm.js:177:  t.truthy(fs.existsSync(`${t.context.tmp}/a/b/c`));
node-shelljs-0.8.3/test/rm.js:178:  t.truthy(fs.existsSync(`${t.context.tmp}/b`));
node-shelljs-0.8.3/test/rm.js:179:  t.truthy(fs.existsSync(`${t.context.tmp}/c`));
node-shelljs-0.8.3/test/rm.js:180:  t.truthy(fs.existsSync(`${t.context.tmp}/.hidden`));
node-shelljs-0.8.3/test/rm.js:181:  const result = shell.rm('-rf', [`${t.context.tmp}/*`, `${t.context.tmp}/.*`]);
node-shelljs-0.8.3/test/rm.js-182-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/rm.js-188-test('removal of a read-only file (unforced)', t => {
node-shelljs-0.8.3/test/rm.js:189:  shell.mkdir('-p', `${t.context.tmp}/readonly`);
node-shelljs-0.8.3/test/rm.js:190:  shell.ShellString('asdf').to(`${t.context.tmp}/readonly/file1`);
node-shelljs-0.8.3/test/rm.js:191:  fs.chmodSync(`${t.context.tmp}/readonly/file1`, '0444'); // -r--r--r--
node-shelljs-0.8.3/test/rm.js:192:  shell.rm(`${t.context.tmp}/readonly/file1`);
node-shelljs-0.8.3/test/rm.js-193-  t.truthy(shell.error());
node-shelljs-0.8.3/test/rm.js:194:  t.truthy(fs.existsSync(`${t.context.tmp}/readonly/file1`)); // bash's rm always asks before removing read-only files
node-shelljs-0.8.3/test/rm.js-195-  // here we just assume "no"
##############################################
node-shelljs-0.8.3/test/rm.js-198-test('removal of a read-only file (forced)', t => {
node-shelljs-0.8.3/test/rm.js:199:  shell.mkdir('-p', `${t.context.tmp}/readonly`);
node-shelljs-0.8.3/test/rm.js:200:  shell.ShellString('asdf').to(`${t.context.tmp}/readonly/file2`);
node-shelljs-0.8.3/test/rm.js:201:  fs.chmodSync(`${t.context.tmp}/readonly/file2`, '0444'); // -r--r--r--
node-shelljs-0.8.3/test/rm.js:202:  shell.rm('-f', `${t.context.tmp}/readonly/file2`);
node-shelljs-0.8.3/test/rm.js-203-  t.falsy(shell.error());
node-shelljs-0.8.3/test/rm.js:204:  t.falsy(fs.existsSync(`${t.context.tmp}/readonly/file2`));
node-shelljs-0.8.3/test/rm.js-205-});
##############################################
node-shelljs-0.8.3/test/rm.js-207-test('removal of a tree containing read-only files (unforced)', t => {
node-shelljs-0.8.3/test/rm.js:208:  shell.mkdir('-p', `${t.context.tmp}/tree2`);
node-shelljs-0.8.3/test/rm.js:209:  shell.ShellString('asdf').to(`${t.context.tmp}/tree2/file1`);
node-shelljs-0.8.3/test/rm.js:210:  shell.ShellString('asdf').to(`${t.context.tmp}/tree2/file2`);
node-shelljs-0.8.3/test/rm.js:211:  fs.chmodSync(`${t.context.tmp}/tree2/file1`, '0444'); // -r--r--r--
node-shelljs-0.8.3/test/rm.js:212:  shell.rm('-r', `${t.context.tmp}/tree2`);
node-shelljs-0.8.3/test/rm.js-213-  t.truthy(shell.error());
node-shelljs-0.8.3/test/rm.js:214:  t.truthy(fs.existsSync(`${t.context.tmp}/tree2/file1`));
node-shelljs-0.8.3/test/rm.js:215:  t.falsy(fs.existsSync(`${t.context.tmp}/tree2/file2`));
node-shelljs-0.8.3/test/rm.js-216-});
##############################################
node-shelljs-0.8.3/test/rm.js-218-test('removal of a tree containing read-only files (forced)', t => {
node-shelljs-0.8.3/test/rm.js:219:  shell.mkdir('-p', `${t.context.tmp}/tree`);
node-shelljs-0.8.3/test/rm.js:220:  shell.ShellString('asdf').to(`${t.context.tmp}/tree/file1`);
node-shelljs-0.8.3/test/rm.js:221:  shell.ShellString('asdf').to(`${t.context.tmp}/tree/file2`);
node-shelljs-0.8.3/test/rm.js:222:  fs.chmodSync(`${t.context.tmp}/tree/file1`, '0444'); // -r--r--r--
node-shelljs-0.8.3/test/rm.js:223:  shell.rm('-rf', `${t.context.tmp}/tree`);
node-shelljs-0.8.3/test/rm.js-224-  t.falsy(shell.error());
node-shelljs-0.8.3/test/rm.js:225:  t.falsy(fs.existsSync(`${t.context.tmp}/tree`));
node-shelljs-0.8.3/test/rm.js-226-});
##############################################
node-shelljs-0.8.3/test/rm.js-230-  t => {
node-shelljs-0.8.3/test/rm.js:231:    shell.mkdir('-p', `${t.context.tmp}/tree3`);
node-shelljs-0.8.3/test/rm.js:232:    shell.mkdir('-p', `${t.context.tmp}/tree3/subtree`);
node-shelljs-0.8.3/test/rm.js:233:    shell.mkdir('-p', `${t.context.tmp}/tree3/.hidden`);
node-shelljs-0.8.3/test/rm.js:234:    shell.ShellString('asdf').to(`${t.context.tmp}/tree3/subtree/file`);
node-shelljs-0.8.3/test/rm.js:235:    shell.ShellString('asdf').to(`${t.context.tmp}/tree3/.hidden/file`);
node-shelljs-0.8.3/test/rm.js:236:    shell.ShellString('asdf').to(`${t.context.tmp}/tree3/file`);
node-shelljs-0.8.3/test/rm.js:237:    fs.chmodSync(`${t.context.tmp}/tree3/file`, '0444'); // -r--r--r--
node-shelljs-0.8.3/test/rm.js:238:    fs.chmodSync(`${t.context.tmp}/tree3/subtree/file`, '0444'); // -r--r--r--
node-shelljs-0.8.3/test/rm.js:239:    fs.chmodSync(`${t.context.tmp}/tree3/.hidden/file`, '0444'); // -r--r--r--
node-shelljs-0.8.3/test/rm.js:240:    shell.rm('-rf', `${t.context.tmp}/tree3/*`, `${t.context.tmp}/tree3/.*`); // erase dir contents
node-shelljs-0.8.3/test/rm.js:241:    t.is(shell.ls(`${t.context.tmp}/tree3`).length, 0);
node-shelljs-0.8.3/test/rm.js-242-  }
##############################################
node-shelljs-0.8.3/test/rm.js-247-  t => {
node-shelljs-0.8.3/test/rm.js:248:    shell.mkdir('-p', `${t.context.tmp}/tree4`);
node-shelljs-0.8.3/test/rm.js:249:    shell.mkdir('-p', `${t.context.tmp}/tree4/subtree`);
node-shelljs-0.8.3/test/rm.js:250:    shell.mkdir('-p', `${t.context.tmp}/tree4/.hidden`);
node-shelljs-0.8.3/test/rm.js:251:    shell.ShellString('asdf').to(`${t.context.tmp}/tree4/subtree/file`);
node-shelljs-0.8.3/test/rm.js:252:    shell.ShellString('asdf').to(`${t.context.tmp}/tree4/.hidden/file`);
node-shelljs-0.8.3/test/rm.js:253:    shell.ShellString('asdf').to(`${t.context.tmp}/tree4/file`);
node-shelljs-0.8.3/test/rm.js:254:    fs.chmodSync(`${t.context.tmp}/tree4/file`, '0444'); // -r--r--r--
node-shelljs-0.8.3/test/rm.js:255:    fs.chmodSync(`${t.context.tmp}/tree4/subtree/file`, '0444'); // -r--r--r--
node-shelljs-0.8.3/test/rm.js:256:    fs.chmodSync(`${t.context.tmp}/tree4/.hidden/file`, '0444'); // -r--r--r--
node-shelljs-0.8.3/test/rm.js:257:    shell.rm('-rf', `${t.context.tmp}/tree4`); // erase dir contents
node-shelljs-0.8.3/test/rm.js:258:    t.falsy(fs.existsSync(`${t.context.tmp}/tree4`));
node-shelljs-0.8.3/test/rm.js-259-  }
##############################################
node-shelljs-0.8.3/test/rm.js-262-test('remove symbolic link to a dir', t => {
node-shelljs-0.8.3/test/rm.js:263:  const result = shell.rm(`${t.context.tmp}/rm/link_to_a_dir`);
node-shelljs-0.8.3/test/rm.js-264-  t.falsy(shell.error());
node-shelljs-0.8.3/test/rm.js-265-  t.is(result.code, 0);
node-shelljs-0.8.3/test/rm.js:266:  t.falsy(fs.existsSync(`${t.context.tmp}/rm/link_to_a_dir`));
node-shelljs-0.8.3/test/rm.js:267:  t.truthy(fs.existsSync(`${t.context.tmp}/rm/a_dir`));
node-shelljs-0.8.3/test/rm.js-268-});
##############################################
node-shelljs-0.8.3/test/rm.js-271-  utils.skipOnWin(t, () => {
node-shelljs-0.8.3/test/rm.js:272:    const result = shell.rm('-rf', `${t.context.tmp}/rm/link_to_a_dir/`);
node-shelljs-0.8.3/test/rm.js-273-    t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/rm.js-276-    // Both the link and original dir should remain, but contents are deleted
node-shelljs-0.8.3/test/rm.js:277:    t.truthy(fs.existsSync(`${t.context.tmp}/rm/link_to_a_dir`));
node-shelljs-0.8.3/test/rm.js:278:    t.truthy(fs.existsSync(`${t.context.tmp}/rm/a_dir`));
node-shelljs-0.8.3/test/rm.js:279:    t.falsy(fs.existsSync(`${t.context.tmp}/rm/a_dir/a_file`));
node-shelljs-0.8.3/test/rm.js-280-  });
##############################################
node-shelljs-0.8.3/test/rm.js-284-  utils.skipOnWin(t, () => {
node-shelljs-0.8.3/test/rm.js:285:    t.truthy(shell.test('-L', `${t.context.tmp}/rm/fake.lnk`));
node-shelljs-0.8.3/test/rm.js:286:    const result = shell.rm(`${t.context.tmp}/rm/fake.lnk`);
node-shelljs-0.8.3/test/rm.js-287-    t.falsy(shell.error());
node-shelljs-0.8.3/test/rm.js-288-    t.is(result.code, 0);
node-shelljs-0.8.3/test/rm.js:289:    t.falsy(shell.test('-L', `${t.context.tmp}/rm/fake.lnk`));
node-shelljs-0.8.3/test/rm.js:290:    t.falsy(fs.existsSync(`${t.context.tmp}/rm/fake.lnk`));
node-shelljs-0.8.3/test/rm.js-291-  });
##############################################
node-shelljs-0.8.3/test/rm.js-294-test('recursive dir removal, for non-normalized path', t => {
node-shelljs-0.8.3/test/rm.js:295:  shell.mkdir('-p', `${t.context.tmp}/a/b/c`);
node-shelljs-0.8.3/test/rm.js:296:  t.truthy(fs.existsSync(`${t.context.tmp}/a/b/c`));
node-shelljs-0.8.3/test/rm.js:297:  const result = shell.rm('-rf', `${t.context.tmp}/a/.././a`);
node-shelljs-0.8.3/test/rm.js-298-  t.falsy(shell.error());
node-shelljs-0.8.3/test/rm.js-299-  t.is(result.code, 0);
node-shelljs-0.8.3/test/rm.js:300:  t.falsy(fs.existsSync(`${t.context.tmp}/a`));
node-shelljs-0.8.3/test/rm.js-301-});
##############################################
node-shelljs-0.8.3/test/sed.js-52-  t.falsy(fs.existsSync('asdfasdf')); // sanity check
node-shelljs-0.8.3/test/sed.js:53:  t.truthy(fs.existsSync(`${t.context.tmp}/file1`)); // sanity check
node-shelljs-0.8.3/test/sed.js:54:  const result = shell.sed(/asdf/g, 'nada', `${t.context.tmp}/file1`, 'asdfasdf');
node-shelljs-0.8.3/test/sed.js-55-  t.truthy(shell.error());
##############################################
node-shelljs-0.8.3/test/sed.js-64-test('search with a string', t => {
node-shelljs-0.8.3/test/sed.js:65:  const result = shell.sed('test1', 'hello', `${t.context.tmp}/file1`);
node-shelljs-0.8.3/test/sed.js-66-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/sed.js-71-test('search with a regex', t => {
node-shelljs-0.8.3/test/sed.js:72:  const result = shell.sed(/test1/, 'hello', `${t.context.tmp}/file1`);
node-shelljs-0.8.3/test/sed.js-73-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/sed.js-78-test('replace with a number instead of a string', t => {
node-shelljs-0.8.3/test/sed.js:79:  const result = shell.sed(/test1/, 1234, `${t.context.tmp}/file1`);
node-shelljs-0.8.3/test/sed.js-80-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/sed.js-86-  const replaceFun = match => match.toUpperCase() + match;
node-shelljs-0.8.3/test/sed.js:87:  const result = shell.sed(/test1/, replaceFun, `${t.context.tmp}/file1`);
node-shelljs-0.8.3/test/sed.js-88-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/sed.js-93-test('-i option', t => {
node-shelljs-0.8.3/test/sed.js:94:  const result = shell.sed('-i', /test1/, 'hello', `${t.context.tmp}/file1`);
node-shelljs-0.8.3/test/sed.js-95-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/sed.js-97-  t.is(result.toString(), 'hello');
node-shelljs-0.8.3/test/sed.js:98:  t.is(shell.cat(`${t.context.tmp}/file1`).toString(), 'hello');
node-shelljs-0.8.3/test/sed.js-99-});
##############################################
node-shelljs-0.8.3/test/sed.js-141-test('multiple file names', t => {
node-shelljs-0.8.3/test/sed.js:142:  const result = shell.sed('test', 'hello', `${t.context.tmp}/file1`,
node-shelljs-0.8.3/test/sed.js:143:    `${t.context.tmp}/file2`);
node-shelljs-0.8.3/test/sed.js-144-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/sed.js-149-test('array of file names (and try it out with a simple regex)', t => {
node-shelljs-0.8.3/test/sed.js:150:  const result = shell.sed(/t.*st/, 'hello', [`${t.context.tmp}/file1`,
node-shelljs-0.8.3/test/sed.js:151:    `${t.context.tmp}/file2`]);
node-shelljs-0.8.3/test/sed.js-152-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/sed.js-157-test('multiple file names, with in-place-replacement', t => {
node-shelljs-0.8.3/test/sed.js:158:  const result = shell.sed('-i', 'test', 'hello', [`${t.context.tmp}/file1`,
node-shelljs-0.8.3/test/sed.js:159:    `${t.context.tmp}/file2`]);
node-shelljs-0.8.3/test/sed.js-160-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/sed.js-162-  t.is(result.toString(), 'hello1\nhello2');
node-shelljs-0.8.3/test/sed.js:163:  t.is(shell.cat(`${t.context.tmp}/file1`).toString(), 'hello1');
node-shelljs-0.8.3/test/sed.js:164:  t.is(shell.cat(`${t.context.tmp}/file2`).toString(), 'hello2');
node-shelljs-0.8.3/test/sed.js-165-});
##############################################
node-shelljs-0.8.3/test/sed.js-167-test('glob file names, with in-place-replacement', t => {
node-shelljs-0.8.3/test/sed.js:168:  t.is(shell.cat(`${t.context.tmp}/file1.txt`).toString(), 'test1\n');
node-shelljs-0.8.3/test/sed.js:169:  t.is(shell.cat(`${t.context.tmp}/file2.txt`).toString(), 'test2\n');
node-shelljs-0.8.3/test/sed.js:170:  const result = shell.sed('-i', 'test', 'hello', `${t.context.tmp}/file*.txt`);
node-shelljs-0.8.3/test/sed.js-171-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/sed.js-173-  t.is(result.toString(), 'hello1\n\nhello2\n'); // TODO: fix sed's behavior
node-shelljs-0.8.3/test/sed.js:174:  t.is(shell.cat(`${t.context.tmp}/file1.txt`).toString(), 'hello1\n');
node-shelljs-0.8.3/test/sed.js:175:  t.is(shell.cat(`${t.context.tmp}/file2.txt`).toString(), 'hello2\n');
node-shelljs-0.8.3/test/sed.js-176-});
##############################################
node-shelljs-0.8.3/test/set.js-71-  shell.set('-f'); // disable globbing
node-shelljs-0.8.3/test/set.js:72:  shell.rm(`${t.context.tmp}/*.txt`);
node-shelljs-0.8.3/test/set.js-73-  t.truthy(shell.error()); // file '*.txt' doesn't exist, so rm() fails
node-shelljs-0.8.3/test/set.js-74-  shell.set('+f');
node-shelljs-0.8.3/test/set.js:75:  shell.rm(`${t.context.tmp}/*.txt`);
node-shelljs-0.8.3/test/set.js-76-  t.falsy(shell.error()); // globbing works, so rm succeeds
##############################################
node-shelljs-0.8.3/test/shjs.js-11-  const execPath = process.platform === 'win32'
node-shelljs-0.8.3/test/shjs.js:12:    ? `${JSON.stringify(shell.config.execPath)} `
node-shelljs-0.8.3/test/shjs.js-13-    : '';
node-shelljs-0.8.3/test/shjs.js-14-  const script = path.resolve(__dirname, 'resources', 'shjs', name);
node-shelljs-0.8.3/test/shjs.js:15:  return shell.exec(`${execPath}${binPath} ${script}`, { silent: true });
node-shelljs-0.8.3/test/shjs.js-16-}
##############################################
node-shelljs-0.8.3/test/to.js-43-test('can be chained', t => {
node-shelljs-0.8.3/test/to.js:44:  shell.ShellString('hello world').to(`${t.context.tmp}/to1`).to(`${t.context.tmp}/to2`);
node-shelljs-0.8.3/test/to.js:45:  let result = shell.cat(`${t.context.tmp}/to1`);
node-shelljs-0.8.3/test/to.js-46-  t.falsy(shell.error());
node-shelljs-0.8.3/test/to.js-47-  t.is(result.toString(), 'hello world');
node-shelljs-0.8.3/test/to.js:48:  result = shell.cat(`${t.context.tmp}/to2`);
node-shelljs-0.8.3/test/to.js-49-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/to.js-53-test('With a glob', t => {
node-shelljs-0.8.3/test/to.js:54:  shell.touch(`${t.context.tmp}/to1`);
node-shelljs-0.8.3/test/to.js:55:  shell.ShellString('goodbye').to(`${t.context.tmp}/t*1`);
node-shelljs-0.8.3/test/to.js:56:  t.falsy(fs.existsSync(`${t.context.tmp}/t*1`), 'globs are not interpreted literally');
node-shelljs-0.8.3/test/to.js:57:  const result = shell.cat(`${t.context.tmp}/to1`);
node-shelljs-0.8.3/test/to.js-58-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/toEnd.js-43-test('creates a new file', t => {
node-shelljs-0.8.3/test/toEnd.js:44:  t.falsy(fs.existsSync(`${t.context.tmp}/toEnd1`)); // Check file toEnd() creates does not already exist
node-shelljs-0.8.3/test/toEnd.js:45:  shell.ShellString('hello ').toEnd(`${t.context.tmp}/toEnd1`);
node-shelljs-0.8.3/test/toEnd.js:46:  t.truthy(fs.existsSync(`${t.context.tmp}/toEnd1`)); // Check that file was created
node-shelljs-0.8.3/test/toEnd.js:47:  const result = shell.cat(`${t.context.tmp}/toEnd1`);
node-shelljs-0.8.3/test/toEnd.js-48-  t.is(result.toString(), 'hello ');
##############################################
node-shelljs-0.8.3/test/toEnd.js-51-test('can be chained', t => {
node-shelljs-0.8.3/test/toEnd.js:52:  t.falsy(fs.existsSync(`${t.context.tmp}/toEnd1`));
node-shelljs-0.8.3/test/toEnd.js:53:  t.falsy(fs.existsSync(`${t.context.tmp}/toEnd2`));
node-shelljs-0.8.3/test/toEnd.js:54:  shell.ShellString('hello ').toEnd(`${t.context.tmp}/toEnd1`);
node-shelljs-0.8.3/test/toEnd.js-55-  shell.ShellString('world')
node-shelljs-0.8.3/test/toEnd.js:56:    .toEnd(`${t.context.tmp}/toEnd1`)
node-shelljs-0.8.3/test/toEnd.js:57:    .toEnd(`${t.context.tmp}/toEnd2`); // Write some more to the file
node-shelljs-0.8.3/test/toEnd.js:58:  const result1 = shell.cat(`${t.context.tmp}/toEnd1`);
node-shelljs-0.8.3/test/toEnd.js-59-  t.falsy(shell.error());
node-shelljs-0.8.3/test/toEnd.js-60-  t.is(result1.toString(), 'hello world'); // Check that the result is what we expect
node-shelljs-0.8.3/test/toEnd.js:61:  const result2 = shell.cat(`${t.context.tmp}/toEnd2`);
node-shelljs-0.8.3/test/toEnd.js-62-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/toEnd.js-66-test('With a glob', t => {
node-shelljs-0.8.3/test/toEnd.js:67:  shell.touch(`${t.context.tmp}/toEnd1`);
node-shelljs-0.8.3/test/toEnd.js:68:  shell.ShellString('good').to(`${t.context.tmp}/toE*1`);
node-shelljs-0.8.3/test/toEnd.js:69:  shell.ShellString('bye').toEnd(`${t.context.tmp}/toE*1`);
node-shelljs-0.8.3/test/toEnd.js-70-  t.falsy(
node-shelljs-0.8.3/test/toEnd.js:71:    fs.existsSync(`${t.context.tmp}/toE*1`)
node-shelljs-0.8.3/test/toEnd.js-72-  );
node-shelljs-0.8.3/test/toEnd.js:73:  const result = shell.cat(`${t.context.tmp}/toEnd1`);
node-shelljs-0.8.3/test/toEnd.js-74-  t.falsy(shell.error());
##############################################
node-shelljs-0.8.3/test/touch.js-29-  const str = crypto.randomBytes(Math.ceil(10 / 2)).toString('hex');
node-shelljs-0.8.3/test/touch.js:30:  const file = `${t.context.tmp}/${str}`;
node-shelljs-0.8.3/test/touch.js-31-  if (!noCreate) {
##############################################
node-shelljs-0.8.3/test/touch.js-74-test('handles globs correctly', t => {
node-shelljs-0.8.3/test/touch.js:75:  shell.touch(`${t.context.tmp}/file.txt`);
node-shelljs-0.8.3/test/touch.js:76:  shell.touch(`${t.context.tmp}/file.js`);
node-shelljs-0.8.3/test/touch.js:77:  const result = shell.touch(`${t.context.tmp}/file*`);
node-shelljs-0.8.3/test/touch.js-78-  t.is(result.code, 0);
node-shelljs-0.8.3/test/touch.js:79:  const files = shell.ls(`${t.context.tmp}/file*`);
node-shelljs-0.8.3/test/touch.js:80:  t.truthy(files.indexOf(`${t.context.tmp}/file.txt`) > -1);
node-shelljs-0.8.3/test/touch.js:81:  t.truthy(files.indexOf(`${t.context.tmp}/file.js`) > -1);
node-shelljs-0.8.3/test/touch.js-82-  t.is(files.length, 2);
##############################################
node-shelljs-0.8.3/test/utils/utils.js-63-      chalk.yellow('Warning: skipping platform-dependent test ') +
node-shelljs-0.8.3/test/utils/utils.js:64:      chalk.bold.white(`'${t._test.title}'`) +
node-shelljs-0.8.3/test/utils/utils.js-65-      '\n'