def test_populate_first_file_name(self): """Test MediaList.populate() yield first video file name.""" media_list = MediaList(profile=self.profile) gen = media_list.populate(('Dad.mpg',)) next(gen) assert next(gen) == 'Dad.mpg'
class TestMedia: """Class for testing media.py module.""" conv_lib = ConversionLib() profile = ConversionProfile(prober=conv_lib.prober_path) profile.update(new_quality='DVD Fullscreen 352x480 (4:3)') def setUp(self): self.media_list = MediaList(profile=self.profile) self.gen = self.media_list.populate(('Dad.mpg',)) next(self.gen) next(self.gen) def test_populate(self): """Test MediaList.populate().""" assert len(self.media_list) == 1 == self.media_list.length assert self.media_list[0].input_path == 'Dad.mpg' def test_delete_file(self): """Test MediaList.delete_file().""" # Be sure there is one element in the list assert len(self.media_list) == 1 self.media_list.delete_file(position=0) assert len(self.media_list) == 0 def test_get_file_object(self): """Test MediaList.get_file().""" assert isinstance(self.media_list.get_file(0), _MediaFile) def test_get_file_name(self): """Test MediaList.get_file_name().""" assert self.media_list.get_file_name(position=0) == 'Dad' def test_get_file_name_with_extension(self): """Test MediaList.get_file_name() with extension.""" assert self.media_list.get_file_name(position=0, with_extension=True) == 'Dad.mpg' def test_get_file_path(self): """Test MediaList.get_file_path().""" assert self.media_list.get_file_path(position=0) == 'Dad.mpg' def test_get_file_status(self): """Test MediaList.get_file_status().""" assert self.media_list.get_file_status(position=0) == STATUS.todo def test_set_file_status(self): """Test MediaList.set_file_status().""" self.media_list.set_file_status(0, STATUS.done) assert self.media_list.get_file_status(position=0) == STATUS.done def test_get_file_info(self): """Test MediaList.get_file_info().""" assert self.media_list.get_file_info(0, 'filename') == 'Dad.mpg' def test_running_file_name(self): """Test MediaList.running_file_name().""" self.media_list.position = 0 assert self.media_list.running_file_name() == 'Dad' def test_running_file_info(self): """Test MediaList.running_file_info().""" self.media_list.position = 0 assert self.media_list.running_file_info('filename') == 'Dad.mpg' def test_running_file_status(self): """Test MediaList.running_file_status().""" assert self.media_list.running_file_status == STATUS.todo def test_set_running_file_status(self): """Test MediaList.running_file_status.""" self.media_list.running_file_status = STATUS.done assert self.media_list.running_file_status == STATUS.done def test_running_file_output_name(self): """Test MediaList.running_file_output_name().""" assert self.media_list.running_file_output_name('.', False) == 'Dad.mpg' def test_is_exhausted_true(self): """Test MediaList.is_exhausted == True.""" self.media_list.position = 0 assert self.media_list.is_exhausted def test_is_exhausted_false(self): """Test MediaList.is_exhausted == False.""" self.media_list.position = -1 assert not self.media_list.is_exhausted def test_all_stopped_true(self): """Test MediaList.all_stopped == True.""" self.media_list.set_file_status(0, 'Stopped') assert self.media_list.all_stopped def test_all_stopped_false(self): """Test MediaList.all_stopped == False.""" self.media_list.set_file_status(0, 'Todo') assert not self.media_list.all_stopped def test_length(self): """Test MediaList.length.""" assert self.media_list.length == 1 def test_duration(self): """Test MediaList.duration().""" nose.tools.assert_almost_equal(self.media_list.duration, 120.72) @nose.tools.raises(StopIteration) def test_add_file_twice(self): """Testing adding the same file twice.""" assert self.media_list.length == 1 gen = self.media_list.populate(('Dad.mpg',)) next(gen) def test_build_conversion_cmd(self): """Test _MediaFile.build_conversion_cmd.""" assert self.media_list.get_file(0).build_conversion_cmd( output_dir='.', tagged_output=True, subtitle=True, target_quality='DVD Fullscreen 352x480 (4:3)') == ['-i', 'Dad.mpg', '-f', 'dvd', '-target', 'ntsc-dvd', '-vcodec', 'mpeg2video', '-r', '29.97', '-s', '352x480', '-aspect', '4:3', '-b:v', '4000k', '-mbd', 'rd', '-cmp', '2', '-subcmp', '2', '-acodec', 'mp2', '-b:a', '192k', '-ar', '48000', '-ac', '2', '-threads', '3', '-y', './[DVDF]-Dad.mpg'] def test_running_file_conversion_cmd(self): """Test MediaList.running_file_conversion_cmd().""" assert self.media_list.running_file_conversion_cmd( output_dir='.', tagged_output=True, subtitle=True, target_quality='DVD Fullscreen 352x480 (4:3)') == ['-i', 'Dad.mpg', '-f', 'dvd', '-target', 'ntsc-dvd', '-vcodec', 'mpeg2video', '-r', '29.97', '-s', '352x480', '-aspect', '4:3', '-b:v', '4000k', '-mbd', 'rd', '-cmp', '2', '-subcmp', '2', '-acodec', 'mp2', '-b:a', '192k', '-ar', '48000', '-ac', '2', '-threads', '3', '-y', './[DVDF]-Dad.mpg'] @nose.tools.raises(PermissionError) def test_running_file_conversion_cmd_permission_error(self): """Test MediaList.running_file_conversion_cmd() -> PermissionError.""" self.media_list.running_file_conversion_cmd( output_dir='/', tagged_output=True, subtitle=True, target_quality='DVD Fullscreen 352x480 (4:3)') def test_clear(self): """Test MediaList.clear().""" self.media_list.clear() assert not self.media_list def test_populate_files_count(self): """Test MediaList.populate() yield amount of video files.""" media_list = MediaList(profile=self.profile) gen = media_list.populate(('Dad.mpg',)) assert next(gen) == 1 def test_populate_first_file_name(self): """Test MediaList.populate() yield first video file name.""" media_list = MediaList(profile=self.profile) gen = media_list.populate(('Dad.mpg',)) next(gen) assert next(gen) == 'Dad.mpg'
def test_populate_files_count(self): """Test MediaList.populate() yield amount of video files.""" media_list = MediaList(profile=self.profile) gen = media_list.populate(('Dad.mpg',)) assert next(gen) == 1