pm2/test/programmatic/dump.mocha.js
2019-04-24 00:46:24 +02:00

93 lines
1.9 KiB
JavaScript

//process.env.NODE_ENV ='test';
var PM2 = require('../..');
var should = require('should');
var path = require('path');
describe('PM2 programmatic calls', function() {
var proc1 = null;
var procs = [];
var bus = null;
var pm2 = new PM2.custom({
cwd : __dirname + '/../fixtures'
});
after(function(done) {
pm2.delete('all', function(err, ret) {
// clean dump file
pm2.clearDump(function(err) {
pm2.kill(done);
});
});
});
before(function(done) {
pm2.connect(function() {
pm2.launchBus(function(err, _bus) {
bus = _bus;
pm2.delete('all', function(err, ret) {
done();
});
});
});
});
it('should start a script', function(done) {
pm2.start({
script : './child.js',
name : 'child',
instances : 1
}, function(err, data) {
proc1 = data[0];
should(err).be.null()
done();
});
});
it('should save/dump all processes', function(done) {
pm2.dump(function(err, ret) {
should(err).be.null()
done();
});
});
it('should delete processes', function(done) {
pm2.delete('all', function(err, ret) {
should(err).be.null()
pm2.list(function(err, ret) {
should(err).be.null()
ret.length.should.eql(0);
done();
});
});
});
it('should not save/dump if 0 processes', function(done) {
pm2.dump(function(err, ret) {
should(err).not.be.null()
done();
});
});
it('should save/dump if 0 processes AND --FORCE', function(done) {
pm2.dump(true, function(err, ret) {
should(err).be.null()
done();
});
});
it('should resurrect 0 processes', function(done) {
pm2.resurrect(function(err, ret) {
should(err).be.null()
pm2.list(function(err, ret) {
should(err).be.null()
ret.length.should.eql(0);
done();
});
});
});
})