32 lines
828 B
Python
32 lines
828 B
Python
import os
|
|
import pytest
|
|
|
|
import mdevaluate
|
|
from mdevaluate import coordinates
|
|
|
|
|
|
@pytest.fixture
|
|
def trajectory(request):
|
|
return mdevaluate.open(os.path.join(os.path.dirname(__file__), "data/water"))
|
|
|
|
|
|
def test_coordinates_getitem(trajectory):
|
|
"""
|
|
Tests for the Coordinates class.
|
|
"""
|
|
assert isinstance(trajectory[0], coordinates.CoordinateFrame)
|
|
assert isinstance(trajectory[len(trajectory) - 1], coordinates.CoordinateFrame)
|
|
i = 0
|
|
dt = trajectory[1].time - trajectory[0].time
|
|
for f in trajectory:
|
|
assert f.step == i
|
|
assert round(f.time, 3) == round(i * dt, 3)
|
|
i += 1
|
|
sl = trajectory[0::10]
|
|
assert isinstance(sl, coordinates.Coordinates)
|
|
i = 0
|
|
for f in sl:
|
|
assert f.step == i
|
|
assert round(f.time, 3) == round(i * dt, 3)
|
|
i += 10
|