On Tue, Sep 8, 2009 at 11:46 AM, Andrew Straw<straw...@astraw.com> wrote: > Michael Droettboom wrote: >> On 09/08/2009 10:24 AM, John Hunter wrote: >> >>> On Tue, Sep 8, 2009 at 8:54 AM, Michael Droettboom<md...@stsci.edu> wrote: >>> >>> >>>> I've been only skimming the surface of the discussion about the new test >>>> framework up until now. >>>> >>>> Just got around to trying it, and every comparison failed because it was >>>> selecting a different font than that used in the baseline images. (My >>>> matplotlibrc customizes the fonts). >>>> >>>> It seems we should probably force "font.family" to "Bitstream Vera Sans" >>>> when running the tests. Adding "rcParam['font.family'] = 'Bitstream Vera >>>> Sans'" to the "test" function seems to do the trick, but I'll let Andrew >>>> make the final call about whether that's the right change. Perhaps we >>>> should (as with the documentation build) provide a stock matplotlibrc >>>> specifically for testing, since there will be other things like this? Of >>>> course, all of these options cause matplotlib.test() to have rcParam >>>> side-effects. Probably not worth addressing now, but perhaps worth noting. >>>> >>>> >>> We do have a matplotlibrc file in the "test" dir (the dir that lives >>> next to setup.py, not lib/matplotlib/tests. This is where we run the >>> buildbot tests from. It might be a good idea to set the font >>> explicitly in the test code itself so people can run the tests from >>> any dir, but I'll leave it to Andrew to weigh in on that. >>> >>> >> Sure. If we *don't* decide to set it in the code, we should perhaps add >> a line suggesting to "run the tests from lib/matplotlib/tests" in the >> documentation. An even better solution might be to forcibly load the >> matplotlibrc in that directory (even if it's an install directory) when >> the tests are run. >> > While the default test usage should probably set as much as possible to > ensure things are identical, we also want to be able to test other code > paths, so I think I'll add some kind of kwarg to matplotlib.test() to > handle non-testing-default rcParams. I think setting lots of things, > including the font, explicitly in the default case is a good idea.
I think the defaults should be used and any non-standard settings should explicitly define the rcSettings. Perhaps a decorator is needed that lets you pass the rc values, runs the test, and then calls rcdefaults on the way out? I haven't been following your progress closely (sorry about that, I am very grateful for all the work you are doing.) > Question for the rcParams experts: Can we save a copy of it so that we > can restore its state after matplotlib.test() is done? (It's just a > dictionary, right?) rcdefaults() should reset all the values for you. Darren ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel