THRIFT-3371: added test for abstract namespace domain sockets.
diff --git a/test/crossrunner/run.py b/test/crossrunner/run.py
index e3300ba..ae7d366 100644
--- a/test/crossrunner/run.py
+++ b/test/crossrunner/run.py
@@ -204,7 +204,7 @@
return port if ok else self._get_domain_port()
def alloc_port(self, socket_type):
- if socket_type == 'domain':
+ if socket_type in ('domain', 'abstract'):
return self._get_domain_port()
else:
return self._get_tcp_port()
@@ -226,6 +226,8 @@
path = domain_socket_path(port)
if os.path.exists(path):
os.remove(path)
+ elif socket_type == 'abstract':
+ self._dom_ports.remove(port)
else:
self._ports.remove(port)
except IOError as err:
diff --git a/test/crossrunner/test.py b/test/crossrunner/test.py
index 512e664..3750ba3 100644
--- a/test/crossrunner/test.py
+++ b/test/crossrunner/test.py
@@ -60,10 +60,11 @@
cmd[0] = abs_if_exists(cmd[0])
return cmd
- def _socket_arg(self, socket, port):
+ def _socket_args(self, socket, port):
return {
- 'ip-ssl': '--ssl',
- 'domain': '--domain-socket=%s' % domain_socket_path(port),
+ 'ip-ssl': ['--ssl'],
+ 'domain': ['--domain-socket=%s' % domain_socket_path(port)],
+ 'abstract': ['--abstract-namespace', '--domain-socket=%s' % domain_socket_path(port)],
}.get(socket, None)
def build_command(self, port):
@@ -71,9 +72,9 @@
args = []
args.append('--protocol=' + self.protocol)
args.append('--transport=' + self.transport)
- socket_arg = self._socket_arg(self.socket, port)
- if socket_arg:
- args.append(socket_arg)
+ socket_args = self._socket_args(self.socket, port)
+ if socket_args:
+ args += socket_args
args.append('--port=%d' % port)
if self._join_args:
cmd.append('%s' % " ".join(args))