Skip to content

Multiple test errors in current master on Python 3.4 / Ubuntu 12.04 #3086

Closed

Description

@andrewclegg

Not sure if you're officially supporting Python 3.4 yet, but just in case this is useful...

I am trying to get the current master branch (4b1bd63) working on 3.4 for my Snake Charmer project. When I run

python3.4 -c "import matplotlib; matplotlib.test()"

I get 4 tests in error (see below).

To reproduce, check out snake-charmer-devs/snake-charmer@72734de, spin up a VM as directed in the README, log into the VM by doing vagrant ssh and run the tests as normal.

Test transcript:

======================================================================
ERROR: matplotlib.tests.test_text.test_multiline.test
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/local/lib/python3.4/dist-packages/nose/case.py", line 198, in runTest
    self.test(*self.arg)
  File "/usr/local/lib/python3.4/dist-packages/matplotlib/testing/decorators.py", line 50, in failer
    result = f(*args, **kwargs)
  File "/usr/local/lib/python3.4/dist-packages/matplotlib/testing/decorators.py", line 188, in do_test
    figure.savefig(actual_fname, **self._savefig_kwarg)
  File "/usr/local/lib/python3.4/dist-packages/matplotlib/figure.py", line 1470, in savefig
    self.canvas.print_figure(*args, **kwargs)
  File "/usr/local/lib/python3.4/dist-packages/matplotlib/backend_bases.py", line 2192, in print_figure
    **kwargs)
  File "/usr/local/lib/python3.4/dist-packages/matplotlib/backends/backend_svg.py", line 1177, in print_svg
    return self._print_svg(filename, svgwriter, fh_to_close, **kwargs)
  File "/usr/local/lib/python3.4/dist-packages/matplotlib/backends/backend_svg.py", line 1205, in _print_svg
    self.figure.draw(renderer)
  File "/usr/local/lib/python3.4/dist-packages/matplotlib/artist.py", line 59, in draw_wrapper
    draw(artist, renderer, *args, **kwargs)
  File "/usr/local/lib/python3.4/dist-packages/matplotlib/figure.py", line 1079, in draw
    func(*args)
  File "/usr/local/lib/python3.4/dist-packages/matplotlib/artist.py", line 59, in draw_wrapper
    draw(artist, renderer, *args, **kwargs)
  File "/usr/local/lib/python3.4/dist-packages/matplotlib/axes/_base.py", line 2088, in draw
    a.draw(renderer)
  File "/usr/local/lib/python3.4/dist-packages/matplotlib/artist.py", line 59, in draw_wrapper
    draw(artist, renderer, *args, **kwargs)
  File "/usr/local/lib/python3.4/dist-packages/matplotlib/text.py", line 538, in draw
    bbox, info, descent = self._get_layout(renderer)
  File "/usr/local/lib/python3.4/dist-packages/matplotlib/text.py", line 320, in _get_layout
    ismath=ismath)
  File "/usr/local/lib/python3.4/dist-packages/matplotlib/backends/backend_svg.py", line 1154, in get_text_width_height_descent
    return self._text2path.get_text_width_height_descent(s, prop, ismath)
  File "/usr/local/lib/python3.4/dist-packages/matplotlib/textpath.py", line 116, in get_text_width_height_descent
    font = self._get_font(prop)
  File "/usr/local/lib/python3.4/dist-packages/matplotlib/textpath.py", line 60, in _get_font
    font = FT2Font(fname)
TypeError: First argument must be a path or file object reading bytes

======================================================================
ERROR: Failure: AttributeError ('module' object has no attribute 'test_dates')
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/local/lib/python3.4/dist-packages/nose/failure.py", line 39, in runTest
    raise self.exc_val.with_traceback(self.tb)
  File "/usr/local/lib/python3.4/dist-packages/nose/loader.py", line 403, in loadTestsFromName
    module = resolve_name(addr.module)
  File "/usr/local/lib/python3.4/dist-packages/nose/util.py", line 321, in resolve_name
    obj = getattr(obj, part)
AttributeError: 'module' object has no attribute 'test_dates'

======================================================================
ERROR: Failure: AttributeError ('module' object has no attribute 'test_legend')
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/local/lib/python3.4/dist-packages/nose/failure.py", line 39, in runTest
    raise self.exc_val.with_traceback(self.tb)
  File "/usr/local/lib/python3.4/dist-packages/nose/loader.py", line 403, in loadTestsFromName
    module = resolve_name(addr.module)
  File "/usr/local/lib/python3.4/dist-packages/nose/util.py", line 321, in resolve_name
    obj = getattr(obj, part)
AttributeError: 'module' object has no attribute 'test_legend'

======================================================================
ERROR: Failure: AttributeError ('module' object has no attribute 'test_patheffects')
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/local/lib/python3.4/dist-packages/nose/failure.py", line 39, in runTest
    raise self.exc_val.with_traceback(self.tb)
  File "/usr/local/lib/python3.4/dist-packages/nose/loader.py", line 403, in loadTestsFromName
    module = resolve_name(addr.module)
  File "/usr/local/lib/python3.4/dist-packages/nose/util.py", line 321, in resolve_name
    obj = getattr(obj, part)
AttributeError: 'module' object has no attribute 'test_patheffects'

----------------------------------------------------------------------
Ran 4546 tests in 11006.755s

FAILED (KNOWNFAIL=365, SKIP=9, errors=4)
/usr/local/lib/python3.4/dist-packages/matplotlib/__init__.py:1252: UserWarning:  This call to matplotlib.use() has no effect
because the backend has already been chosen;
matplotlib.use() must be called *before* pylab, matplotlib.pyplot,
or matplotlib.backends is imported for the first time.

  warnings.warn(_use_error_msg)

Activity

  1. tacaswell commented on May 26, 2014

    @tacaswell
    Member

    Three of those failures are probably due to the VM not having mock installed (I had the same failures locally in a venv and pip install mock fixed it).

    Not sure about the font issue, I can not reproduce that locally, my guess is that the VM misses a font mpl assumes exists so that ends up being a very un-helpful 'file not found' message.

  2. andrewclegg commented on May 27, 2014

    @andrewclegg
    Author

    Actually, installing mock fixed all of them, including that one, thanks.

  3. jenshnielsen commented on May 27, 2014

    @jenshnielsen
    Member

    Shouldn't matplotlib import mock from unittest.mock on python 3.3 and 3.4? https://pypi.python.org/pypi/mock

  4. tacaswell commented on May 27, 2014

    @tacaswell
    Member

    I suspect you are right and something is messed up in our install scripts.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions