summaryrefslogtreecommitdiffstats
path: root/node_modules/node-gyp/test/test-configure-python.js
diff options
context:
space:
mode:
authorGravatar Piotr Russ <mail@pruss.it> 2020-11-16 00:10:28 +0100
committerGravatar Piotr Russ <mail@pruss.it> 2020-11-16 00:10:28 +0100
commite06ec920f7a5d784e674c4c4b4e6d1da3dc7391d (patch)
tree55713f725f77b44ebfec86e4eec3ce33e71458ca /node_modules/node-gyp/test/test-configure-python.js
downloadwebsite_creator-e06ec920f7a5d784e674c4c4b4e6d1da3dc7391d.tar.gz
website_creator-e06ec920f7a5d784e674c4c4b4e6d1da3dc7391d.tar.bz2
website_creator-e06ec920f7a5d784e674c4c4b4e6d1da3dc7391d.zip
api, login, auth
Diffstat (limited to 'node_modules/node-gyp/test/test-configure-python.js')
-rw-r--r--node_modules/node-gyp/test/test-configure-python.js74
1 files changed, 74 insertions, 0 deletions
diff --git a/node_modules/node-gyp/test/test-configure-python.js b/node_modules/node-gyp/test/test-configure-python.js
new file mode 100644
index 0000000..f235bdb
--- /dev/null
+++ b/node_modules/node-gyp/test/test-configure-python.js
@@ -0,0 +1,74 @@
+'use strict'
+
+var test = require('tape')
+var path = require('path')
+var gyp = require('../lib/node-gyp')
+var requireInject = require('require-inject')
+var configure = requireInject('../lib/configure', {
+ 'graceful-fs': {
+ 'openSync': function (file, mode) { return 0; },
+ 'closeSync': function (fd) { },
+ 'writeFile': function (file, data, cb) { cb() },
+ 'stat': function (file, cb) { cb(null, {}) }
+ }
+})
+
+var EXPECTED_PYPATH = path.join(__dirname, '..', 'gyp', 'pylib')
+var SEPARATOR = process.platform == 'win32' ? ';' : ':'
+var SPAWN_RESULT = { on: function () { } }
+
+test('configure PYTHONPATH with no existing env', function (t) {
+ t.plan(1)
+
+ delete process.env.PYTHONPATH
+
+ var prog = gyp()
+ prog.parseArgv([])
+ prog.spawn = function () {
+ t.equal(process.env.PYTHONPATH, EXPECTED_PYPATH)
+ return SPAWN_RESULT
+ }
+ configure(prog, [], t.fail)
+})
+
+test('configure PYTHONPATH with existing env of one dir', function (t) {
+ t.plan(2)
+
+ var existingPath = path.join('a', 'b')
+ process.env.PYTHONPATH = existingPath
+
+ var prog = gyp()
+ prog.parseArgv([])
+ prog.spawn = function () {
+
+ t.equal(process.env.PYTHONPATH, [EXPECTED_PYPATH, existingPath].join(SEPARATOR))
+
+ var dirs = process.env.PYTHONPATH.split(SEPARATOR)
+ t.deepEqual(dirs, [EXPECTED_PYPATH, existingPath])
+
+ return SPAWN_RESULT
+ }
+ configure(prog, [], t.fail)
+})
+
+test('configure PYTHONPATH with existing env of multiple dirs', function (t) {
+ t.plan(2)
+
+ var pythonDir1 = path.join('a', 'b')
+ var pythonDir2 = path.join('b', 'c')
+ var existingPath = [pythonDir1, pythonDir2].join(SEPARATOR)
+ process.env.PYTHONPATH = existingPath
+
+ var prog = gyp()
+ prog.parseArgv([])
+ prog.spawn = function () {
+
+ t.equal(process.env.PYTHONPATH, [EXPECTED_PYPATH, existingPath].join(SEPARATOR))
+
+ var dirs = process.env.PYTHONPATH.split(SEPARATOR)
+ t.deepEqual(dirs, [EXPECTED_PYPATH, pythonDir1, pythonDir2])
+
+ return SPAWN_RESULT
+ }
+ configure(prog, [], t.fail)
+})