A substantive reason for switching from mox to mock is the derelict state of mox releases. There hasn't been a release of mox in three years: the latest, mox-0.5.3, was released in 2010 [1, 2]. Moreover, in the past 3 years, substantial bugs have been fixed in upstream mox. For example, with the year-old fix to https://code.google.com/p/pymox/issues/detail?id=16, a very nasty bug in nova would have been caught by an existing test [3].
Alternatively, a copy of the upstream mox code could be added in-tree. [1] mox releases: https://code.google.com/p/pymox/downloads/list [2] mox on pypi: https://pypi.python.org/pypi/mox [3] see comments 5 and 6 in https://bugs.launchpad.net/nova/+bug/1251792 On Wed, Nov 13, 2013 at 2:24 PM, Matt Riedemann <mrie...@linux.vnet.ibm.com> wrote: > > > On 11/12/2013 5:04 PM, Chuck Short wrote: >> >> >> >> >> On Tue, Nov 12, 2013 at 4:49 PM, Mark McLoughlin <mar...@redhat.com >> <mailto:mar...@redhat.com>> wrote: >> >> On Tue, 2013-11-12 at 16:42 -0500, Chuck Short wrote: >> > >> > Hi >> > >> > >> > On Tue, Nov 12, 2013 at 4:24 PM, Mark McLoughlin >> <mar...@redhat.com <mailto:mar...@redhat.com>> >> >> > wrote: >> > On Tue, 2013-11-12 at 13:11 -0800, Shawn Hartsock wrote: >> > > Maybe we should have some 60% rule... that is: If you >> change >> > more than >> > > half of a test... you should *probably* rewrite the test >> in >> > Mock. >> > >> > >> > A rule needs a reasoning attached to it :) >> > >> > Why do we want people to use mock? >> > >> > Is it really for Python3? If so, I assume that means we've >> > ruled out the >> > python3 port of mox? (Ok by me, but would be good to hear >> why) >> > And, if >> > that's the case, then we should encourage whoever wants to >> > port mox >> > based tests to mock. >> > >> > >> > >> > The upstream maintainer is not going to port mox to python3 so we >> have >> > a fork of mox called mox3. Ideally, we would drop the usage of mox >> in >> > favour of mock so we don't have to carry a forked mox. >> >> Isn't that the opposite conclusion you came to here: >> >> >> http://lists.openstack.org/pipermail/openstack-dev/2013-July/012474.html >> >> i.e. using mox3 results in less code churn? >> >> Mark. >> >> >> >> Yes that was my original position but I though we agreed in thread >> (further on) that we would use mox3 and then migrate to mock further on. >> >> Regards >> chuck >> >> >> _______________________________________________ >> OpenStack-dev mailing list >> OpenStack-dev@lists.openstack.org >> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev >> > > So it sounds like we're good with using mox for new tests again? Given Chuck > got it into global-requirements here: > > https://github.com/openstack/requirements/commit/998dda263d7c7881070e3f16e4523ddcd23fc36d > > We can stave off the need to transition everything from mox to mock? > > I can't seem to find the nova blueprint to convert everything from mox to > mock, maybe it was obsoleted already. > > Anyway, if mox(3) is OK and we don't need to use mock, it seems like we > could add something to the developer guide here because I think this > question comes up frequently: > > http://docs.openstack.org/developer/nova/devref/unit_tests.html > > Does anyone disagree? > > BTW, I care about this because I've been keeping in mind the mox/mock > transition when doing code reviews and giving a -1 when new tests are using > mox (since I thought that was a no-no now). > -- > > Thanks, > > Matt Riedemann > > > > _______________________________________________ > OpenStack-dev mailing list > OpenStack-dev@lists.openstack.org > http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev _______________________________________________ OpenStack-dev mailing list OpenStack-dev@lists.openstack.org http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev