diff --git a/.travis.yml b/.travis.yml index 16f61830..7d6b79a5 100644 --- a/.travis.yml +++ b/.travis.yml @@ -30,9 +30,13 @@ install: - curl-config --version; pip freeze script: - # Get out of the source directory before running tests to avoid PYTHONPATH - # confusion. This is necessary to ensure that the speedups module can - # be found in the installation directory. + # Run the tests once from the source directory to detect issues + # involving relative __file__ paths; see + # https://github.com/tornadoweb/tornado/issues/1780 + - unset TORNADO_EXTENSION && python -m tornado.test + # For all other test variants, get out of the source directory before + # running tests to ensure that we get the installed speedups module + # instead of the source directory which doesn't have it. - cd maint # Copy the coveragerc down so coverage.py can find it. - cp ../.coveragerc . diff --git a/tornado/test/options_test.py b/tornado/test/options_test.py index f7b215c5..c050cb64 100644 --- a/tornado/test/options_test.py +++ b/tornado/test/options_test.py @@ -36,7 +36,7 @@ class OptionsTest(unittest.TestCase): options.define("port", default=80) options.define("username", default='foo') options.define("my_path") - config_path = os.path.join(os.path.dirname(__file__), + config_path = os.path.join(os.path.dirname(os.path.abspath(__file__)), "options_test.cfg") options.parse_config_file(config_path) self.assertEqual(options.port, 443)