def test_GetDocument(self): dispute = None for d in self._client_disputes: if d.status in ('PENDING_CLIENT_ACTION', 'REOPENED_PENDING_CLIENT_ACTION'): dispute = d break self.assertIsNotNone( dispute, 'Cannot test getting dispute\'s document because there\'s no dispute with expected status in the disputes list.' ) document = DisputeDocument() document.type = 'OTHER' document.dispute = dispute result = document.save() self.assertIsNotNone(result) self.assertEqual(result.creation_date, document.creation_date) self.assertEqual(result.id, document.id) self.assertEqual(result.refused_reason_message, document.refused_reason_message) self.assertEqual(result.refused_reason_type, document.refused_reason_type) self.assertEqual(result.status, document.status) self.assertEqual(result.tag, document.tag) self.assertEqual(result.type, document.type) self.assertEqual(result.dispute_id, document.dispute_id)
def test_GetDocument(self): dispute = None for d in self._client_disputes: if d.status in ('PENDING_CLIENT_ACTION', 'REOPENED_PENDING_CLIENT_ACTION'): dispute = d break self.assertIsNotNone(dispute, 'Cannot test getting dispute\'s document because there\'s no dispute with expected status in the disputes list.') document = DisputeDocument() document.type = 'OTHER' document.dispute = dispute result = document.save() self.assertIsNotNone(result) self.assertEqual(result.creation_date, document.creation_date) self.assertEqual(result.id, document.id) self.assertEqual(result.refused_reason_message, document.refused_reason_message) self.assertEqual(result.refused_reason_type, document.refused_reason_type) self.assertEqual(result.status, document.status) self.assertEqual(result.tag, document.tag) self.assertEqual(result.type, document.type) self.assertEqual(result.dispute_id, document.dispute_id)
def test_CreateDisputePage(self): dispute = None for d in self._client_disputes: if d.status in ('PENDING_CLIENT_ACTION', 'REOPENED_PENDING_CLIENT_ACTION') and \ d.dispute_type in ('CONTESTABLE', 'RETRIEVAL'): dispute = d break self.assertIsNotNone( dispute, 'Cannot test creating dispute document page because there\'s no dispute with expected status in the disputes list.' ) dispute_document = DisputeDocument(type='DELIVERY_PROOF', dispute=dispute) result = dispute_document.save() file_path = os.path.join(os.path.dirname(__file__), 'resources', 'TestKycPageFile.png') with open(file_path, 'rb') as f: data = f.read() encoded_file = base64.b64encode(data) resulted_dispute_document = DisputeDocument(result) dispute_document_page = DisputeDocumentPage( file=encoded_file, dispute=resulted_dispute_document, document=dispute) dispute_document_page.save() self.assertIsNotNone(result) self.assertEqual(dispute_document.type, resulted_dispute_document.type)
def test_SubmitDisputeDocument(self): dispute = None dispute_document = None for d in self._client_disputes: if d.status in ('PENDING_CLIENT_ACTION', 'REOPENED_PENDING_CLIENT_ACTION'): dd = d.documents.all(page=1, per_page=1, status='CREATED') if dd is not None and len(dd) > 0: dispute = d dispute_document = dd(0) break if dispute is None: for d in self._client_disputes: if d.status in ('PENDING_CLIENT_ACTION', 'REOPENED_PENDING_CLIENT_ACTION'): dispute = d dispute_document = DisputeDocument() dispute_document.type = 'DELIVERY_PROOF' dispute_document.dispute = dispute dispute_document = dispute_document.save() break self.assertIsNotNone(dispute, 'Cannot test submitting dispute\'s documents because there\'s no dispute with expected status in the disputes list.') self.assertIsNotNone(dispute_document, 'Cannot test submitting dispute\'s documents because there\'s no dispute document that can be updated.') result = None dispute_document_put = DisputeDocument() dispute_document_put.id = dispute_document.id dispute_document_put.dispute = dispute_document.dispute dispute_document_put.status = 'VALIDATION_ASKED' result = dispute_document_put.submit() self.assertIsNotNone(result) self.assertTrue(dispute_document_put.type == result['type']) self.assertTrue(result['status'] == dispute_document_put.status)
def test_GetFilteredDisputeDocuments(self): now = int(time.time()) dispute_documents_before = DisputeDocument.all(BeforeDate=now) dispute_documents_after = DisputeDocument.all(AfterDate=now + 10000) self.assertTrue(dispute_documents_before) self.assertFalse(dispute_documents_after) document_type = dispute_documents_before[0].type result = DisputeDocument.all(Type=document_type) self.assertTrue(result) for dd in result: self.assertEqual(dd.type, document_type)
def test_GetFilteredDisputeDocuments(self): now = int(time.time()) dispute_documents_before = DisputeDocument.all(BeforeDate=now) dispute_documents_after = DisputeDocument.all(AfterDate=now+10000) self.assertTrue(dispute_documents_before) self.assertFalse(dispute_documents_after) document_type = dispute_documents_before[0].type result = DisputeDocument.all(Type=document_type) self.assertTrue(result) for dd in result: self.assertEqual(dd.type, document_type)
def test_CreateDisputeDocument(self): dispute = None for d in self._client_disputes: if d.status in ('PENDING_CLIENT_ACTION', 'REOPENED_PENDING_CLIENT_ACTION'): dispute = d break self.assertIsNotNone(dispute, 'Cannot test creating dispute document because there\'s no dispute with expected status in the disputes list.') document = DisputeDocument() document.type = 'DELIVERY_PROOF' document.dispute = dispute result = document.save() self.assertIsNotNone(result) self.assertEqual(result.type, document.type)
def test_CreateDisputeDocument(self): dispute = None for d in self._client_disputes: if d.status in ('PENDING_CLIENT_ACTION', 'REOPENED_PENDING_CLIENT_ACTION'): dispute = d break self.assertIsNotNone( dispute, 'Cannot test creating dispute document because there\'s no dispute with expected status in the disputes list.' ) document = DisputeDocument() document.type = 'DELIVERY_PROOF' document.dispute = dispute result = document.save() self.assertIsNotNone(result) self.assertEqual(result.type, document.type)
def test_CreateDisputePage(self): dispute = None for d in self._client_disputes: if d.status in ('PENDING_CLIENT_ACTION', 'REOPENED_PENDING_CLIENT_ACTION') and \ d.dispute_type in ('CONTESTABLE', 'RETRIEVAL'): dispute = d break self.assertIsNotNone(dispute, 'Cannot test creating dispute document page because there\'s no dispute with expected status in the disputes list.') dispute_document = DisputeDocument(type='DELIVERY_PROOF', dispute=dispute) result = dispute_document.save() file_path = os.path.join(os.path.dirname(__file__), 'resources', 'TestKycPageFile.png') with open(file_path, 'rb') as f: data = f.read() encoded_file = base64.b64encode(data) resulted_dispute_document = DisputeDocument(result) dispute_document_page = DisputeDocumentPage(file=encoded_file, dispute=resulted_dispute_document, document=dispute) dispute_document_page.save() self.assertIsNotNone(result) self.assertEqual(dispute_document.type, resulted_dispute_document.type)
def test_SubmitDisputeDocument(self): dispute = None dispute_document = None for d in self._client_disputes: if d.status in ('PENDING_CLIENT_ACTION', 'REOPENED_PENDING_CLIENT_ACTION'): dd = d.documents.all(page=1, per_page=1, status='CREATED') if dd is not None and len(dd) > 0: dispute = d dispute_document = dd(0) break if dispute is None: for d in self._client_disputes: if d.status in ('PENDING_CLIENT_ACTION', 'REOPENED_PENDING_CLIENT_ACTION'): dispute = d dispute_document = DisputeDocument() dispute_document.type = 'DELIVERY_PROOF' dispute_document.dispute = dispute dispute_document = dispute_document.save() break self.assertIsNotNone( dispute, 'Cannot test submitting dispute\'s documents because there\'s no dispute with expected status in the disputes list.' ) self.assertIsNotNone( dispute_document, 'Cannot test submitting dispute\'s documents because there\'s no dispute document that can be updated.' ) result = None dispute_document_put = DisputeDocument() dispute_document_put.id = dispute_document.id dispute_document_put.dispute = dispute_document.dispute dispute_document_put.status = 'VALIDATION_ASKED' result = dispute_document_put.submit() self.assertIsNotNone(result) self.assertTrue(dispute_document_put.type == result['type']) self.assertTrue(result['status'] == dispute_document_put.status)
def test_GetDocumentsForClient(self): result = DisputeDocument.all() self.assertIsNotNone(result)