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 <daniel.bevenius@gmail.com>
Reviewed-By: Matthew Loring <mattloring@google.com>
Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com>
This commit is contained in:
Rich Trott 2016-11-07 13:34:54 -08:00
parent 103858e95f
commit eed8b0525c
9 changed files with 24 additions and 4 deletions

View File

@ -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

View File

@ -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`

View File

@ -15,7 +15,6 @@ prefix parallel
[$arch==arm || $arch==arm64]
[$system==solaris] # Also applies to SmartOS
test-tick-processor-unknown: PASS,FLAKY
[$system==freebsd]

View File

@ -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++;

View File

@ -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')

View File

@ -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