def test_insert_OK(self): with mock.patch('D365BCAPI.D365BCv1API.requests') as mocked_req: mocked_req.post.return_value.status_code = 201 mocked_req.post.return_value.reason = 'Created' ins = Connect('http://test.lt/test', auth={'a': 'a'}, headers={'some headers'}) respo = ins.insert({"orderid": "123456"}) mocked_req.post.assert_called_with('http://test.lt/test', auth={'a': 'a'}, headers={'some headers'}, json={"orderid": "123456"}) self.assertEqual(respo, [201, 'Created'], 'insert: no error returns [201, Created] ') # without error
def test_insert_FAIL(self): with mock.patch('D365BCAPI.D365BCv1API.requests') as mocked_req: # any error mocked_req.post.return_value.status_code = 400 mocked_req.post.return_value.reason = 'Any error reason' # error message ins = Connect('http://test.lt/test', auth={'a': 'a'}, headers={'some headers'}) respo = ins.insert({"orderid": "123456"}) mocked_req.post.assert_called_with('http://test.lt/test', auth={'a': 'a'}, headers={'some headers'}, json={"orderid": "123456"}) self.assertEqual(respo, [], 'insert: on error return must be blank') # return blank if error self.assertEqual(ins.except_error, [400, 'Any error reason'], 'Insert: on error variable except_error ' 'must to include error code and reason')
"type": "Company", "phoneNumber": "256 123456", "email": "*****@*****.**", "website": "cronus.co.uk", "taxLiable": False, "currencyCode": "EUR", "blocked": " ", "address": { "street": "Paco str 2", "city": "Vilnius", "state": "", "countryLetterCode": "LT", "postalCode": "LT-25126" } } response_list = customers.insert(new_customer) # new customer is created print("Sales order Customer No", custno) # find item and itemId - it requires for sales document lines creation url_item = "http://bs17:7048/BC/api/v1.0/items" # page 5470 item = Connect(url_item, (user, psw), {"Accept-Language": "en-us"}) item.filter_text = "number eq '1996-S'" item_response = item.read() item_1_id = None if len(item_response) > 0: # item exists item_1_id = item_response[0].get("id") # get item1 id item.filter_text = "number eq '2000-S'" # change filter and call for another item item_response = item.read()