10000 Merge pull request #36 from hirokiky/feature-tolerant-setup · mirwan/fluent-logger-python@2a62230 · GitHub
[go: up one dir, main page]

Skip to content

Commit 2a62230

Browse files
committed
Merge pull request fluent#36 from hirokiky/feature-tolerant-setup
sender.setup should accept more various of options
2 parents c0fc10d + 0f06328 commit 2a62230

File tree

2 files changed

+40
-5
lines changed

2 files changed

+40
-5
lines changed

fluent/sender.py

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,16 @@
1111
_global_sender = None
1212

1313

14-
def setup(tag, **kwargs):
15-
host = kwargs.get('host', 'localhost')
16-
port = kwargs.get('port', 24224)
14+
def _set_global_sender(sender):
15+
""" [For testing] Function to set global sender directly
16+
"""
17+
global _global_sender
18+
_global_sender = sender
1719

20+
21+
def setup(tag, **kwargs):
1822
global _global_sender
19-
_global_sender = FluentSender(tag, host=host, port=port)
23+
_global_sender = FluentSender(tag, **kwargs)
2024

2125

2226
def get_global_sender():
@@ -30,7 +34,8 @@ def __init__(self,
3034
port=24224,
3135
bufmax=1 * 1024 * 1024,
3236
timeout=3.0,
33-
verbose=False):
37+
verbose=False,
38+
**kwargs):
3439

3540
self.tag = tag
3641
self.host = host

tests/test_sender.py

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,36 @@
88
from tests import mockserver
99

1010

11+
class TestSetup(unittest.TestCase):
12+
def tearDown(self):
13+
from fluent.sender import _set_global_sender
14+
_set_global_sender(None)
15+
16+
def test_no_kwargs(self):
17+
fluent.sender.setup("tag")
18+
actual = fluent.sender.get_global_sender()
19+
self.assertEqual(actual.tag, "tag")
20+
self.assertEqual(actual.host, "localhost")
21+
self.assertEqual(actual.port, 24224)
22+
self.assertEqual(actual.timeout, 3.0)
23+
24+
def test_host_and_port(self):
25+
fluent.sender.setup("tag", host="myhost", port=24225)
26+
actual = fluent.sender.get_global_sender()
27+
self.assertEqual(actual.tag, "tag")
28+
self.assertEqual(actual.host, "myhost")
29+
self.assertEqual(actual.port, 24225)
30+
self.assertEqual(actual.timeout, 3.0)
31+
32+
def test_tolerant(self):
33+
fluent.sender.setup("tag", host="myhost", port=24225, timeout=1.0)
34+
actual = fluent.sender.get_global_sender()
35+
self.assertEqual(actual.tag, "tag")
36+
self.assertEqual(actual.host, "myhost")
37+
self.assertEqual(actual.port, 24225)
38+
self.assertEqual(actual.timeout, 1.0)
39+
40+
1141
class TestSender(unittest.TestCase):
1242
def setUp(self):
1343
super(TestSender, self).setUp()

0 commit comments

Comments
 (0)
0