Tests: waitforfiles function introduced.
This commit is contained in:
36
test/unit.py
36
test/unit.py
@@ -29,12 +29,9 @@ class TestUnit(unittest.TestCase):
|
|||||||
'--log', self.testdir + '/unit.log',
|
'--log', self.testdir + '/unit.log',
|
||||||
'--control', 'unix:' + self.testdir + '/control.unit.sock'])
|
'--control', 'unix:' + self.testdir + '/control.unit.sock'])
|
||||||
|
|
||||||
time_wait = 0
|
if not self._waitforfiles([self.testdir + '/unit.pid',
|
||||||
while time_wait < 5 and not (os.path.exists(self.testdir + '/unit.pid')
|
self.testdir + '/unit.log', self.testdir + '/control.unit.sock']):
|
||||||
and os.path.exists(self.testdir + '/unit.log')
|
exit("Could not start unit")
|
||||||
and os.path.exists(self.testdir + '/control.unit.sock')):
|
|
||||||
time.sleep(0.1)
|
|
||||||
time_wait += 0.1
|
|
||||||
|
|
||||||
# TODO dependency check
|
# TODO dependency check
|
||||||
|
|
||||||
@@ -44,10 +41,13 @@ class TestUnit(unittest.TestCase):
|
|||||||
|
|
||||||
subprocess.call(['kill', pid])
|
subprocess.call(['kill', pid])
|
||||||
|
|
||||||
time_wait = 0
|
for i in range(1, 50):
|
||||||
while time_wait < 5 and os.path.exists(self.testdir + '/unit.pid'):
|
if not os.path.exists(self.testdir + '/unit.pid'):
|
||||||
|
break
|
||||||
time.sleep(0.1)
|
time.sleep(0.1)
|
||||||
time_wait += 0.1
|
|
||||||
|
if os.path.exists(self.testdir + '/unit.pid'):
|
||||||
|
exit("Could not terminate unit")
|
||||||
|
|
||||||
if '--log' in sys.argv:
|
if '--log' in sys.argv:
|
||||||
with open(self.testdir + '/unit.log', 'r') as f:
|
with open(self.testdir + '/unit.log', 'r') as f:
|
||||||
@@ -56,6 +56,24 @@ class TestUnit(unittest.TestCase):
|
|||||||
if '--leave' not in sys.argv:
|
if '--leave' not in sys.argv:
|
||||||
shutil.rmtree(self.testdir)
|
shutil.rmtree(self.testdir)
|
||||||
|
|
||||||
|
def _waitforfiles(self, files):
|
||||||
|
if isinstance(files, str):
|
||||||
|
files = [files]
|
||||||
|
|
||||||
|
count = 0
|
||||||
|
for i in range(1, 50):
|
||||||
|
for f in files:
|
||||||
|
if os.path.exists(f):
|
||||||
|
count += 1
|
||||||
|
|
||||||
|
if count == len(files):
|
||||||
|
return 1
|
||||||
|
|
||||||
|
count = 0
|
||||||
|
time.sleep(0.1)
|
||||||
|
|
||||||
|
return 0
|
||||||
|
|
||||||
class TestUnitControl(TestUnit):
|
class TestUnitControl(TestUnit):
|
||||||
|
|
||||||
# TODO socket reuse
|
# TODO socket reuse
|
||||||
|
|||||||
Reference in New Issue
Block a user