diff options
| author | Damian Johnson <atagar@torproject.org> | 2015-03-22 14:57:37 -0700 |
|---|---|---|
| committer | Damian Johnson <atagar@torproject.org> | 2015-03-22 15:16:47 -0700 |
| commit | d4eb01184237c63a6bef897e84dae9f6205301a9 (patch) | |
| tree | d00b523615cb0d718d4fffaa77bc4d56a60d1c12 | |
| parent | fd4e8f536c6efddabbece151bd26f2835e0d2f53 (diff) | |
Set NodeFamily to a random fingerprint
Each 'SETCONF NodeFamily' needed a unique fingerprint. What we had was well and
good, but it would be handy if new tests didn't need to take into consideration
which fingerprints had/hadn't been used yet.
Timestamps python provides are precise enough that we can just hash it to get
something unique.
| -rw-r--r-- | test/integ/control/controller.py | 23 |
1 files changed, 16 insertions, 7 deletions
diff --git a/test/integ/control/controller.py b/test/integ/control/controller.py index 1bfdad7c..ca18292d 100644 --- a/test/integ/control/controller.py +++ b/test/integ/control/controller.py @@ -2,6 +2,7 @@ Integration tests for the stem.control.Controller class. """ +import hashlib import os import shutil import socket @@ -38,6 +39,14 @@ from test.runner import ( TEST_ROUTER_STATUS_ENTRY = None +def random_fingerprint(): + """ + Provides a random 40 character hex string. + """ + + return hashlib.sha1(str(time.time())).hexdigest().upper() + + class TestController(unittest.TestCase): def test_from_port(self): """ @@ -123,7 +132,7 @@ class TestController(unittest.TestCase): controller.add_event_listener(listener2, EventType.CONF_CHANGED, EventType.DEBUG) # The NodeFamily is a harmless option we can toggle - controller.set_conf('NodeFamily', 'FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF') + controller.set_conf('NodeFamily', random_fingerprint()) # Wait for the event. Assert that we get it within 10 seconds self.assertTrue(event_notice1.wait(10)) @@ -140,7 +149,7 @@ class TestController(unittest.TestCase): buffer2_size = len(event_buffer2) - controller.set_conf('NodeFamily', 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA') + controller.set_conf('NodeFamily', random_fingerprint()) self.assertTrue(event_notice1.wait(10)) self.assertEqual(len(event_buffer1), 2) event_notice1.clear() @@ -173,7 +182,7 @@ class TestController(unittest.TestCase): with runner.get_tor_controller() as controller: controller.add_event_listener(listener, EventType.CONF_CHANGED) - controller.set_conf('NodeFamily', 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA') + controller.set_conf('NodeFamily', random_fingerprint()) self.assertTrue(event_notice.wait(10)) self.assertEqual(len(event_buffer), 1) event_notice.clear() @@ -187,7 +196,7 @@ class TestController(unittest.TestCase): # Spawn a second controller and trigger an event with runner.get_tor_controller() as controller2: - controller2.set_conf('NodeFamily', 'BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB') + controller2.set_conf('NodeFamily', random_fingerprint()) self.assertEqual(len(event_buffer), 0) @@ -196,7 +205,7 @@ class TestController(unittest.TestCase): controller.connect() controller.authenticate(password = test.runner.CONTROL_PASSWORD) - controller.set_conf('NodeFamily', 'CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC') + controller.set_conf('NodeFamily', random_fingerprint()) self.assertTrue(event_notice.wait(10)) self.assertEqual(len(event_buffer), 1) event_notice.clear() @@ -211,7 +220,7 @@ class TestController(unittest.TestCase): controller.connect() stem.connection.authenticate(controller, password = test.runner.CONTROL_PASSWORD) - controller.set_conf('NodeFamily', 'DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD') + controller.set_conf('NodeFamily', random_fingerprint()) self.assertTrue(event_notice.wait(10)) self.assertEqual(len(event_buffer), 1) event_notice.clear() @@ -234,7 +243,7 @@ class TestController(unittest.TestCase): else: controller.msg('AUTHENTICATE') - controller.set_conf('NodeFamily', 'EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE') + controller.set_conf('NodeFamily', random_fingerprint()) self.assertTrue(event_notice.wait(10)) self.assertEqual(len(event_buffer), 1) event_notice.clear() |
