UNPKG

koffi

Version:

Fast and simple C FFI (foreign function interface) for Node.js

46 lines (38 loc) 1.04 kB
'use strict'; const assert = require('assert'); const testUtil = require('./testUtil'); module.exports = require('./common').runTest(test); function test (binding) { return testUtil.runGCTests([ 'Plain C string', () => { const sum = binding.run_script.plainString(); assert.strictEqual(sum, 1 + 2 + 3); }, 'std::string', () => { const sum = binding.run_script.stdString(); assert.strictEqual(sum, 1 + 2 + 3); }, 'JavaScript string', () => { const sum = binding.run_script.jsString('1 + 2 + 3'); assert.strictEqual(sum, 1 + 2 + 3); }, 'JavaScript, but not a string', () => { assert.throws(() => { binding.run_script.jsString(true); }, { name: 'TypeError', message: 'A string was expected' }); }, 'With context', () => { const a = 1; const b = 2; const c = 3; const sum = binding.run_script.withContext('a + b + c', { a, b, c }); assert.strictEqual(sum, a + b + c); } ]); }