aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatěj Cepl <mcepl@cepl.eu>2018-04-03 11:39:59 +0200
committerMatěj Cepl <mcepl@cepl.eu>2019-10-02 12:29:46 +0200
commit606078cabb24ddf1e2cb29175e6d7deae73f5749 (patch)
tree2105f8fbbbb6abbde70c14322d7dfc3c3ebc75be
parentdf2683228cfb151dad3e78a624181af6fc771545 (diff)
downloadpygn-606078cabb24ddf1e2cb29175e6d7deae73f5749.tar.gz
Global variables are evil. Tests under both py2k and py3k pass.
-rw-r--r--setup.py3
-rwxr-xr-xtest/test_pyg.py2
-rwxr-xr-xtest/test_wlp.py5
-rw-r--r--whitelist.py9
-rw-r--r--wlp.py20
5 files changed, 7 insertions, 32 deletions
diff --git a/setup.py b/setup.py
index 53a6151..aa19e66 100644
--- a/setup.py
+++ b/setup.py
@@ -1,6 +1,5 @@
-#!/usr/bin/python
+#!/usr/bin/python3
# -*- coding: utf-8 -*-
-from __future__ import print_function
from mail2news import VERSION, DESC
import os.path
diff --git a/test/test_pyg.py b/test/test_pyg.py
index 4076fc3..ddf8146 100755
--- a/test/test_pyg.py
+++ b/test/test_pyg.py
@@ -1,6 +1,4 @@
#!/usr/bin/python
-# -*- coding: utf-8 -*-
-
import re
import subprocess
import unittest
diff --git a/test/test_wlp.py b/test/test_wlp.py
index 430c235..929fb1c 100755
--- a/test/test_wlp.py
+++ b/test/test_wlp.py
@@ -1,5 +1,4 @@
#!/usr/bin/python
-# -*- coding: utf-8 -*-
import unittest
import wlp_parser
@@ -97,8 +96,8 @@ class TestWLP(unittest.TestCase):
self.assertEqual(tree, expected_tree)
def test_wlp(self):
- wlp.setfilebyname('examples/whitelist.example')
- wl_dict = wlp.mkdict()
+ with open('examples/whitelist.example') as inf:
+ wl_dict = wlp.mkdict(inf)
self.assertEqual(wl_dict, EXPECTED_WL)
diff --git a/whitelist.py b/whitelist.py
index 7eb111e..d12aea3 100644
--- a/whitelist.py
+++ b/whitelist.py
@@ -40,14 +40,9 @@ class whitelist(object):
log_fh.setFormatter(log_fmt)
self.logger.addHandler(log_fh)
- try:
- wlp.setfilebyname(wlfile)
- except Exception as ex:
- self.logger.exception('Opening %s: %s', wlfile, ex)
- sys.exit(1)
-
# dict is a { ownername : {variable: value}} dictionary of dictionaries
- self.wl = wlp.mkdict()
+ with open(wlfile) as inf:
+ self.wl = wlp.mkdict(inf)
def checkfrom(self, fromhead):
"""have you permission to be here, sir?"""
diff --git a/wlp.py b/wlp.py
index 64d7361..aaef6e8 100644
--- a/wlp.py
+++ b/wlp.py
@@ -1,27 +1,11 @@
-# -*- coding: utf-8 -*-
import wlp_parser
-__current_file = None
-
-
-def setfilebyname(name):
- global __current_file
- __current_file = open(name, 'r')
-
-
-def setfilebyfd(fd):
- global __current_file
- __current_file = fd
-
-
-def mkdict():
+def mkdict(infile):
dict = {}
- if __current_file is None:
- raise ValueError('current file has not been set.')
tree = wlp_parser.parser.parse(
- wlp_parser.lexer.lex(__current_file.read()))
+ wlp_parser.lexer.lex(infile.read()))
for subtree in tree:
current_key = subtree[0].getstr().strip('<>')