From 7cf76451c513967ca1ab4a5949b560310964556b Mon Sep 17 00:00:00 2001 From: Rich Trott Date: Mon, 7 Nov 2016 13:34:54 -0800 Subject: [PATCH 1/5] 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. --- Makefile | 3 +++ .../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 ++++++ test/{parallel => tick-processor}/tick-processor-base.js | 0 vcbuild.bat | 1 + 7 files changed, 13 insertions(+), 3 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 193319503557fe..ea668f495e7a3b 100644 --- a/Makefile +++ b/Makefile @@ -241,6 +241,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/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 From 15f1f471c14bcf768c5adca14e815a268b2e2b9b Mon Sep 17 00:00:00 2001 From: Rich Trott Date: Mon, 7 Nov 2016 13:57:51 -0800 Subject: [PATCH 2/5] squash: remove parallel.status entry --- test/parallel/parallel.status | 1 - 1 file changed, 1 deletion(-) diff --git a/test/parallel/parallel.status b/test/parallel/parallel.status index dc2e6f348003a8..bd910c6d1a9e92 100644 --- a/test/parallel/parallel.status +++ b/test/parallel/parallel.status @@ -15,7 +15,6 @@ prefix parallel [$arch==arm || $arch==arm64] [$system==solaris] # Also applies to SmartOS -test-tick-processor-unknown: PASS,FLAKY [$system==freebsd] From b0d62a4093888fb0e012b6bb80b5c9a04ba3e0b2 Mon Sep 17 00:00:00 2001 From: Rich Trott Date: Tue, 8 Nov 2016 11:31:58 -0800 Subject: [PATCH 3/5] squash: add README info --- test/README.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/test/README.md b/test/README.md index 0971adac3452ed..0bc70c10a6066f 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. +### inspector + +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` From c6e04994dd8825e884a6e64154e9fa7d5b5cb7b0 Mon Sep 17 00:00:00 2001 From: Rich Trott Date: Tue, 8 Nov 2016 11:33:51 -0800 Subject: [PATCH 4/5] squash: v8 -> V8 --- test/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/README.md b/test/README.md index 0bc70c10a6066f..4008931030c5b3 100644 --- a/test/README.md +++ b/test/README.md @@ -127,7 +127,7 @@ Test configuration utility used by various test suites. 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. +from V8 and introduces the correct platform specific logic. | Runs on CI | |:----------:| From e6aaa3d16f51502aaa0ee71c3b5bdf7b5360a5ff Mon Sep 17 00:00:00 2001 From: Rich Trott Date: Tue, 8 Nov 2016 12:58:47 -0800 Subject: [PATCH 5/5] squash: inspector -> tick-processor --- test/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/README.md b/test/README.md index 4008931030c5b3..6c72988d169d2f 100644 --- a/test/README.md +++ b/test/README.md @@ -122,7 +122,7 @@ Various tests that are run sequentially. Test configuration utility used by various test suites. -### inspector +### 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