Commit beabd565 authored by Niels-Oliver Walkowski's avatar Niels-Oliver Walkowski
Browse files

feat(test): add basic tests

Add unit test for the Frame class.
Add integration test for seqmean of luminance and saturation.
parent aa232eca
import sys
from itten.movie import Movie
from itten.views import UnivariateSequence # , MultivariateSequence
# from itten.visuals import UnivariatePlot # , MultivariatePlot
import pytest
import numpy as np
sys.path.append('../itten')
# TODO Eine allgemeine Funktion zum Testen der Frames Klasse, der
# Kontrastberechnung und der Visualisierung, jeweils mit Parametrisierung für
# alle Kontraste
TESTMOVIE = 'syriana'
@pytest.fixture(scope='module')
def m(prefix=TESTMOVIE):
prefix += '_'
m = Movie(prefix, './tests/data/' + TESTMOVIE + '/frames/240p30/', fps=200)
yield m
m = None
def test_frame_cls(m):
err_msg = "Frames are not counted correctly"
assert m.fsize == m._frames.frm_length, err_msg
assert m._frames.frm_cnt == len(m._frames.frames), err_msg
@pytest.mark.parametrize('ctrst, meth', [('monochromatic', 'luminance'),
('saturation', 'saturation')])
def test_seqmean(m, ctrst, meth):
view = UnivariateSequence(m._frames)
view.seqmean(ctrst, method=meth, frm_stp=200,)
err_msg = "Wrong number of frames after Movie object initialization"
assert m._frames.count_frames() == 29398, err_msg
err_msg = "Wrong number of mean values for current fps/movie length ratio"
assert view.size == 147, err_msg
err_msg = "Mean contrast values are not computed appropriately"
assert int(np.median(view)) > 0, err_msg
# viz = UnivariatePlot(view,)
# viz.fig.set_size_inches(40, 5)
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment