summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRich Trott <rtrott@gmail.com>2018-05-20 21:53:51 -0700
committerRich Trott <rtrott@gmail.com>2018-05-27 22:57:51 -0700
commit6e1324e4cfd28ee1ddcc8a6957f6134948b268ce (patch)
tree8d6a05588a9abca4ac4ab9acd89de29cce5f415d
parentcfc3866810f94043ebe9fa0b0a0b8f23ad81fc19 (diff)
downloadandroid-node-v8-6e1324e4cfd28ee1ddcc8a6957f6134948b268ce.tar.gz
android-node-v8-6e1324e4cfd28ee1ddcc8a6957f6134948b268ce.tar.bz2
android-node-v8-6e1324e4cfd28ee1ddcc8a6957f6134948b268ce.zip
test: isolate unusual assert test in its own file
test-assert.js contains a test that writes to the source tree, requires an internal module, and depends on modules not needed by the plethora of other test cases in the file. Move it to its own file so that there are not side effects in test-assert.js and so that it can be refactored to not write to the source tree. PR-URL: https://github.com/nodejs/node/pull/20861 Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
-rw-r--r--test/parallel/test-assert-builtins-not-read-from-filesystem.js44
-rw-r--r--test/parallel/test-assert.js39
2 files changed, 44 insertions, 39 deletions
diff --git a/test/parallel/test-assert-builtins-not-read-from-filesystem.js b/test/parallel/test-assert-builtins-not-read-from-filesystem.js
new file mode 100644
index 0000000000..154dc3b33e
--- /dev/null
+++ b/test/parallel/test-assert-builtins-not-read-from-filesystem.js
@@ -0,0 +1,44 @@
+// Flags: --expose-internals
+
+'use strict';
+
+require('../common');
+
+const assert = require('assert');
+const EventEmitter = require('events');
+const { errorCache } = require('internal/assert');
+const { writeFileSync, unlinkSync } = require('fs');
+
+// Do not read filesystem for error messages in builtin modules.
+{
+ const e = new EventEmitter();
+
+ e.on('hello', assert);
+
+ let threw = false;
+ try {
+ e.emit('hello', false);
+ } catch (err) {
+ const frames = err.stack.split('\n');
+ const [, filename, line, column] = frames[1].match(/\((.+):(\d+):(\d+)\)/);
+ // Reset the cache to check again
+ const size = errorCache.size;
+ errorCache.delete(`${filename}${line - 1}${column - 1}`);
+ assert.strictEqual(errorCache.size, size - 1);
+ const data = `${'\n'.repeat(line - 1)}${' '.repeat(column - 1)}` +
+ 'ok(failed(badly));';
+ try {
+ writeFileSync(filename, data);
+ assert.throws(
+ () => e.emit('hello', false),
+ {
+ message: 'false == true'
+ }
+ );
+ threw = true;
+ } finally {
+ unlinkSync(filename);
+ }
+ }
+ assert(threw);
+}
diff --git a/test/parallel/test-assert.js b/test/parallel/test-assert.js
index 56489b9e6e..12ae824757 100644
--- a/test/parallel/test-assert.js
+++ b/test/parallel/test-assert.js
@@ -19,17 +19,12 @@
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
// USE OR OTHER DEALINGS IN THE SOFTWARE.
-// Flags: --expose-internals
-
'use strict';
/* eslint-disable node-core/prefer-common-expectserror */
const common = require('../common');
const assert = require('assert');
-const EventEmitter = require('events');
-const { errorCache } = require('internal/assert');
-const { writeFileSync, unlinkSync } = require('fs');
const { inspect } = require('util');
const a = assert;
@@ -793,40 +788,6 @@ common.expectsError(
}
);
-// Do not try to check Node.js modules.
-{
- const e = new EventEmitter();
-
- e.on('hello', assert);
-
- let threw = false;
- try {
- e.emit('hello', false);
- } catch (err) {
- const frames = err.stack.split('\n');
- const [, filename, line, column] = frames[1].match(/\((.+):(\d+):(\d+)\)/);
- // Reset the cache to check again
- const size = errorCache.size;
- errorCache.delete(`${filename}${line - 1}${column - 1}`);
- assert.strictEqual(errorCache.size, size - 1);
- const data = `${'\n'.repeat(line - 1)}${' '.repeat(column - 1)}` +
- 'ok(failed(badly));';
- try {
- writeFileSync(filename, data);
- assert.throws(
- () => e.emit('hello', false),
- {
- message: 'false == true'
- }
- );
- threw = true;
- } finally {
- unlinkSync(filename);
- }
- }
- assert(threw);
-}
-
common.expectsError(
// eslint-disable-next-line no-restricted-syntax
() => assert.throws(() => {}, 'Error message', 'message'),