def test_schedule_update_existing_record(self, get): reimbursement = Reimbursement() get.return_value = reimbursement content = {'document_id': 42, 'receipt_text': 'lorem ipsum'} self.command.queue = [] self.command.schedule_update(content) get.assert_called_once_with(document_id=42) self.assertEqual(content['receipt_text'], reimbursement.receipt_text)
def test_schedule_update_existing_record(self, get): reimbursement = Reimbursement() get.return_value = reimbursement content = { 'document_id': 42, 'probability': 0.618, 'suspicions': {'answer': 42} } self.command.queue = [] self.command.schedule_update(content) get.assert_called_once_with(document_id=42) self.assertEqual(0.618, reimbursement.probability) self.assertEqual({'answer': 42}, reimbursement.suspicions) self.assertEqual([reimbursement], self.command.queue)
def test_as_list(self): self.assertIsNone(Reimbursement.as_list('')) self.assertEqual(['1', '2'], Reimbursement.as_list('1,2')) self.assertEqual([1, 2], Reimbursement.as_list('1,2', int))
def reimbursements(self): """Returns a Generator with a Reimbursement object for each row.""" with lzma.open(self.path, mode='rt') as file_handler: for row in csv.DictReader(file_handler): yield Reimbursement(**self.serialize(row))