| Index: tests/revert_unittest.py
|
| diff --git a/tests/revert_unittest.py b/tests/revert_unittest.py
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..3b2fd2c9293ef67bcedfa4e947f1dabab61d728f
|
| --- /dev/null
|
| +++ b/tests/revert_unittest.py
|
| @@ -0,0 +1,50 @@
|
| +#!/usr/bin/python
|
| +# Copyright (c) 2009 The Chromium Authors. All rights reserved.
|
| +# Use of this source code is governed by a BSD-style license that can be
|
| +# found in the LICENSE file.
|
| +
|
| +"""Unit tests for revert.py."""
|
| +
|
| +import os
|
| +import unittest
|
| +
|
| +# Local imports
|
| +import revert
|
| +
|
| +
|
| +class RevertTestsBase(unittest.TestCase):
|
| + """Setups and tear downs the mocks but doesn't test anything as-is."""
|
| + def setUp(self):
|
| + pass
|
| +
|
| + def tearDown(self):
|
| + pass
|
| +
|
| + def compareMembers(self, object, members):
|
| + """If you add a member, be sure to add the relevant test!"""
|
| + # Skip over members starting with '_' since they are usually not meant to
|
| + # be for public use.
|
| + actual_members = [x for x in sorted(dir(object))
|
| + if not x.startswith('_')]
|
| + expected_members = sorted(members)
|
| + if actual_members != expected_members:
|
| + diff = ([i for i in actual_members if i not in expected_members] +
|
| + [i for i in expected_members if i not in actual_members])
|
| + print diff
|
| + self.assertEqual(actual_members, expected_members)
|
| +
|
| +
|
| +class RevertUnittest(RevertTestsBase):
|
| + """General revert.py tests."""
|
| + def testMembersChanged(self):
|
| + members = [
|
| + 'CaptureSVNLog', 'GetRepoBase', 'Main', 'ModifiedFile', 'NoBlameList',
|
| + 'NoModifiedFile', 'OutsideOfCheckout', 'Revert', 'UniqueFast',
|
| + 'exceptions', 'gcl', 'gclient', 'optparse', 'os', 'sys', 'xml'
|
| + ]
|
| + # If this test fails, you should add the relevant test.
|
| + self.compareMembers(revert, members)
|
| +
|
| +
|
| +if __name__ == '__main__':
|
| + unittest.main()
|
|
|