:) yeah, you're completely misunderstanding me. So, you've made a much better StubOutWithMock() and slightly better stubs.Set() by (essentially) ignoring the method parameter checks and just focusing on the return type.
Using your example: def test_something(self): def fake_instance_get(context, instance_uuid): return {'name': 'this or that', 'instance_type_id': 42} self.stubs.Set(nova.db, 'instance_get_by_uuid', fake_instance_get) exercise_the_routine_that_will_eventually_do_an_instance_get() verify_that_the_system_is_now_in_the_desired_state() Could your library be expanded to allow: def test_something(self): self.sorens_mox.Set(nova.db, 'instance_get_by_uuid', {'name': 'this or that', 'instance_type_id': 42}) self.sorens_mox.Set(nova.my_module, 'get_list_of_things', range(10)) exercise_the_routine_that_will_eventually_do_an_instance_get_and_get_list() verify_that_the_system_is_now_in_the_desired_state() See what I mean? Side note: I don't view tests that permit exercise_the_routine_that_will_eventually_do_an_instance_get() calls to be unit tests ... they're integration tests and the source of all this headache in the first place. A unit test should be exercise_the_routine_that_will_directly_call_instance_get() Hopefully we're saying the same thing on this last point? -S ________________________________________ From: Soren Hansen [so...@linux2go.dk] Am I completely misunderstanding you? _______________________________________________ Mailing list: https://launchpad.net/~openstack Post to : openstack@lists.launchpad.net Unsubscribe : https://launchpad.net/~openstack More help : https://help.launchpad.net/ListHelp