summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Bruhin <me@the-compiler.org>2020-11-23 17:35:31 +0100
committerFlorian Bruhin <me@the-compiler.org>2020-11-23 17:35:31 +0100
commitca653d5de94895f21a168870f4b8d4014ee697ea (patch)
tree29bbd145a63941fb73dfda20439630d260a4187b
parent9c3f35ca0888a9c12b3e270d74efc65e58f0fd1a (diff)
downloadqutebrowser-ca653d5de94895f21a168870f4b8d4014ee697ea.tar.gz
qutebrowser-ca653d5de94895f21a168870f4b8d4014ee697ea.zip
tests: Simplify dir handling in webserver_sub.py
- Switch from os.path to pathlib, see #176 - Remove sys.frozen handling, see #5867 - Always set Flask template dir correctly
-rw-r--r--tests/end2end/fixtures/webserver_sub.py30
1 files changed, 12 insertions, 18 deletions
diff --git a/tests/end2end/fixtures/webserver_sub.py b/tests/end2end/fixtures/webserver_sub.py
index cf8ffd006..1541c6075 100644
--- a/tests/end2end/fixtures/webserver_sub.py
+++ b/tests/end2end/fixtures/webserver_sub.py
@@ -29,8 +29,8 @@ parameters or headers with the same name properly.
import sys
import json
import time
-import os
import threading
+import pathlib
from http import HTTPStatus
import cheroot.wsgi
@@ -40,6 +40,9 @@ app = flask.Flask(__name__)
_redirect_later_event = None
+END2END_DIR = pathlib.Path(__file__).resolve().parents[1]
+
+
@app.route('/')
def root():
"""Show simple text."""
@@ -54,15 +57,8 @@ def send_data(path):
If a directory is requested, its index.html is sent.
"""
- if hasattr(sys, 'frozen'):
- basedir = os.path.realpath(os.path.dirname(sys.executable))
- data_dir = os.path.join(basedir, 'end2end', 'data')
- else:
- basedir = os.path.join(os.path.realpath(os.path.dirname(__file__)),
- '..')
- data_dir = os.path.join(basedir, 'data')
- print(basedir)
- if os.path.isdir(os.path.join(data_dir, path)):
+ data_dir = END2END_DIR / 'data'
+ if (data_dir / path).is_dir():
path += '/index.html'
return flask.send_from_directory(data_dir, path)
@@ -273,11 +269,9 @@ def view_user_agent():
@app.route('/favicon.ico')
def favicon():
- basedir = os.path.join(os.path.realpath(os.path.dirname(__file__)),
- '..', '..', '..')
- return flask.send_from_directory(os.path.join(basedir, 'icons'),
- 'qutebrowser.ico',
- mimetype='image/vnd.microsoft.icon')
+ icon_dir = END2END_DIR.parents[1] / 'icons'
+ return flask.send_from_directory(
+ icon_dir, 'qutebrowser.ico', mimetype='image/vnd.microsoft.icon')
@app.after_request
@@ -321,9 +315,9 @@ class WSGIServer(cheroot.wsgi.Server):
def main():
- if hasattr(sys, 'frozen'):
- basedir = os.path.realpath(os.path.dirname(sys.executable))
- app.template_folder = os.path.join(basedir, 'end2end', 'templates')
+ app.template_folder = END2END_DIR / 'templates'
+ assert app.template_folder.is_dir(), app.template_folder
+
port = int(sys.argv[1])
server = WSGIServer(('127.0.0.1', port), app)
server.start()