Exemplo n.º 1
0
 def test_recorder_record_fail(self):
     scheduler = Mock(BlockingScheduler)
     scheduler.get_jobs.return_value = []
     hdhomerun = Mock(HDHomeRunInterface)
     db = Mock(CarbonDVRDatabase)
     db.getPendingRecordings.return_value = []
     recorder = Recorder(
         scheduler, hdhomerun, db,
         '/var/spool/carbondvr/recordings/raw_{recordingID}.mp4',
         '/var/log/carbondvr/recordings/rec{recordingID}.log')
     recorder.logger = Mock()
     schedule = Bunch(channelMajor=8,
                      channelMinor=3,
                      startTime=datetime(1992, 12, 21, 16, 57, 19),
                      duration=timedelta(minutes=15),
                      showID='show2',
                      episodeID='episode2',
                      rerunCode='N')
     db.getUniqueID.return_value = 58162
     hdhomerun.record.side_effect = BadRecordingException()
     recorder.record(schedule)
     db.insertRecording.assert_called_once_with(58162, 'show2', 'episode2',
                                                timedelta(minutes=15), 'N')
     hdhomerun.record.assert_called_once_with(
         8, 3,
         datetime(1992, 12, 21, 16, 57, 19) + timedelta(minutes=15),
         '/var/spool/carbondvr/recordings/raw_58162.mp4',
         '/var/log/carbondvr/recordings/rec58162.log')
     self.assertFalse(db.insertRawVideoLocation.called)
Exemplo n.º 2
0
 def test_recorder_record_success(self):
     scheduler = Mock(BlockingScheduler)
     scheduler.get_jobs.return_value = []
     hdhomerun = Mock(HDHomeRunInterface)
     db = Mock(CarbonDVRDatabase)
     db.getPendingRecordings.return_value = []
     recorder = Recorder(scheduler, hdhomerun, db,
                         'rec/recording_{recordingID}.mp4',
                         'logs/recording_{recordingID}.log')
     recorder.logger = Mock()
     schedule = Bunch(channelMajor=1,
                      channelMinor=2,
                      startTime=datetime(1970, 1, 1, 0, 0, 0),
                      duration=timedelta(minutes=47),
                      showID='show1',
                      episodeID='episode1',
                      rerunCode='R')
     db.getUniqueID.return_value = 3
     recorder.record(schedule)
     db.insertRecording.assert_called_once_with(3, 'show1', 'episode1',
                                                timedelta(minutes=47), 'R')
     hdhomerun.record.assert_called_once_with(
         1, 2,
         datetime(1970, 1, 1, 0, 0, 0) + timedelta(minutes=47),
         'rec/recording_3.mp4', 'logs/recording_3.log')
     db.insertRawVideoLocation.assert_called_once_with(
         3, 'rec/recording_3.mp4')
Exemplo n.º 3
0
 def test_recorder_record_success(self):
     scheduler = Mock(BlockingScheduler)
     scheduler.get_jobs.return_value = []
     hdhomerun = Mock(HDHomeRunInterface)
     db = Mock(CarbonDVRDatabase)
     db.getPendingRecordings.return_value = []
     recorder = Recorder(scheduler, hdhomerun, db, 'rec/recording_{recordingID}.mp4', 'logs/recording_{recordingID}.log')
     recorder.logger = Mock()
     schedule = Bunch(channelMajor=1, channelMinor=2, startTime=datetime(1970,1,1,0,0,0), duration=timedelta(minutes=47), showID='show1', episodeID='episode1', rerunCode='R')
     db.getUniqueID.return_value = 3
     recorder.record(schedule)
     db.insertRecording.assert_called_once_with(3, 'show1', 'episode1', timedelta(minutes=47), 'R')
     hdhomerun.record.assert_called_once_with(1, 2, datetime(1970,1,1,0,0,0) + timedelta(minutes=47), 'rec/recording_3.mp4', 'logs/recording_3.log')
     db.insertRawVideoLocation.assert_called_once_with(3, 'rec/recording_3.mp4')
Exemplo n.º 4
0
 def test_recorder_record_fail(self):
     scheduler = Mock(BlockingScheduler)
     scheduler.get_jobs.return_value = []
     hdhomerun = Mock(HDHomeRunInterface)
     db = Mock(CarbonDVRDatabase)
     db.getPendingRecordings.return_value = []
     recorder = Recorder(scheduler, hdhomerun, db, '/var/spool/carbondvr/recordings/raw_{recordingID}.mp4', '/var/log/carbondvr/recordings/rec{recordingID}.log')
     recorder.logger = Mock()
     schedule = Bunch(channelMajor=8, channelMinor=3, startTime=datetime(1992,12,21,16,57,19), duration=timedelta(minutes=15), showID='show2', episodeID='episode2', rerunCode='N')
     db.getUniqueID.return_value = 58162
     hdhomerun.record.side_effect=BadRecordingException()
     recorder.record(schedule)
     db.insertRecording.assert_called_once_with(58162, 'show2', 'episode2', timedelta(minutes=15), 'N')
     hdhomerun.record.assert_called_once_with(8, 3, datetime(1992,12,21,16,57,19) + timedelta(minutes=15),
                                              '/var/spool/carbondvr/recordings/raw_58162.mp4', '/var/log/carbondvr/recordings/rec58162.log')
     self.assertFalse(db.insertRawVideoLocation.called)
Exemplo n.º 5
0
def record_mode(file_name):
    print("Recording mode has been activated.")
    recorder = Recorder(file_name)
    recorder.record()