Spamworldpro Mini Shell
Spamworldpro


Server : Apache
System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64
User : corals ( 1002)
PHP Version : 7.4.33
Disable Function : exec,passthru,shell_exec,system
Directory :  /home/corals/mets-rebuild.corals.io/wp-content/metras.v32.1/node_modules/optimist/test/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/corals/mets-rebuild.corals.io/wp-content/metras.v32.1/node_modules/optimist/test/_.js
var spawn = require('child_process').spawn;
var test = require('tap').test;

test('dotSlashEmpty', testCmd('./bin.js', []));

test('dotSlashArgs', testCmd('./bin.js', [ 'a', 'b', 'c' ]));

test('nodeEmpty', testCmd('node bin.js', []));

test('nodeArgs', testCmd('node bin.js', [ 'x', 'y', 'z' ]));

test('whichNodeEmpty', function (t) {
    var which = spawn('which', ['node']);
    
    which.stdout.on('data', function (buf) {
        t.test(
            testCmd(buf.toString().trim() + ' bin.js', [])
        );
        t.end();
    });
    
    which.stderr.on('data', function (err) {
        assert.error(err);
        t.end();
    });
});

test('whichNodeArgs', function (t) {
    var which = spawn('which', ['node']);

    which.stdout.on('data', function (buf) {
        t.test(
            testCmd(buf.toString().trim() + ' bin.js', [ 'q', 'r' ])
        );
        t.end();
    });
    
    which.stderr.on('data', function (err) {
        t.error(err);
        t.end();
    });
});

function testCmd (cmd, args) {

    return function (t) {
        var to = setTimeout(function () {
            assert.fail('Never got stdout data.')
        }, 5000);
        
        var oldDir = process.cwd();
        process.chdir(__dirname + '/_');
        
        var cmds = cmd.split(' ');
        
        var bin = spawn(cmds[0], cmds.slice(1).concat(args.map(String)));
        process.chdir(oldDir);
        
        bin.stderr.on('data', function (err) {
            t.error(err);
            t.end();
        });
        
        bin.stdout.on('data', function (buf) {
            clearTimeout(to);
            var _ = JSON.parse(buf.toString());
            t.same(_.map(String), args.map(String));
            t.end();
        });
    };
}

Spamworldpro Mini