-
Notifications
You must be signed in to change notification settings - Fork 1
/
test_thread.py
55 lines (40 loc) · 1.65 KB
/
test_thread.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
# Copyright 2024 UW-IT, University of Washington
# SPDX-License-Identifier: Apache-2.0
from unittest import TestCase
from commonconf import settings, override_settings
from restclients_core.thread import Thread
from mock import patch
class MockSQLite():
vendor = 'sqlite'
class MockMySQL():
vendor = 'mysql'
class TestThread(TestCase):
@patch('restclients_core.thread.db_connection', MockMySQL)
def test_use_threading_mysql(self):
thread = Thread()
self.assertTrue(thread._use_thread)
with override_settings(RESTCLIENTS_DISABLE_THREADING=True):
thread = Thread()
self.assertFalse(thread._use_thread)
with override_settings(RESTCLIENTS_DISABLE_THREADING=False):
thread = Thread()
self.assertTrue(thread._use_thread)
@patch('restclients_core.thread.db_connection', MockSQLite)
def test_use_threading_sqlite(self):
thread = Thread()
self.assertFalse(thread._use_thread)
with override_settings(RESTCLIENTS_DISABLE_THREADING=True):
thread = Thread()
self.assertFalse(thread._use_thread)
with override_settings(RESTCLIENTS_DISABLE_THREADING=False):
thread = Thread()
self.assertFalse(thread._use_thread)
def test_use_threading_nodb(self):
thread = Thread()
self.assertFalse(thread._use_thread)
with override_settings(RESTCLIENTS_USE_THREADING=True):
thread = Thread()
self.assertTrue(thread._use_thread)
with override_settings(RESTCLIENTS_USE_THREADING=False):
thread = Thread()
self.assertFalse(thread._use_thread)