Skip to content
This repository was archived by the owner on Oct 4, 2023. It is now read-only.

Commit 49f5ba0

Browse files
committed
Make settings global again
1 parent 4b7196b commit 49f5ba0

File tree

6 files changed

+16
-14
lines changed

6 files changed

+16
-14
lines changed

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
src/error_log
22
error_log
3+
tests/.cache/*
34
venv/*
45
*.pyc
56
*~

src/handler.py

+8-8
Original file line numberDiff line numberDiff line change
@@ -8,25 +8,25 @@
88
import asyncore
99
import asynchat
1010

11+
import settings
1112
import logic
1213

1314

1415
class Bot(asynchat.async_chat):
1516

16-
def __init__(self, settings):
17+
def __init__(self):
1718
asynchat.async_chat.__init__(self)
1819
self.known_users = {}
1920
self.buffer = ''
2021
self.set_terminator('\r\n')
21-
self.settings = settings
2222
self.nick_num = 0
23-
self.nick = self.settings.NICKS[self.nick_num]
23+
self.nick = settings.NICKS[self.nick_num]
2424
self.logic = logic.BotLogic(self)
2525
self.ac_in_buffer_size = self.ac_out_buffer_size = 8192 # 2*default
2626
self.start_time = time()
2727

2828
def print_debug(self, text):
29-
if self.settings.DEBUG:
29+
if settings.DEBUG:
3030
print(text)
3131

3232
def write(self, text):
@@ -42,17 +42,17 @@ def say(self, text, channel):
4242
return line
4343

4444
def set_nick(self):
45-
self.nick = self.settings.NICKS[self.nick_num]
45+
self.nick = settings.NICKS[self.nick_num]
4646
self.write('NICK %s' % self.nick)
4747

4848
def next_nick(self):
49-
self.nick_num = (self.nick_num + 1) % len(self.settings.NICKS)
49+
self.nick_num = (self.nick_num + 1) % len(settings.NICKS)
5050
self.set_nick()
5151

5252
def handle_connect(self):
5353
self.set_nick()
5454
self.write('USER %s iw 0 :%s' %
55-
(self.settings.IDENT, self.settings.REAL_NAME))
55+
(settings.IDENT, settings.REAL_NAME))
5656

5757
def collect_incoming_data(self, data):
5858
self.buffer += data
@@ -81,7 +81,7 @@ def handler(signal, frame):
8181
pass
8282

8383
self.create_socket(socket.AF_INET, socket.SOCK_STREAM)
84-
self.connect((self.settings.IRC_SERVER, self.settings.IRC_PORT))
84+
self.connect((settings.IRC_SERVER, settings.IRC_PORT))
8585

8686
random.seed()
8787
# set the signal handler for shouting random messages

src/logic.py

+3-1
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77
from plugins.psywerx_groups import PsywerxGroups
88
from plugins.psywerx_karma import PsywerxKarma
99

10+
import settings
11+
1012

1113
class BotLogic(object):
1214

@@ -64,7 +66,7 @@ def self_input(self, channel, msg, line):
6466

6567
def handle_end_motd(self, line):
6668
# after server MOTD, join desired channel
67-
for channel in self.bot.settings.CHANNELS:
69+
for channel in settings.CHANNELS:
6870
self.bot.known_users[channel] = {}
6971
self.bot.write('JOIN ' + channel)
7072

src/main.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,12 @@
55

66

77
def run_bot():
8-
import settings
98
from handler import Bot
109

1110
while True:
1211
try:
1312
# initialize and run
14-
botko = Bot(settings)
13+
botko = Bot()
1514
botko.run()
1615

1716
except Exception:

src/plugins/psywerx_groups.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
from base import PsywerxPlugin
2+
import settings
23
import re
34
import json
45

@@ -67,7 +68,7 @@ def _handle_mentions(self, channel, nick, msg):
6768
if group[-1] == "'":
6869
group = group[:-1]
6970

70-
if re.match(self.bot.settings.BOTS_REGEX, nick):
71+
if re.match(settings.BOTS_REGEX, nick):
7172
continue
7273

7374
params = {'group': group}

tests/test_logic.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,13 @@
66
from handler import Bot
77
from logic import BotLogic
88

9-
import settings
109
import unittest
1110

1211

1312
class BotTest(unittest.TestCase):
1413

1514
def setUp(self):
16-
self.bot = Bot(settings)
15+
self.bot = Bot()
1716
self.logic = BotLogic(self.bot)
1817

1918
def test_parse_priv_msg(self):

0 commit comments

Comments
 (0)