def test_get_bins_info(self): recorder = Recorder([{ 'name': 'name', 'device': 'videotest', 'path': self.tmppath }]) info = recorder.get_bins_info() self.assertEqual(info[0]['name'], 'name') self.assertEqual(info[0]['path'], self.tmppath)
def test_record_multi(self, bins): recorder = Recorder(bins) recorder.preview() self.assertEqual(recorder.get_status()[1], Gst.State.PLAYING) time.sleep(4) self.assertEqual(recorder.get_recorded_time(), 0) recorder.record() time.sleep(4) recorder.stop() self.assertTrue(recorder.get_recorded_time() > 0) self.assertCorrectRecording(bins, 4)
def test_preview_multi(self, bins): recorder = Recorder(bins) recorder.preview() self.assertEqual(recorder.get_status()[1], Gst.State.PLAYING) time.sleep(4) recorder.stop() self.assertEqual(recorder.get_recorded_time(), 0) self.assertCorrectRecording(bins, 0)
def test_preview_and_record(self, bins): recorder = Recorder(bins) recorder.preview_and_record() self.assertEqual(recorder.get_status()[1], Gst.State.PLAYING) time.sleep(2) recorder.stop() self.assertTrue(recorder.get_recorded_time() > 0) self.assertCorrectRecording(bins, 2)
def test_constructor(self): self.assertRaises(TypeError, Recorder) self.assertRaises(TypeError, Recorder, []) self.assertRaises(NameError, Recorder, [{'name': 'name'}]) self.assertRaises(NameError, Recorder, [{ 'type': 'v4l2', 'caps': 'raw' }]) self.assertRaises(NameError, Recorder, [{ 'device': 'v4l2', 'caps': 'raw' }]) #valid Recorder(self.getVideoTestBin()) Recorder(self.getVideoTestBin() + self.getOtherVideoTestBin() + self.getAudioTestBin())
def test_preview(self, bins): recorder = Recorder(bins) recorder.preview() self.assertEqual(recorder.get_status()[1], Gst.State.PLAYING) time.sleep(2) recorder.stop() self.assertEqual(recorder.get_recorded_time(), 0) self.assertCorrectRecording(bins, 0)
def test_get_display_areas_info(self): recorder = Recorder(self.getVideoTestBin() + self.getOtherVideoTestBin() + self.getAudioTestBin()) self.assertEqual(recorder.get_display_areas_info(), ['sink-Bars', 'sink-Static']) recorder = Recorder([{ 'name': '1', 'device': 'videotest', 'path': self.tmppath }, { 'name': '2', 'device': 'videotest', 'path': self.tmppath }]) self.assertEqual(recorder.get_display_areas_info(), ['sink-1', 'sink-2'])
def test_pause_only_recording_and_stop(self, bins): recorder = Recorder(bins) recorder.preview() self.assertEqual(recorder.get_status()[1], Gst.State.PLAYING) time.sleep(2) self.assertEqual(recorder.get_recorded_time(), 0) recorder.record() time.sleep(2) recorder.pause_recording() time.sleep(2) recorder.stop() self.assertCorrectRecording(bins, 2)
def test_pause_only_recording(self, bins): recorder = Recorder(bins) recorder.preview() self.assertEqual(recorder.get_status()[1], Gst.State.PLAYING) time.sleep(2) self.assertEqual(recorder.get_recorded_time(), 0) recorder.record() time.sleep(2) recorder.pause_recording() time.sleep(2) recorder.resume_recording() time.sleep(1) recorder.stop() self.assertCorrectRecording(bins, 3)
def test_pause_error(self, bins): recorder = Recorder(bins) recorder.preview() self.assertEqual(recorder.get_status()[1], Gst.State.PLAYING) time.sleep(2) rec_time = recorder.get_recorded_time() #self.assertEqual(rec_time, 0) recorder.pause() time.sleep(2) recorder.stop(True) self.assertEqual(recorder.get_status()[1], Gst.State.NULL)
def test_get_bins_info(self): recorder = Recorder([{'name': 'name', 'device': 'videotest', 'path': self.tmppath}]) info = recorder.get_bins_info() self.assertEqual(info[0]['name'], 'name') self.assertEqual(info[0]['path'], self.tmppath)
def test_get_display_areas_info(self): recorder = Recorder(self.getVideoTestBin() + self.getOtherVideoTestBin() + self.getAudioTestBin()) self.assertEqual(recorder.get_display_areas_info(), ['sink-Bars', 'sink-Static']) recorder = Recorder([{'name': '1', 'device': 'videotest', 'path': self.tmppath}, {'name': '2', 'device': 'videotest', 'path': self.tmppath}]) self.assertEqual(recorder.get_display_areas_info(), ['sink-1', 'sink-2'])