File: test_animate.py

package info (click to toggle)
python-ase 3.21.1-2
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 13,936 kB
  • sloc: python: 122,428; xml: 946; makefile: 111; javascript: 47
file content (28 lines) | stat: -rw-r--r-- 846 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
import warnings

import pytest

from ase.build import bulk, molecule, fcc111
from ase.io.animation import write_animation


def test_animate(plt):
    from matplotlib.animation import writers

    if 'html' not in writers.list():
        pytest.skip('matplotlib html writer not present')


    images = [molecule('H2O'), bulk('Cu'), fcc111('Au', size=(1, 1, 1))]

    # gif and mp4 writers may not be available.  Easiest solution is to only
    # test this using the html writer because it always exists whenever
    # matplotlib exists:
    with warnings.catch_warnings():
        try:
            from matplotlib import MatplotlibDeprecationWarning
        except ImportError:
            pass
        else:
            warnings.simplefilter('ignore', MatplotlibDeprecationWarning)
        write_animation('things.html', images, writer='html')