diff options
Diffstat (limited to 'desktop/tests/gui_base_test.py')
-rw-r--r-- | desktop/tests/gui_base_test.py | 34 |
1 files changed, 27 insertions, 7 deletions
diff --git a/desktop/tests/gui_base_test.py b/desktop/tests/gui_base_test.py index 214da945..acaa9739 100644 --- a/desktop/tests/gui_base_test.py +++ b/desktop/tests/gui_base_test.py @@ -1,11 +1,7 @@ -import pytest import unittest - -import json import os import requests import shutil -import base64 import tempfile import secrets import platform @@ -13,14 +9,12 @@ import platform from PySide2 import QtCore, QtTest, QtWidgets from onionshare_cli.common import Common -from onionshare_cli.settings import Settings -from onionshare_cli.onion import Onion -from onionshare_cli.web import Web from onionshare import Application, MainWindow, GuiCommon from onionshare.tab.mode.share_mode import ShareMode from onionshare.tab.mode.receive_mode import ReceiveMode from onionshare.tab.mode.website_mode import WebsiteMode +from onionshare.tab.mode.chat_mode import ChatMode from onionshare import strings @@ -140,6 +134,17 @@ class GuiBaseTest(unittest.TestCase): return tab + def new_chat_tab(self): + tab = self.gui.tabs.widget(0) + self.verify_new_tab(tab) + + # Chat + tab.chat_button.click() + self.assertFalse(tab.new_tab.isVisible()) + self.assertTrue(tab.chat_mode.isVisible()) + + return tab + def close_all_tabs(self): for _ in range(self.gui.tabs.count()): tab = self.gui.tabs.widget(0) @@ -368,6 +373,7 @@ class GuiBaseTest(unittest.TestCase): and not tab.settings.get("share", "autostop_sharing") ) or (type(tab.get_mode()) == WebsiteMode) + or (type(tab.get_mode()) == ChatMode) ): tab.get_mode().server_status.server_button.click() self.assertEqual(tab.get_mode().server_status.status, 0) @@ -459,6 +465,20 @@ class GuiBaseTest(unittest.TestCase): # We should have timed out now self.assertEqual(tab.get_mode().server_status.status, 0) + def hit_405(self, url, expected_resp, data = {}, methods = [] ): + """Test various HTTP methods and the response""" + for method in methods: + if method == "put": + r = requests.put(url, data = data) + if method == "post": + r = requests.post(url, data = data) + if method == "delete": + r = requests.delete(url) + if method == "options": + r = requests.options(url) + self.assertTrue(expected_resp in r.text) + self.assertFalse('Werkzeug' in r.headers) + # Grouped tests follow from here def run_all_common_setup_tests(self): |