From 43e36d91e5501fa5df33e1cbc6cddabae6fef5e8 Mon Sep 17 00:00:00 2001 From: Andrey Zelenkov Date: Mon, 15 Jan 2018 16:06:33 +0300 Subject: [PATCH] Tests: added test for 'atexit'. --- test/test_python_atexit.py | 65 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 test/test_python_atexit.py diff --git a/test/test_python_atexit.py b/test/test_python_atexit.py new file mode 100644 index 00000000..28b6f67b --- /dev/null +++ b/test/test_python_atexit.py @@ -0,0 +1,65 @@ +import os +import time +import unittest +import unit + +class TestUnitApplication(unit.TestUnitControl): + + def setUpClass(): + u = unit.TestUnit() + + u.check_modules('python') + u.check_version('0.3') + + def test_python_application(self): + code, name = """ +import atexit + +def create_file(): + open('%s', 'w') + +atexit.register(create_file) + +def application(env, start_response): + start_response('200 OK', [('Content-Type','text/html')]) + return [b'body'] + +""" % (self.testdir + '/atexit'), 'py_app' + + self.python_application(name, code) + + self.put('/', """ + { + "listeners": { + "*:7080": { + "application": "app" + } + }, + "applications": { + "app": { + "type": "python", + "workers": 1, + "path": "%s", + "module": "wsgi" + } + } + } + """ % (self.testdir + '/' + name)) + + unit.TestUnitHTTP.get() + + self.put('/', """ + { + "listeners": {}, + "applications": {} + } + """) + + time.sleep(0.2) + + self.assertEqual(os.path.exists(self.testdir + '/atexit'), True, + 'python atexit') + + +if __name__ == '__main__': + unittest.main()