<div dir="ltr">I'm relatively new to Horizon, but I come with a bunch of experience with Python more generally. I've contributed a couple of small patches to Horizon in an effort to get more familiar with the codebase. Julie Pichon's blog post about testing in Horizon has been invaluable <<a href="http://www.jpichon.net/blog/2013/07/testing-in-horizon/">http://www.jpichon.net/blog/2013/07/testing-in-horizon/</a>>.<div>
<br></div><div>Very recently I attempted to fix a simple bug in which a Panel was being displayed when it shouldn't have been. The resultant 5-line fix ended up breaking 498 of the 1048 unit tests in the suite. I estimated that it would take about a week's effort to address all the failing tests. For more information see <<a href="http://mechanicalcat.net/richard/log/Python/When_testing_goes_bad">http://mechanicalcat.net/richard/log/Python/When_testing_goes_bad</a>></div>
<div><br></div><div>In talking about the issues I've hit I found quite a few people both in #openstack-horizon and other places who are quite forthright in their desire to get rid of all use of mox. I heartily endorse this motion. Indeed, I would be willing to start the process of weeding mox out of the suite entirely, one test module at a time, if there is support for such an effort from Horizon core/TL.</div>
<div><br></div><div>Removing mox is one (admittedly very large) piece of the puzzle though. As I mentioned in my blog post, there are other structural issues that would need to be addressed also; the use of unittest.TestCase and the varying methods of mocking.</div>
<div><br></div><div>At the moment, making a fix like the one I attempted is prohibitively expensive to do, and thus won't be done because Horizon's test suite has become too restrictive to change (unnecessarily so). I'd like to see that change.</div>
<div><br></div><div><br></div><div> Richard</div><div><br></div></div>