Merge 73a25c640038e55af64bb2efa87f7dd21f1aa20b on remote branch
Change-Id: I918be6fe7eca0932b0dc74b1c5d3b4ae42862985
diff --git a/net/test/all_tests.py b/net/test/all_tests.py
index bbef3ac..38c4eac 100755
--- a/net/test/all_tests.py
+++ b/net/test/all_tests.py
@@ -54,7 +54,14 @@
sys.modules[name].InjectTests()
loader = unittest.defaultTestLoader
- test_suite = loader.loadTestsFromNames(test_modules)
+ if len(sys.argv) > 1:
+ test_suite = loader.loadTestsFromNames(sys.argv[1:])
+ else:
+ test_suite = loader.loadTestsFromNames(test_modules)
+
+ assert test_suite.countTestCases() > 0, (
+ "Inconceivable: no tests found! Command line: %s" % " ".join(sys.argv))
+
runner = unittest.TextTestRunner(verbosity=2)
result = runner.run(test_suite)
sys.exit(not result.wasSuccessful())
diff --git a/net/test/run_net_test.sh b/net/test/run_net_test.sh
index ebfb15f..d1a66f5 100755
--- a/net/test/run_net_test.sh
+++ b/net/test/run_net_test.sh
@@ -178,16 +178,17 @@
test_args=${@:2}
function isRunningTest() {
- [[ -n "$test" ]] && ! (( norun ))
+ ! (( norun ))
}
function isBuildOnly() {
- [[ -z "$test" ]] && (( norun )) && ! (( nobuild ))
+ (( norun )) && ! (( nobuild ))
}
if ! isRunningTest && ! isBuildOnly; then
echo "Usage:" >&2
- echo " $0 [--builder] [--readonly|--ro|--readwrite|--rw] [--nobuild] [--verbose] <test>" >&2
+ echo " $0 [--builder] [--readonly|--ro|--readwrite|--rw] [--nobuild] [--verbose] [<test>]" >&2
+ echo " - if [<test>] is not specified, run all_tests.sh" >&2
echo " $0 --norun" >&2
exit 1
fi
diff --git a/net/test/srcaddr_selection_test.py b/net/test/srcaddr_selection_test.py
index 45a8140..e57ce16 100755
--- a/net/test/srcaddr_selection_test.py
+++ b/net/test/srcaddr_selection_test.py
@@ -72,6 +72,9 @@
def SetUseOptimistic(self, ifname, value):
self.SetSysctl("/proc/sys/net/ipv6/conf/%s/use_optimistic" % ifname, value)
+ def SetForwarding(self, value):
+ self.SetSysctl("/proc/sys/net/ipv6/conf/all/forwarding", value)
+
def GetSourceIP(self, netid, mode="mark"):
s = self.BuildSocket(6, net_test.UDPSocket, netid, mode)
# Because why not...testing for temporary addresses is a separate thing.
@@ -163,6 +166,12 @@
# link-local address is generated.
self.WaitForDad(self.test_lladdr)
+ # Disable forwarding, because optimistic addresses don't work when
+ # forwarding is on. Forwarding will be re-enabled when the sysctls are
+ # restored by MultiNetworkBaseTest.tearDownClass.
+ # TODO: Fix this and remove this hack.
+ self.SetForwarding("0")
+
class TentativeAddressTest(MultiInterfaceSourceAddressSelectionTest):