electron/spec/modules-spec.js

48 lines
1.3 KiB
JavaScript
Raw Normal View History

2016-01-19 22:49:40 +00:00
const assert = require('assert');
const path = require('path');
const temp = require('temp');
2016-01-12 02:40:23 +00:00
describe('third-party module', function() {
var fixtures = path.join(__dirname, 'fixtures');
2016-01-12 02:40:23 +00:00
temp.track();
2016-01-12 02:40:23 +00:00
if (process.platform !== 'win32' || process.execPath.toLowerCase().indexOf('\\out\\d\\') === -1) {
describe('runas', function() {
it('can be required in renderer', function() {
2016-02-17 01:39:11 +00:00
require('runas');
2016-01-12 02:40:23 +00:00
});
2016-02-17 01:39:11 +00:00
it('can be required in node binary', function(done) {
var runas = path.join(fixtures, 'module', 'runas.js');
var child = require('child_process').fork(runas);
child.on('message', function(msg) {
2016-01-12 02:40:23 +00:00
assert.equal(msg, 'ok');
2016-02-17 01:39:11 +00:00
done();
2016-01-12 02:40:23 +00:00
});
});
});
2016-01-12 02:40:23 +00:00
describe('ffi', function() {
2016-02-17 01:39:11 +00:00
it('does not crash', function() {
var ffi = require('ffi');
var libm = ffi.Library('libm', {
2016-01-12 02:40:23 +00:00
ceil: ['double', ['double']]
});
2016-02-17 01:39:11 +00:00
assert.equal(libm.ceil(1.5), 2);
2016-01-12 02:40:23 +00:00
});
});
}
2016-02-17 01:39:11 +00:00
describe('q', function() {
var Q = require('q');
describe('Q.when', function() {
it('emits the fullfil callback', function(done) {
Q(true).then(function(val) {
2016-01-12 02:40:23 +00:00
assert.equal(val, true);
2016-02-17 01:39:11 +00:00
done();
2016-01-12 02:40:23 +00:00
});
});
});
});
});