@@ -19,16 +19,36 @@ def test_start_no_args(self):
19
19
def test_start_engine_args (self ):
20
20
with mock .patch .object (plugin , "start_plugin" ) as start_plugin :
21
21
url = sqla_url .URL ("mysql+pymysql://scott:tiger@localhost/" )
22
- p = plugin .Plugin (url , {"collectd_host" : "127.0.0.1" })
22
+ p = plugin .Plugin (
23
+ url , {"collectd_host" : "127.0.0.1" , "collectd_port" : 5678 }
24
+ )
23
25
engine = mock .Mock ()
24
26
p .engine_created (engine )
25
27
26
28
self .assertEqual (
27
- [mock .call (engine , collectd_host = "127.0.0.1" )],
29
+ [mock .call (engine , collectd_host = "127.0.0.1" , collectd_port = 5678 )],
28
30
start_plugin .mock_calls ,
29
31
)
30
32
31
33
def test_start_url_args (self ):
34
+ with mock .patch .object (plugin , "start_plugin" ) as start_plugin :
35
+ url = sqla_url .make_url (
36
+ "mysql+pymysql://scott:tiger@localhost/"
37
+ "?collectd_host=127.0.0.1&somekey=somevalue&collectd_port=1234"
38
+ )
39
+ kwargs = {"unrelated" : "bar" }
40
+ p = plugin .Plugin (url , kwargs )
41
+ engine = mock .Mock ()
42
+ p .engine_created (engine )
43
+
44
+ self .assertEqual (
45
+ [mock .call (engine , collectd_host = "127.0.0.1" , collectd_port = 1234 )],
46
+ start_plugin .mock_calls ,
47
+ )
48
+ self .assertEqual ({"somekey" : "somevalue" }, url .query )
49
+ self .assertEqual ({"unrelated" : "bar" }, kwargs )
50
+
51
+ def test_start_url_args_no_port (self ):
32
52
with mock .patch .object (plugin , "start_plugin" ) as start_plugin :
33
53
url = sqla_url .make_url (
34
54
"mysql+pymysql://scott:tiger@localhost/"
@@ -50,16 +70,16 @@ def test_start_both_args(self):
50
70
with mock .patch .object (plugin , "start_plugin" ) as start_plugin :
51
71
url = sqla_url .make_url (
52
72
"mysql+pymysql://scott:tiger@localhost/"
53
- "?collectd_host=127.0.0.1"
73
+ "?collectd_host=127.0.0.1&collectd_port=1234 "
54
74
)
55
- kwargs = {"collectd_host" : "172.18.0.2" }
75
+ kwargs = {"collectd_host" : "172.18.0.2" , "collectd_port" : 5678 }
56
76
p = plugin .Plugin (url , kwargs )
57
77
engine = mock .Mock ()
58
78
p .engine_created (engine )
59
79
60
80
# argument is popped from both but favors url argument
61
81
self .assertEqual (
62
- [mock .call (engine , collectd_host = "127.0.0.1" )],
82
+ [mock .call (engine , collectd_host = "127.0.0.1" , collectd_port = 1234 )],
63
83
start_plugin .mock_calls ,
64
84
)
65
85
self .assertEqual ({}, url .query )
0 commit comments