Pathologic was missing because of a .git folder inside.
[yaffs-website] / node_modules / osenv / test / windows.js
1 // only run this test on windows
2 // pretending to be another platform is too hacky, since it breaks
3 // how the underlying system looks up module paths and runs
4 // child processes, and all that stuff is cached.
5 if (process.platform !== 'win32') {
6   console.log('TAP version 13\n' +
7               '1..0 # Skip windows tests, this is not windows\n')
8   return
9 }
10
11 // load this before clubbing the platform name.
12 var tap = require('tap')
13
14 process.env.windir = 'c:\\windows'
15 process.env.USERDOMAIN = 'some-domain'
16 process.env.USERNAME = 'sirUser'
17 process.env.USERPROFILE = 'C:\\Users\\sirUser'
18 process.env.COMPUTERNAME = 'my-machine'
19 process.env.TMPDIR = 'C:\\tmpdir'
20 process.env.TMP = 'C:\\tmp'
21 process.env.TEMP = 'C:\\temp'
22 process.env.Path = 'C:\\Program Files\\;C:\\Binary Stuff\\bin'
23 process.env.PROMPT = '(o_o) $ '
24 process.env.EDITOR = 'edit'
25 process.env.VISUAL = 'visualedit'
26 process.env.ComSpec = 'some-com'
27
28 tap.test('basic windows sanity test', function (t) {
29   var osenv = require('../osenv.js')
30
31   t.equal(osenv.user(),
32           process.env.USERDOMAIN + '\\' + process.env.USERNAME)
33   t.equal(osenv.home(), process.env.USERPROFILE)
34   t.equal(osenv.hostname(), process.env.COMPUTERNAME)
35   t.same(osenv.path(), process.env.Path.split(';'))
36   t.equal(osenv.prompt(), process.env.PROMPT)
37   t.equal(osenv.tmpdir(), process.env.TMPDIR)
38
39   // mildly evil, but it's for a test.
40   process.env.TMPDIR = ''
41   delete require.cache[require.resolve('../osenv.js')]
42   var osenv = require('../osenv.js')
43   t.equal(osenv.tmpdir(), process.env.TMP)
44
45   process.env.TMP = ''
46   delete require.cache[require.resolve('../osenv.js')]
47   var osenv = require('../osenv.js')
48   t.equal(osenv.tmpdir(), process.env.TEMP)
49
50   process.env.TEMP = ''
51   delete require.cache[require.resolve('../osenv.js')]
52   var osenv = require('../osenv.js')
53   osenv.home = function () { return null }
54   t.equal(osenv.tmpdir(), 'c:\\windows\\temp')
55
56   t.equal(osenv.editor(), 'edit')
57   process.env.EDITOR = ''
58   delete require.cache[require.resolve('../osenv.js')]
59   var osenv = require('../osenv.js')
60   t.equal(osenv.editor(), 'visualedit')
61
62   process.env.VISUAL = ''
63   delete require.cache[require.resolve('../osenv.js')]
64   var osenv = require('../osenv.js')
65   t.equal(osenv.editor(), 'notepad.exe')
66
67   t.equal(osenv.shell(), 'some-com')
68   process.env.ComSpec = ''
69   delete require.cache[require.resolve('../osenv.js')]
70   var osenv = require('../osenv.js')
71   t.equal(osenv.shell(), 'cmd')
72
73   t.end()
74 })