Bug 1310855 - Remove hasNode xpcshell.ini variable r?mcmanus
MozReview-Commit-ID: Hx2e1JYfUfy
--- a/dom/push/test/xpcshell/xpcshell.ini
+++ b/dom/push/test/xpcshell/xpcshell.ini
@@ -56,28 +56,49 @@ run-sequentially = This will delete all
#http2 test
[test_resubscribe_4xxCode_http2.js]
[test_resubscribe_5xxCode_http2.js]
[test_resubscribe_listening_for_msg_error_http2.js]
[test_register_5xxCode_http2.js]
[test_updateRecordNoEncryptionKeys_http2.js]
[test_register_success_http2.js]
-skip-if = !hasNode
+# This used to be hasNode, but that caused too many issues with tests being
+# silently disabled, so now we explicitly call out the platforms not known
+# to have node installed.
+skip-if = os == "android"
run-sequentially = node server exceptions dont replay well
[test_register_error_http2.js]
-skip-if = !hasNode
+# This used to be hasNode, but that caused too many issues with tests being
+# silently disabled, so now we explicitly call out the platforms not known
+# to have node installed.
+skip-if = os == "android"
run-sequentially = node server exceptions dont replay well
[test_unregister_success_http2.js]
-skip-if = !hasNode
+# This used to be hasNode, but that caused too many issues with tests being
+# silently disabled, so now we explicitly call out the platforms not known
+# to have node installed.
+skip-if = os == "android"
run-sequentially = node server exceptions dont replay well
[test_notification_http2.js]
-skip-if = !hasNode
+# This used to be hasNode, but that caused too many issues with tests being
+# silently disabled, so now we explicitly call out the platforms not known
+# to have node installed.
+skip-if = os == "android"
run-sequentially = node server exceptions dont replay well
[test_registration_success_http2.js]
-skip-if = !hasNode
+# This used to be hasNode, but that caused too many issues with tests being
+# silently disabled, so now we explicitly call out the platforms not known
+# to have node installed.
+skip-if = os == "android"
run-sequentially = node server exceptions dont replay well
[test_registration_error_http2.js]
-skip-if = !hasNode
+# This used to be hasNode, but that caused too many issues with tests being
+# silently disabled, so now we explicitly call out the platforms not known
+# to have node installed.
+skip-if = os == "android"
run-sequentially = node server exceptions dont replay well
[test_clearAll_successful.js]
-skip-if = !hasNode
+# This used to be hasNode, but that caused too many issues with tests being
+# silently disabled, so now we explicitly call out the platforms not known
+# to have node installed.
+skip-if = os == "android"
run-sequentially = This will delete all existing push subscriptions.
--- a/netwerk/test/unit/xpcshell.ini
+++ b/netwerk/test/unit/xpcshell.ini
@@ -223,17 +223,20 @@ skip-if = bits != 32
[test_httpsuspend.js]
[test_idnservice.js]
[test_idn_blacklist.js]
[test_idn_urls.js]
[test_idna2008.js]
# IDNA2008 depends on ICU, not available on android
skip-if = os == "android"
[test_immutable.js]
-skip-if = !hasNode
+# This used to be hasNode, but that caused too many issues with tests being
+# silently disabled, so now we explicitly call out the platforms not known
+# to have node installed.
+skip-if = os == "android"
run-sequentially = node server exceptions dont replay well
[test_localstreams.js]
[test_large_port.js]
[test_mismatch_last-modified.js]
[test_MIME_params.js]
[test_mozTXTToHTMLConv.js]
[test_multipart_byteranges.js]
[test_multipart_streamconv.js]
@@ -282,20 +285,26 @@ fail-if = os == "android"
[test_safeoutputstream.js]
[test_simple.js]
[test_sockettransportsvc_available.js]
[test_socks.js]
# Bug 675039: test fails consistently on Android
fail-if = os == "android"
# http2 unit tests require us to have node available to run the spdy and http2 server
[test_http2.js]
-skip-if = !hasNode
+# This used to be hasNode, but that caused too many issues with tests being
+# silently disabled, so now we explicitly call out the platforms not known
+# to have node installed.
+skip-if = os == "android"
run-sequentially = node server exceptions dont replay well
[test_altsvc.js]
-skip-if = !hasNode
+# This used to be hasNode, but that caused too many issues with tests being
+# silently disabled, so now we explicitly call out the platforms not known
+# to have node installed.
+skip-if = os == "android"
run-sequentially = node server exceptions dont replay well
[test_speculative_connect.js]
[test_standardurl.js]
[test_standardurl_default_port.js]
[test_standardurl_port.js]
[test_streamcopier.js]
[test_traceable_channel.js]
[test_unescapestring.js]
--- a/testing/xpcshell/runxpcshelltests.py
+++ b/testing/xpcshell/runxpcshelltests.py
@@ -11,25 +11,23 @@ import math
import mozdebug
import mozinfo
import os
import os.path
import random
import re
import shutil
import signal
-import subprocess
import sys
import tempfile
import time
import traceback
from collections import deque, namedtuple
from distutils import dir_util
-from distutils.version import LooseVersion
from multiprocessing import cpu_count
from argparse import ArgumentParser
from subprocess import Popen, PIPE, STDOUT
from tempfile import mkdtemp, gettempdir
from threading import (
Timer,
Thread,
Event,
@@ -984,38 +982,26 @@ class XPCShellTests(object):
On a remote system, we need to overload this to work on the remote filesystem.
"""
return os.path.abspath(dirname)
def trySetupNode(self):
"""
Run node for HTTP/2 tests, if available, and updates mozinfo as appropriate.
"""
- nodeMozInfo = {'hasNode': False} # Assume the worst
nodeBin = None
# We try to find the node executable in the path given to us by the user in
# the MOZ_NODE_PATH environment variable
localPath = os.getenv('MOZ_NODE_PATH', None)
if localPath and os.path.exists(localPath) and os.path.isfile(localPath):
- try:
- version_str = subprocess.check_output([localPath, "--version"],
- stderr=subprocess.STDOUT)
- # nodejs prefixes its version strings with "v"
- version = LooseVersion(version_str.lstrip('v'))
- # Use node only if node version is >=5.0.0 because
- # node did not support ALPN until this version.
- if version >= LooseVersion("5.0.0"):
- nodeBin = localPath
- except (subprocess.CalledProcessError, OSError), e:
- self.log.error('Could not retrieve node version: %s' % str(e))
+ nodeBin = localPath
if os.getenv('MOZ_ASSUME_NODE_RUNNING', None):
self.log.info('Assuming required node servers are already running')
- nodeMozInfo['hasNode'] = True
elif nodeBin:
self.log.info('Found node at %s' % (nodeBin,))
def startServer(name, serverJs):
if os.path.exists(serverJs):
# OK, we found our server, let's try to get it running
self.log.info('Found %s at %s' % (name, serverJs))
try:
@@ -1024,29 +1010,26 @@ class XPCShellTests(object):
process = Popen([nodeBin, serverJs], stdin=PIPE, stdout=PIPE,
stderr=PIPE, env=self.env, cwd=os.getcwd())
self.nodeProc[name] = process
# Check to make sure the server starts properly by waiting for it to
# tell us it's started
msg = process.stdout.readline()
if 'server listening' in msg:
- nodeMozInfo['hasNode'] = True
searchObj = re.search( r'HTTP2 server listening on port (.*)', msg, 0)
if searchObj:
self.env["MOZHTTP2_PORT"] = searchObj.group(1)
except OSError, e:
# This occurs if the subprocess couldn't be started
self.log.error('Could not run %s server: %s' % (name, str(e)))
myDir = os.path.split(os.path.abspath(__file__))[0]
startServer('moz-http2', os.path.join(myDir, 'moz-http2', 'moz-http2.js'))
- mozinfo.update(nodeMozInfo)
-
def shutdownNode(self):
"""
Shut down our node process, if it exists
"""
for name, proc in self.nodeProc.iteritems():
self.log.info('Node %s server shutting down ...' % name)
if proc.poll() is not None:
self.log.info('Node server %s already dead %s' % (name, proc.poll()))