From 095f6d1dca7d7ca788e6075d1ece818d814d817f Mon Sep 17 00:00:00 2001
From: bigbes <bigbes@gmail.com>
Date: Fri, 17 Apr 2015 15:40:39 +0300
Subject: [PATCH] Remove start_and_exit option

---
 test/lib/app_server.py       |  4 +---
 test/lib/tarantool_server.py | 30 ++++--------------------------
 test/lib/test_suite.py       |  5 -----
 test/lib/unittest_server.py  |  4 +---
 test/test-run.py             | 18 ++++++++----------
 5 files changed, 14 insertions(+), 47 deletions(-)

diff --git a/test/lib/app_server.py b/test/lib/app_server.py
index 08ecf66dee..e7d22005f9 100644
--- a/test/lib/app_server.py
+++ b/test/lib/app_server.py
@@ -37,9 +37,7 @@ class AppServer(Server):
         self.debug = False
         self.lua_libs = ini['lua_libs']
 
-    def deploy(self, config=None, binary=None, vardir=None,
-               mem=None, start_and_exit=None, gdb=None, valgrind=None,
-               init_lua=None, silent=True, need_init=True):
+    def deploy(self, vardir=None, silent=True, need_init=True):
         self.vardir = vardir
         if not os.access(self.vardir, os.F_OK):
             os.makedirs(self.vardir)
diff --git a/test/lib/tarantool_server.py b/test/lib/tarantool_server.py
index 4bb0967294..0b77a65c0e 100644
--- a/test/lib/tarantool_server.py
+++ b/test/lib/tarantool_server.py
@@ -205,15 +205,6 @@ class GdbMixin(Mixin):
         "name": "tarantool-gdb"
     }
 
-    def start_and_exit(self):
-        if re.search(r'^/', self._admin.port):
-            if os.path.exists(self._admin.port):
-                os.unlink(self._admin.port)
-        color_stdout('You started the server in gdb mode.\n', schema='info')
-        color_stdout('To attach, use `screen -r tarantool-gdb`\n', schema='info')
-        TarantoolServer.start_and_exit(self)
-
-
     def prepare_args(self):
         if not find_in_path('screen'):
             raise OSError('`screen` executables not found in PATH')
@@ -372,7 +363,6 @@ class TarantoolServer(Server):
             'lua_libs': [],
             'valgrind': False,
             'vardir': None,
-            'start_and_exit': False,
             'use_unix_sockets': False
         }
         ini.update(_ini)
@@ -392,8 +382,8 @@ class TarantoolServer(Server):
         self.script = ini['script']
         self.lua_libs = ini['lua_libs']
         self.valgrind = ini['valgrind']
-        self._start_and_exit = ini['start_and_exit']
         self.use_unix_sockets = ini['use_unix_sockets']
+#        self._start_against_running = ini['tarantool_port']
 
     def __del__(self):
         self.stop()
@@ -437,12 +427,9 @@ class TarantoolServer(Server):
             self._admin = find_port(port)
         self._sql = find_port(port + 1)
 
-    def deploy(self, silent=True, wait = True):
+    def deploy(self, silent=True, wait=True):
         self.install(silent)
-        if not self._start_and_exit:
-            self.start(silent=silent, wait=wait)
-        else:
-            self.start_and_exit()
+        self.start(silent=silent, wait=wait)
 
     def copy_files(self):
         if self.script:
@@ -456,21 +443,12 @@ class TarantoolServer(Server):
     def prepare_args(self):
         return shlex.split(self.script_dst if self.script else self.binary)
 
-    def start_and_exit(self):
-        color_stdout('Starting the server {0} on ports {1} ...\n'.format(
-            os.path.basename(self.binary) if not self.script else self.script_dst,
-            ', '.join([': '.join([str(j) for j in i]) for i in self.conf.items() if i[0].find('port') != -1])
-            ), schema='serv_text')
-        with daemon.DaemonContext():
-            self.start()
-            self.process.wait()
-
     def start(self, silent=True, wait = True):
         if self.status == 'started':
             if not silent:
                 color_stdout('The server is already started.\n', schema='lerror')
             return
-        if not silent or self._start_and_exit:
+        if not silent:
             color_stdout("Starting the server ...\n", schema='serv_text')
             color_stdout("Starting ", schema='serv_text')
             color_stdout((os.path.basename(self.binary) if not self.script else self.script_dst) + " \n", schema='path')
diff --git a/test/lib/test_suite.py b/test/lib/test_suite.py
index faa73afb53..856d9a4fa3 100644
--- a/test/lib/test_suite.py
+++ b/test/lib/test_suite.py
@@ -80,16 +80,11 @@ class TestSuite:
     def run_all(self):
         """For each file in the test suite, run client program
         assuming each file represents an individual test."""
-
         if not self.tests:
             # noting to test, exit
             return []
         self.server.deploy(silent=False)
 
-        if self.args.start_and_exit:
-            color_stdout("    Start and exit requested, exiting...\n", schema='info')
-            exit(0)
-
         longsep = '='*70
         shortsep = '-'*60
         color_stdout(longsep, "\n", schema='separator')
diff --git a/test/lib/unittest_server.py b/test/lib/unittest_server.py
index 708a34304b..47f62fe352 100644
--- a/test/lib/unittest_server.py
+++ b/test/lib/unittest_server.py
@@ -31,9 +31,7 @@ class UnittestServer(Server):
         self.builddir = ini['builddir']
         self.debug = False
 
-    def deploy(self, config=None, binary=None, vardir=None,
-               mem=None, start_and_exit=None, gdb=None, valgrind=None,
-               init_lua=None, silent=True, need_init=True):
+    def deploy(self, vardir=None, silent=True, wait=True):
         self.vardir = vardir
         if not os.access(self.vardir, os.F_OK):
             os.makedirs(self.vardir)
diff --git a/test/test-run.py b/test/test-run.py
index 027dd7e761..1f619e0624 100755
--- a/test/test-run.py
+++ b/test/test-run.py
@@ -81,22 +81,14 @@ class Options:
                 help = """Go on with other tests in case of an individual test failure.
                 Default: false.""")
 
-        parser.add_argument(
-                "--start-and-exit",
-                dest = "start_and_exit",
-                action = "store_true",
-                default = False,
-                help = """Start the server from the first specified suite and
-                exit without running any tests. Default: false.""")
-
         parser.add_argument(
                 "--gdb",
                 dest = "gdb",
                 action = "store_true",
                 default = False,
                 help = """Start the server under 'gdb' debugger in detached
-                Screen. See also --start-and-exit. This option is mutually
-                exclusive with --valgrind. Default: false.""")
+                Screen. This option is mutually exclusive with --valgrind.
+                Default: false.""")
 
         parser.add_argument(
                 "--valgrind",
@@ -117,6 +109,12 @@ class Options:
                 default = None,
                 help = """Name of streess TestSuite to run""")
 
+        parser.add_argument(
+                "--tarantool-port",
+                dest = "tarantool_port",
+                default = None,
+                help = """Listen port number to run tests against. Admin port number must be listen+1""")
+
         parser.add_argument(
                 "--vardir",
                 dest = "vardir",
-- 
GitLab