blob: a15365b784ebd8a78655f6f3570ec01ab42a866e [file] [edit]
'use strict';
require('../common');
// This tests Module._stat.
const Module = require('module');
const fs = require('fs');
const tmpdir = require('../common/tmpdir');
const assert = require('assert');
const directory = tmpdir.resolve('directory');
const doesNotExist = tmpdir.resolve('does-not-exist');
const file = tmpdir.resolve('file.js');
tmpdir.refresh();
fs.writeFileSync(file, "module.exports = { a: 'b' }");
fs.mkdirSync(directory);
assert.strictEqual(Module._stat(directory), 1); // Returns 1 for directories.
assert.strictEqual(Module._stat(file), 0); // Returns 0 for files.
assert.ok(Module._stat(doesNotExist) < 0); // Returns a negative integer for any other kind of strings.
// TODO(RaisinTen): Add tests that make sure that Module._stat() does not crash when called
// with a non-string data type. It crashes currently.