summaryrefslogtreecommitdiff
path: root/desktop/tests/gui_base_test.py
diff options
context:
space:
mode:
Diffstat (limited to 'desktop/tests/gui_base_test.py')
-rw-r--r--desktop/tests/gui_base_test.py34
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):