From 2ffd13e90de5275c1dd12115a3c7b07d0386ece1 Mon Sep 17 00:00:00 2001 From: Rich Trott Date: Mon, 7 Nov 2016 13:34:54 -0800 Subject: [PATCH] test: move tick-processor tests to own directory The tick-processor tests are inherently non-deterministic. They therefore have false negatives from time to time. They also sometimes leave extra processes running. Move them to their own directory until these issues are sorted. Note that this means that the tests will not be run in CI. Like the inspector tests and other tests, they will have to be run manually when they are wanted. PR-URL: https://github.com/nodejs/node/pull/9506 Reviewed-By: Daniel Bevenius Reviewed-By: Matthew Loring Reviewed-By: Gibson Fahnestock --- Makefile | 3 +++ test/README.md | 11 +++++++++++ test/parallel/parallel.status | 1 - .../test-tick-processor-builtin.js | 0 .../test-tick-processor-cpp-core.js | 0 .../test-tick-processor-unknown.js | 6 +++--- test/tick-processor/testcfg.py | 6 ++++++ .../tick-processor-base.js | 0 vcbuild.bat | 1 + 9 files changed, 24 insertions(+), 4 deletions(-) rename test/{parallel => tick-processor}/test-tick-processor-builtin.js (100%) rename test/{parallel => tick-processor}/test-tick-processor-cpp-core.js (100%) rename test/{parallel => tick-processor}/test-tick-processor-unknown.js (82%) create mode 100644 test/tick-processor/testcfg.py rename test/{parallel => tick-processor}/tick-processor-base.js (100%) diff --git a/Makefile b/Makefile index cd4c582741df0a..efd4e7599c5efe 100644 --- a/Makefile +++ b/Makefile @@ -238,6 +238,9 @@ test-debugger: all test-inspector: all $(PYTHON) tools/test.py inspector +test-tick-processor: all + $(PYTHON) tools/test.py tick-processor + test-known-issues: all $(PYTHON) tools/test.py known_issues diff --git a/test/README.md b/test/README.md index ca4f515ced4407..736de97b71a848 100644 --- a/test/README.md +++ b/test/README.md @@ -122,6 +122,17 @@ Various tests that are run sequentially. Test configuration utility used by various test suites. +### tick-processor + +Tests for the V8 tick processor integration. The tests are for the logic in +`lib/internal/v8_prof_processor.js` and `lib/internal/v8_prof_polyfill.js`. The +tests confirm that the profile processor packages the correct set of scripts +from V8 and introduces the correct platform specific logic. + +| Runs on CI | +|:----------:| +| No | + ### timers Tests for [timing utilities](https://nodejs.org/api/timers.html) (`setTimeout` diff --git a/test/parallel/parallel.status b/test/parallel/parallel.status index a58d09fc156519..9acedf015f9e9e 100644 --- a/test/parallel/parallel.status +++ b/test/parallel/parallel.status @@ -16,7 +16,6 @@ prefix parallel [$system==solaris] # Also applies to SmartOS test-debug-signal-cluster : PASS,FLAKY -test-tick-processor-unknown: PASS,FLAKY [$system==freebsd] diff --git a/test/parallel/test-tick-processor-builtin.js b/test/tick-processor/test-tick-processor-builtin.js similarity index 100% rename from test/parallel/test-tick-processor-builtin.js rename to test/tick-processor/test-tick-processor-builtin.js diff --git a/test/parallel/test-tick-processor-cpp-core.js b/test/tick-processor/test-tick-processor-cpp-core.js similarity index 100% rename from test/parallel/test-tick-processor-cpp-core.js rename to test/tick-processor/test-tick-processor-cpp-core.js diff --git a/test/parallel/test-tick-processor-unknown.js b/test/tick-processor/test-tick-processor-unknown.js similarity index 82% rename from test/parallel/test-tick-processor-unknown.js rename to test/tick-processor/test-tick-processor-unknown.js index c886f648be4dc5..ab3d110ccff012 100644 --- a/test/parallel/test-tick-processor-unknown.js +++ b/test/tick-processor/test-tick-processor-unknown.js @@ -2,12 +2,12 @@ const common = require('../common'); // TODO(mhdawson) Currently the test-tick-processor functionality in V8 -// depends on addresses being smaller than a full 64 bits. Aix supports +// depends on addresses being smaller than a full 64 bits. AIX supports // the full 64 bits and the result is that it does not process the // addresses correctly and runs out of memory // Disabling until we get a fix upstreamed into V8 if (common.isAix) { - common.skip('Aix address range too big for scripts.'); + common.skip('AIX address range too big for scripts.'); return; } @@ -21,7 +21,7 @@ const base = require('./tick-processor-base.js'); // Unknown checked for to prevent flakiness, if pattern is not found, // then a large number of unknown ticks should be present base.runTest({ - pattern: /LazyCompile.*\[eval\]:1|.*% UNKNOWN/, + pattern: /LazyCompile.*\[eval]:1|.*% UNKNOWN/, code: `function f() { for (var i = 0; i < 1000000; i++) { i++; diff --git a/test/tick-processor/testcfg.py b/test/tick-processor/testcfg.py new file mode 100644 index 00000000000000..42e98355a5823f --- /dev/null +++ b/test/tick-processor/testcfg.py @@ -0,0 +1,6 @@ +import sys, os +sys.path.append(os.path.join(os.path.dirname(__file__), '..')) +import testpy + +def GetConfiguration(context, root): + return testpy.SimpleTestConfiguration(context, root, 'tick-processor') diff --git a/test/parallel/tick-processor-base.js b/test/tick-processor/tick-processor-base.js similarity index 100% rename from test/parallel/tick-processor-base.js rename to test/tick-processor/tick-processor-base.js diff --git a/vcbuild.bat b/vcbuild.bat index 6856050cbaeae9..3cf7fe910a6f26 100644 --- a/vcbuild.bat +++ b/vcbuild.bat @@ -63,6 +63,7 @@ if /i "%1"=="test-simple" set test_args=%test_args% sequential parallel -J&got if /i "%1"=="test-message" set test_args=%test_args% message&goto arg-ok if /i "%1"=="test-gc" set test_args=%test_args% gc&set buildnodeweak=1&goto arg-ok if /i "%1"=="test-inspector" set test_args=%test_args% inspector&goto arg-ok +if /i "%1"=="test-tick-processor" set test_args=%test_args% tick-processor&goto arg-ok if /i "%1"=="test-internet" set test_args=%test_args% internet&goto arg-ok if /i "%1"=="test-pummel" set test_args=%test_args% pummel&goto arg-ok if /i "%1"=="test-all" set test_args=%test_args% sequential parallel message gc inspector internet pummel&set buildnodeweak=1&set jslint=1&goto arg-ok