[tor-commits] [stem/master] Using mock for descriptor export unit tests
atagar at torproject.org
atagar at torproject.org
Thu Jun 13 16:50:53 UTC 2013
commit 752a957698550afc112ded236e3a7cceea500245
Author: Damian Johnson <atagar at torproject.org>
Date: Wed Jun 12 19:29:23 2013 -0700
Using mock for descriptor export unit tests
---
test/unit/descriptor/export.py | 20 +++++++++-----------
1 file changed, 9 insertions(+), 11 deletions(-)
diff --git a/test/unit/descriptor/export.py b/test/unit/descriptor/export.py
index 14eb156..32a7809 100644
--- a/test/unit/descriptor/export.py
+++ b/test/unit/descriptor/export.py
@@ -8,23 +8,16 @@ import unittest
import stem.prereq
import test.runner
+from mock import Mock, patch
+
from stem.descriptor.export import export_csv, export_csv_file
-from stem.descriptor.server_descriptor import RelayDescriptor
-from test.mocking import no_op, \
- mock_method, \
- revert_mocking, \
- get_relay_server_descriptor, \
+from test.mocking import get_relay_server_descriptor, \
get_bridge_server_descriptor
class TestExport(unittest.TestCase):
- def setUp(self):
- mock_method(RelayDescriptor, '_verify_digest', no_op())
-
- def tearDown(self):
- revert_mocking()
-
+ @patch('stem.descriptor.server_descriptor.RelayDescriptor._verify_digest', Mock())
def test_minimal_descriptor(self):
"""
Exports a single minimal tor server descriptor.
@@ -45,6 +38,7 @@ class TestExport(unittest.TestCase):
expected = "nickname,address,published\n" + expected
self.assertEquals(expected, desc_csv)
+ @patch('stem.descriptor.server_descriptor.RelayDescriptor._verify_digest', Mock())
def test_multiple_descriptors(self):
"""
Exports multiple descriptors, making sure that we get them back in the same
@@ -61,6 +55,7 @@ class TestExport(unittest.TestCase):
expected = "\n".join(nicknames) + "\n"
self.assertEqual(expected, export_csv(descriptors, included_fields = ('nickname',), header = False))
+ @patch('stem.descriptor.server_descriptor.RelayDescriptor._verify_digest', Mock())
def test_file_output(self):
"""
Basic test for the export_csv_file() function, checking that it provides
@@ -75,6 +70,7 @@ class TestExport(unittest.TestCase):
self.assertEqual(desc_csv, csv_buffer.getvalue())
+ @patch('stem.descriptor.server_descriptor.RelayDescriptor._verify_digest', Mock())
def test_excludes_private_attr(self):
"""
Checks that the default attributes for our csv output doesn't include private fields.
@@ -99,6 +95,7 @@ class TestExport(unittest.TestCase):
self.assertEquals("", export_csv([]))
+ @patch('stem.descriptor.server_descriptor.RelayDescriptor._verify_digest', Mock())
def test_invalid_attributes(self):
"""
Attempts to make a csv with attributes that don't exist.
@@ -107,6 +104,7 @@ class TestExport(unittest.TestCase):
desc = get_relay_server_descriptor()
self.assertRaises(ValueError, export_csv, desc, ('nickname', 'blarg!'))
+ @patch('stem.descriptor.server_descriptor.RelayDescriptor._verify_digest', Mock())
def test_multiple_descriptor_types(self):
"""
Attempts to make a csv with multiple descriptor types.
More information about the tor-commits
mailing list