[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
[tor-commits] [stem/master] Add integration tests for Controller.close_stream()
commit 4f8efd38bbaccb573d19f8ce98f1d590bd8918f5
Author: Sean Robinson <seankrobinson@xxxxxxxxx>
Date: Fri Jan 4 07:37:33 2013 -0700
Add integration tests for Controller.close_stream()
Signed-off-by: Sean Robinson <seankrobinson@xxxxxxxxx>
---
test/integ/control/controller.py | 29 +++++++++++++++++++++++++++++
1 files changed, 29 insertions(+), 0 deletions(-)
diff --git a/test/integ/control/controller.py b/test/integ/control/controller.py
index 25fc431..da091c0 100644
--- a/test/integ/control/controller.py
+++ b/test/integ/control/controller.py
@@ -605,6 +605,35 @@ class TestController(unittest.TestCase):
# try to match the target for which we asked a stream.
self.assertTrue(target in [stream.target for stream in streams])
+ def test_close_stream(self):
+ """
+ Tests Controller.close_stream with valid and invalid input.
+ """
+
+ if test.runner.require_control(self): return
+ elif test.runner.require_online(self): return
+
+ runner = test.runner.get_runner()
+
+ with runner.get_tor_controller() as controller:
+ # use the first socks listener
+ socks_listener = controller.get_socks_listeners()[0]
+ with test.network.Socks(socks_listener) as s:
+ s.settimeout(30)
+ s.connect(("www.torproject.org", 443))
+ # There's only one stream right now. Right?
+ built_stream = controller.get_streams()[0]
+ # Make sure we have the stream for which we asked, otherwise
+ # the next assertion would be a false positive.
+ self.assertEqual([built_stream.id], [stream.id for stream in controller.get_streams()])
+ # Try to close our stream...
+ controller.close_stream(built_stream.id)
+ # ...which means there are zero streams.
+ self.assertEqual([], controller.get_streams())
+
+ # unknown stream
+ self.assertRaises(stem.InvalidArguments, controller.close_stream, "blarg")
+
def test_mapaddress(self):
if test.runner.require_control(self): return
elif test.runner.require_online(self): return
_______________________________________________
tor-commits mailing list
tor-commits@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits