def test_matches_only_v1_or_v2_responses(self): self.assertEqual( verify_result(self.result, [self.responses[0]], self.checksums), True) self.assertEqual( verify_result(self.result, [self.responses[1]], self.checksums), True)
def test_matches_only_v1_or_v2_responses(self): self.assertEquals( verify_result( self.result, [self.responses[0]], self.checksums ), True ) self.assertEquals( verify_result( self.result, [self.responses[1]], self.checksums ), True )
def test_incomplete_checksums(self): self.assertEqual( verify_result(self.result, self.responses, { 'v1': ['284fc705', '9cc1f32e'], 'v2': [None, 'dd97d2c3'], }), True) self.assertEqual( verify_result(self.result, self.responses, { 'v1': ['284fc705', None], 'v2': ['dc77f9ab', 'dd97d2c3'], }), True) self.assertEqual( verify_result(self.result, self.responses, { 'v1': ['284fc705', None], 'v2': [None, 'dd97d2c3'], }), True)
def test_stores_accuraterip_results_on_result(self): self.assertEqual( verify_result(self.result, self.responses, self.checksums), True) self.assertEqual( self.result.tracks[0].AR, { 'v1': { 'CRC': '284fc705', 'DBCRC': '284fc705', 'DBConfidence': 12, }, 'v2': { 'CRC': 'dc77f9ab', 'DBCRC': 'dc77f9ab', 'DBConfidence': 7 }, 'DBMaxConfidence': 12, 'DBMaxConfidenceCRC': '284fc705', }) self.assertEqual( self.result.tracks[1].AR, { 'v1': { 'CRC': '9cc1f32e', 'DBCRC': '9cc1f32e', 'DBConfidence': 20, }, 'v2': { 'CRC': 'dd97d2c3', 'DBCRC': 'dd97d2c3', 'DBConfidence': 7, }, 'DBMaxConfidence': 20, 'DBMaxConfidenceCRC': '9cc1f32e', })
def test_stores_accuraterip_results_on_result(self): self.assertEquals( verify_result(self.result, self.responses, self.checksums), True ) self.assertEquals(self.result.tracks[0].AR, { 'v1': { 'CRC': '284fc705', 'DBCRC': '284fc705', 'DBConfidence': 12, }, 'v2': { 'CRC': 'dc77f9ab', 'DBCRC': 'dc77f9ab', 'DBConfidence': 4, }, 'DBMaxConfidence': 12, 'DBMaxConfidenceCRC': '284fc705', }) self.assertEquals(self.result.tracks[1].AR, { 'v1': { 'CRC': '9cc1f32e', 'DBCRC': '9cc1f32e', 'DBConfidence': 20, }, 'v2': { 'CRC': 'dd97d2c3', 'DBCRC': 'dd97d2c3', 'DBConfidence': 4, }, 'DBMaxConfidence': 20, 'DBMaxConfidenceCRC': '9cc1f32e', })
def verifyImage(self, runner, table): """Verify table against accuraterip and cue_path track lengths. Verify our image against the given AccurateRip responses. Needs an initialized self.result. Will set accurip and friends on each TrackResult. Populates self.result.tracks with above TrackResults. :param runner: :type runner: :param table: :type table: """ cueImage = image.Image(self.cuePath) # assigns track lengths verifytask = image.ImageVerifyTask(cueImage) runner.run(verifytask) if verifytask.exception: logger.error(verifytask.exceptionMessage) return False responses = accurip.get_db_entry(table.accuraterip_path()) logger.info('%d AccurateRip response(s) found' % len(responses)) checksums = accurip.calculate_checksums([ os.path.join(os.path.dirname(self.cuePath), t.indexes[1].path) for t in filter(lambda t: t.number != 0, cueImage.cue.table.tracks) ]) if not (checksums and any(checksums['v1']) and any(checksums['v2'])): return False return accurip.verify_result(self.result, responses, checksums)
def verifyImage(self, runner, table): """ verify table against accuraterip and cue_path track lengths Verify our image against the given AccurateRip responses. Needs an initialized self.result. Will set accurip and friends on each TrackResult. Populates self.result.tracks with above TrackResults. """ cueImage = image.Image(self.cuePath) # assigns track lengths verifytask = image.ImageVerifyTask(cueImage) runner.run(verifytask) if verifytask.exception: logger.error(verifytask.exceptionMessage) return False responses = accurip.get_db_entry(table.accuraterip_path()) logger.info('%d AccurateRip response(s) found', len(responses)) checksums = accurip.calculate_checksums([ os.path.join(os.path.dirname(self.cuePath), t.indexes[1].path) for t in [t for t in cueImage.cue.table.tracks if t.number != 0] ]) if not (checksums and any(checksums['v1']) and any(checksums['v2'])): return False return accurip.verify_result(self.result, responses, checksums)
def test_passes_with_htoa(self): htoa = TrackResult() htoa.number = 0 self.result.tracks.append(htoa) self.assertEquals( verify_result(self.result, self.responses, self.checksums), True )
def test_wrong_checksums_returns_false(self): self.assertEquals( verify_result(self.result, self.responses, { 'v1': ['deadbeef', '89abcdef'], 'v2': ['76543210', '01234567'] }), False )
def test_incomplete_checksums(self): self.assertEquals( verify_result(self.result, self.responses, { 'v1': ['284fc705', '9cc1f32e'], 'v2': [None, 'dd97d2c3'], }), True ) self.assertEquals( verify_result(self.result, self.responses, { 'v1': ['284fc705', None], 'v2': ['dc77f9ab', 'dd97d2c3'], }), True ) self.assertEquals( verify_result(self.result, self.responses, { 'v1': ['284fc705', None], 'v2': [None, 'dd97d2c3'], }), True )
def test_empty_checksums_returns_false(self): self.assertEqual(verify_result(self.result, self.responses, {}), False)
def test_empty_result_returns_false(self): self.assertEqual( verify_result(RipResult(), self.responses, self.checksums), False)
def test_empty_checksums_returns_false(self): self.assertEquals( verify_result(self.result, self.responses, {}), False )
def test_empty_responses_returns_false(self): self.assertEquals( verify_result(self.result, [], self.checksums), False )
def test_empty_result_returns_false(self): self.assertEquals( verify_result(RipResult(), self.responses, self.checksums), False )
def test_empty_responses_returns_false(self): self.assertEqual( verify_result(self.result, [], self.checksums), False )