tools/test.py to support marking files a libuv-broken
Use export NODE_USE_UV=1 python tools/test.py --libuv simple pummel To run the equivalent of "make test-uv".
This commit is contained in:
parent
4e1d6fca8e
commit
06428d853c
194
Makefile
194
Makefile
@ -68,201 +68,11 @@ test-pummel: all
|
||||
test-internet: all
|
||||
python tools/test.py internet
|
||||
|
||||
UVTEST += simple/test-assert
|
||||
UVTEST += simple/test-buffer
|
||||
UVTEST += simple/test-c-ares
|
||||
UVTEST += simple/test-chdir
|
||||
UVTEST += simple/test-delayed-require
|
||||
UVTEST += simple/test-eio-race2
|
||||
UVTEST += simple/test-eio-race4
|
||||
UVTEST += simple/test-event-emitter-add-listeners
|
||||
UVTEST += simple/test-event-emitter-modify-in-emit
|
||||
UVTEST += simple/test-event-emitter-num-args
|
||||
UVTEST += simple/test-event-emitter-once
|
||||
UVTEST += simple/test-event-emitter-remove-all-listeners
|
||||
UVTEST += simple/test-event-emitter-remove-listeners
|
||||
UVTEST += simple/test-exception-handler
|
||||
UVTEST += simple/test-exception-handler2
|
||||
UVTEST += simple/test-exception-handler
|
||||
UVTEST += simple/test-executable-path
|
||||
UVTEST += simple/test-file-read-noexist
|
||||
UVTEST += simple/test-file-write-stream
|
||||
UVTEST += simple/test-fs-fsync
|
||||
UVTEST += simple/test-fs-open
|
||||
UVTEST += simple/test-fs-readfile-empty
|
||||
UVTEST += simple/test-fs-read-file-sync
|
||||
UVTEST += simple/test-fs-read-file-sync-hostname
|
||||
UVTEST += simple/test-fs-sir-writes-alot
|
||||
UVTEST += simple/test-fs-write
|
||||
UVTEST += simple/test-fs-write-buffer
|
||||
UVTEST += simple/test-fs-write-file
|
||||
UVTEST += simple/test-fs-write-file-buffer
|
||||
UVTEST += simple/test-fs-write-stream
|
||||
UVTEST += simple/test-fs-write-stream-end
|
||||
UVTEST += simple/test-fs-write-sync
|
||||
UVTEST += simple/test-global
|
||||
UVTEST += simple/test-http
|
||||
UVTEST += simple/test-http-1.0
|
||||
UVTEST += simple/test-http-abort-client
|
||||
UVTEST += simple/test-http-allow-req-after-204-res
|
||||
UVTEST += simple/test-http-blank-header
|
||||
UVTEST += simple/test-http-buffer-sanity
|
||||
UVTEST += simple/test-http-cat
|
||||
UVTEST += simple/test-http-chunked
|
||||
UVTEST += simple/test-http-client-abort
|
||||
UVTEST += simple/test-http-client-parse-error
|
||||
UVTEST += simple/test-http-client-race
|
||||
UVTEST += simple/test-http-client-race-2
|
||||
UVTEST += simple/test-http-client-upload
|
||||
UVTEST += simple/test-http-client-upload-buf
|
||||
UVTEST += simple/test-http-contentLength0
|
||||
UVTEST += simple/test-http-curl-chunk-problem
|
||||
UVTEST += simple/test-http-default-encoding
|
||||
UVTEST += simple/test-http-dns-fail
|
||||
UVTEST += simple/test-http-dns-error
|
||||
UVTEST += simple/test-http-eof-on-connect
|
||||
UVTEST += simple/test-http-exceptions
|
||||
UVTEST += simple/test-http-expect-continue
|
||||
UVTEST += simple/test-http-extra-response
|
||||
UVTEST += simple/test-http-head-request
|
||||
UVTEST += simple/test-http-head-response-has-no-body
|
||||
UVTEST += simple/test-http-keep-alive
|
||||
UVTEST += simple/test-http-keep-alive-close-on-header
|
||||
UVTEST += simple/test-http-malformed-request
|
||||
UVTEST += simple/test-http-many-keep-alive-connections
|
||||
UVTEST += simple/test-http-mutable-headers
|
||||
UVTEST += simple/test-http-parser
|
||||
UVTEST += simple/test-http-proxy
|
||||
UVTEST += simple/test-http-request-end
|
||||
UVTEST += simple/test-http-response-close
|
||||
UVTEST += simple/test-http-response-readable
|
||||
UVTEST += simple/test-http-unix-socket
|
||||
UVTEST += simple/test-http-server
|
||||
UVTEST += simple/test-http-server-multiheaders
|
||||
UVTEST += simple/test-http-set-cookies
|
||||
UVTEST += simple/test-http-set-timeout
|
||||
UVTEST += simple/test-http-set-trailers
|
||||
UVTEST += simple/test-http-upgrade-agent
|
||||
UVTEST += simple/test-http-upgrade-client
|
||||
UVTEST += simple/test-http-upgrade-client2
|
||||
UVTEST += simple/test-http-upgrade-server
|
||||
UVTEST += simple/test-http-upgrade-server2
|
||||
UVTEST += simple/test-http-wget
|
||||
UVTEST += simple/test-http-write-empty-string
|
||||
UVTEST += simple/test-http-wget
|
||||
UVTEST += simple/test-mkdir-rmdir
|
||||
UVTEST += simple/test-net-binary
|
||||
UVTEST += simple/test-net-pingpong
|
||||
UVTEST += simple/test-net-can-reset-timeout
|
||||
UVTEST += simple/test-net-connect-buffer
|
||||
UVTEST += simple/test-net-connect-timeout
|
||||
UVTEST += simple/test-net-create-connection
|
||||
UVTEST += simple/test-net-eaddrinuse
|
||||
UVTEST += simple/test-net-isip
|
||||
UVTEST += simple/test-net-keepalive
|
||||
UVTEST += simple/test-net-pingpong
|
||||
UVTEST += simple/test-net-reconnect
|
||||
UVTEST += simple/test-net-remote-address-port
|
||||
UVTEST += simple/test-net-server-bind
|
||||
UVTEST += simple/test-net-server-max-connections
|
||||
UVTEST += simple/test-net-server-try-ports
|
||||
UVTEST += simple/test-net-stream
|
||||
UVTEST += simple/test-net-socket-timeout
|
||||
UVTEST += simple/test-next-tick
|
||||
UVTEST += simple/test-next-tick-doesnt-hang
|
||||
UVTEST += simple/test-next-tick-errors
|
||||
UVTEST += simple/test-next-tick-ordering
|
||||
UVTEST += simple/test-next-tick-ordering2
|
||||
UVTEST += simple/test-next-tick-starvation
|
||||
UVTEST += simple/test-module-load-list
|
||||
UVTEST += simple/test-path
|
||||
UVTEST += simple/test-pipe-stream
|
||||
UVTEST += simple/test-pipe-file-to-http
|
||||
UVTEST += simple/test-process-env
|
||||
UVTEST += simple/test-pump-file2tcp
|
||||
UVTEST += simple/test-pump-file2tcp-noexist
|
||||
UVTEST += simple/test-punycode
|
||||
UVTEST += simple/test-querystring
|
||||
UVTEST += simple/test-readdir
|
||||
UVTEST += simple/test-readdouble
|
||||
UVTEST += simple/test-readfloat
|
||||
UVTEST += simple/test-readint
|
||||
UVTEST += simple/test-readuint
|
||||
UVTEST += simple/test-regress-GH-746
|
||||
UVTEST += simple/test-regress-GH-819
|
||||
UVTEST += simple/test-regress-GH-897
|
||||
UVTEST += simple/test-regress-GH-1531
|
||||
UVTEST += simple/test-regression-object-prototype
|
||||
UVTEST += simple/test-repl
|
||||
UVTEST += simple/test-require-cache
|
||||
UVTEST += simple/test-require-cache-without-stat
|
||||
UVTEST += simple/test-require-exceptions
|
||||
UVTEST += simple/test-require-resolve
|
||||
UVTEST += simple/test-script-context
|
||||
UVTEST += simple/test-script-new
|
||||
UVTEST += simple/test-script-static-context
|
||||
UVTEST += simple/test-script-static-new
|
||||
UVTEST += simple/test-script-static-this
|
||||
UVTEST += simple/test-script-this
|
||||
UVTEST += simple/test-stream-pipe-cleanup
|
||||
UVTEST += simple/test-stream-pipe-error-handling
|
||||
UVTEST += simple/test-stream-pipe-event
|
||||
UVTEST += simple/test-stream-pipe-multi
|
||||
UVTEST += simple/test-string-decoder
|
||||
UVTEST += simple/test-sys
|
||||
UVTEST += simple/test-tcp-wrap
|
||||
UVTEST += simple/test-tcp-wrap-connect
|
||||
UVTEST += simple/test-tcp-wrap-listen
|
||||
UVTEST += simple/test-timers-linked-list
|
||||
UVTEST += simple/test-tty-stdout-end
|
||||
UVTEST += simple/test-umask
|
||||
UVTEST += simple/test-url
|
||||
UVTEST += simple/test-utf8-scripts
|
||||
UVTEST += simple/test-vm-create-context-circular-reference
|
||||
UVTEST += simple/test-writedouble
|
||||
UVTEST += simple/test-writefloat
|
||||
UVTEST += simple/test-writeint
|
||||
UVTEST += simple/test-writeuint
|
||||
UVTEST += simple/test-zerolengthbufferbug
|
||||
UVTEST += pummel/test-http-client-reconnect-bug
|
||||
UVTEST += pummel/test-http-upload-timeout
|
||||
UVTEST += pummel/test-net-many-clients
|
||||
UVTEST += pummel/test-net-pause
|
||||
UVTEST += pummel/test-net-pingpong-delay
|
||||
UVTEST += pummel/test-net-timeout
|
||||
UVTEST += pummel/test-timers
|
||||
UVTEST += pummel/test-timer-wrap
|
||||
UVTEST += pummel/test-timer-wrap2
|
||||
UVTEST += pummel/test-vm-memleak
|
||||
UVTEST += internet/test-dns
|
||||
UVTEST += simple/test-tls-client-abort
|
||||
UVTEST += simple/test-tls-client-verify
|
||||
UVTEST += simple/test-tls-connect
|
||||
#UVTEST += simple/test-tls-ext-key-usage # broken
|
||||
UVTEST += simple/test-tls-junk-closes-server
|
||||
UVTEST += simple/test-tls-npn-server-client
|
||||
UVTEST += simple/test-tls-request-timeout
|
||||
#UVTEST += simple/test-tls-securepair-client # broken
|
||||
UVTEST += simple/test-tls-securepair-server
|
||||
#UVTEST += simple/test-tls-server-verify # broken
|
||||
UVTEST += simple/test-tls-set-encoding
|
||||
|
||||
# child_process
|
||||
UVTEST += simple/test-child-process-exit-code
|
||||
UVTEST += simple/test-child-process-buffering
|
||||
UVTEST += simple/test-child-process-exec-cwd
|
||||
UVTEST += simple/test-child-process-cwd
|
||||
UVTEST += simple/test-child-process-env
|
||||
UVTEST += simple/test-child-process-stdin
|
||||
UVTEST += simple/test-child-process-ipc
|
||||
UVTEST += simple/test-child-process-deprecated-api
|
||||
|
||||
|
||||
test-uv: all
|
||||
NODE_USE_UV=1 python tools/test.py $(UVTEST)
|
||||
NODE_USE_UV=1 python tools/test.py --libuv simple
|
||||
|
||||
test-uv-debug: all
|
||||
NODE_USE_UV=1 python tools/test.py --mode=debug $(UVTEST)
|
||||
NODE_USE_UV=1 python tools/test.py --mode=debug simple
|
||||
|
||||
|
||||
out/Release/node: all
|
||||
|
@ -46,6 +46,7 @@ sys.path.append(dirname(__file__) + "/../deps/v8/tools");
|
||||
import utils
|
||||
|
||||
VERBOSE = False
|
||||
LIBUV_BROKEN_PATTERN = re.compile(r"//\s+libuv-broken")
|
||||
|
||||
|
||||
# ---------------------------------------------
|
||||
@ -574,10 +575,11 @@ VARIANT_FLAGS = [[]]
|
||||
|
||||
class TestRepository(TestSuite):
|
||||
|
||||
def __init__(self, path):
|
||||
def __init__(self, path, options):
|
||||
normalized_path = abspath(path)
|
||||
super(TestRepository, self).__init__(basename(normalized_path))
|
||||
self.path = normalized_path
|
||||
self.options = options
|
||||
self.is_loaded = False
|
||||
self.config = None
|
||||
|
||||
@ -601,8 +603,20 @@ class TestRepository(TestSuite):
|
||||
def AddTestsToList(self, result, current_path, path, context, mode):
|
||||
for v in VARIANT_FLAGS:
|
||||
tests = self.GetConfiguration(context).ListTests(current_path, path, mode)
|
||||
for t in tests: t.variant_flags = v
|
||||
result += tests
|
||||
|
||||
for t in tests:
|
||||
t.variant_flags = v
|
||||
|
||||
if self.options.libuv:
|
||||
source = open(t.file).read()
|
||||
broken = LIBUV_BROKEN_PATTERN.search(source)
|
||||
else:
|
||||
broken = False
|
||||
|
||||
if not broken:
|
||||
result += [ t ]
|
||||
else:
|
||||
print "Skipping libuv-broken: " + t.file
|
||||
|
||||
|
||||
def GetTestStatus(self, context, sections, defs):
|
||||
@ -1163,6 +1177,8 @@ def BuildOptions():
|
||||
default=False, action="store_true")
|
||||
result.add_option("--valgrind", help="Run tests through valgrind",
|
||||
default=False, action="store_true")
|
||||
result.add_option("--libuv", help="Run only tests that aren't marks 'libuv-broken'",
|
||||
default=False, action="store_true")
|
||||
result.add_option("--cat", help="Print the source of the tests",
|
||||
default=False, action="store_true")
|
||||
result.add_option("--warn-unused", help="Report unused rules",
|
||||
@ -1298,8 +1314,12 @@ def Main():
|
||||
|
||||
workspace = abspath(join(dirname(sys.argv[0]), '..'))
|
||||
suites = GetSuites(join(workspace, 'test'))
|
||||
repositories = [TestRepository(join(workspace, 'test', name)) for name in suites]
|
||||
repositories += [TestRepository(a) for a in options.suite]
|
||||
repositories = [
|
||||
TestRepository(join(workspace, 'test', name), options)
|
||||
for name in suites
|
||||
]
|
||||
|
||||
repositories += [TestRepository(a, options) for a in options.suite]
|
||||
|
||||
root = LiteralTestSuite(repositories)
|
||||
if len(args) == 0:
|
||||
|
Loading…
x
Reference in New Issue
Block a user