14
14
# along with this program; if not, write to the Free Software
15
15
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18
26
def load_tests(basic_tests, module, loader):
20
'test_annotate_config',
32
basic_tests.addTest(loader.loadTestsFromModuleNames(
33
["%s.%s" % (__name__, tmn) for tmn in testmod_names]))
27
if module == 'discover':
28
here = os.path.abspath(os.path.dirname(__file__))
29
basic_tests.addTest(loader.discover(here))
31
full_name = "%s.%s" % (__name__, module)
32
basic_tests.addTest(loader.loadTestsFromModuleNames([full_name]))
36
class MockMethod(object):
40
def bind(klass, test_instance, obj, method_name):
39
def bind(klass, test_instance, obj, method_name, return_value=None):
41
40
original_method = getattr(obj, method_name)
42
41
test_instance.addCleanup(setattr, obj, method_name, original_method)
43
setattr(obj, method_name, klass())
42
setattr(obj, method_name, klass(return_value))
44
def __init__(self, return_value=None):
46
45
self.called = False
49
self.return_value = return_value
50
51
def __call__(self, *args, **kwargs):
53
55
self.kwargs = kwargs
56
return self.return_value
59
class MockProperty(MockMethod):
62
def bind(klass, test_instance, obj, method_name, return_value=None):
63
original_method = getattr(obj, method_name)
64
test_instance.addCleanup(setattr, obj, method_name, original_method)
65
mock = klass(return_value)
66
setattr(obj, method_name, property(mock.get_value, mock.set_value))
69
def get_value(self, other):
71
return self.return_value
73
def set_value(self, other, value):
75
self.return_value = value