From 70c9651290460c37c6185b1acd672417e1f71a8d Mon Sep 17 00:00:00 2001 From: Raghunath-S-S-J Date: Fri, 19 Jan 2024 11:58:42 +0530 Subject: [PATCH 1/2] Update tests to refer postman mock server and fix failing tests --- .../test_invoice_attachment_upload_and_download.yaml | 4 ++-- tests/accounting/api/test_accounting_api.py | 3 ++- tests/identity/api/cassettes/test_get_connections.yaml | 2 +- tests/test_api_client/test_deserializer.py | 8 ++++---- 4 files changed, 9 insertions(+), 8 deletions(-) diff --git a/tests/accounting/api/cassettes/test_invoice_attachment_upload_and_download.yaml b/tests/accounting/api/cassettes/test_invoice_attachment_upload_and_download.yaml index e4e38d94..f7279277 100644 --- a/tests/accounting/api/cassettes/test_invoice_attachment_upload_and_download.yaml +++ b/tests/accounting/api/cassettes/test_invoice_attachment_upload_and_download.yaml @@ -3191,7 +3191,7 @@ interactions: \"OK\",\r\n \"ProviderName\": \"python-sdk\",\r\n \"DateTimeUTC\": \"\\/Date(1588633398797)\\/\",\r\n \ \"Attachments\": [\r\n {\r\n \"AttachmentID\": \"40fa0d97-8b94-4948-b299-4bcbe73dafc3\",\r\n \ \"FileName\": \"inv-0032.pdf\",\r\n \"Url\": \"https://api.xero.com/api.xro/2.0/Invoices/22b3fab4-ef56-4d70-a110-a7cc3c1a26cd/Attachments/inv-0032.pdf\",\r\n - \ \"MimeType\": \"application/pdf\",\r\n \"ContentLength\": 54574\r\n + \ \"MimeType\": \"application/pdf\",\r\n \"ContentLength\": 54574,\r\n \"IncludeOnline\": true \ }\r\n ]\r\n}" headers: Cache-Control: @@ -3244,7 +3244,7 @@ interactions: \"OK\",\r\n \"ProviderName\": \"python-sdk\",\r\n \"DateTimeUTC\": \"\\/Date(1588633399616)\\/\",\r\n \ \"Attachments\": [\r\n {\r\n \"AttachmentID\": \"40fa0d97-8b94-4948-b299-4bcbe73dafc3\",\r\n \ \"FileName\": \"inv-0032.pdf\",\r\n \"Url\": \"https://api.xero.com/api.xro/2.0/Invoices/22b3fab4-ef56-4d70-a110-a7cc3c1a26cd/Attachments/inv-0032.pdf\",\r\n - \ \"MimeType\": \"application/pdf\",\r\n \"ContentLength\": 54574\r\n + \ \"MimeType\": \"application/pdf\",\r\n \"ContentLength\": 54574,\r\n \"IncludeOnline\": true \ }\r\n ]\r\n}" headers: Cache-Control: diff --git a/tests/accounting/api/test_accounting_api.py b/tests/accounting/api/test_accounting_api.py index 393d4055..ed4b9663 100644 --- a/tests/accounting/api/test_accounting_api.py +++ b/tests/accounting/api/test_accounting_api.py @@ -43,7 +43,7 @@ def accounting_api(api_client): def sandbox_accounting_api(api_client): return AccountingApi( api_client=api_client, - base_url="https://xero-accounting.getsandbox.com/api.xro/2.0", + base_url="https://25faf04a-c71e-40e7-b7ce-f1fae0149465.mock.pstmn.io/api.xro/2.0", ) @@ -373,6 +373,7 @@ def test_get_invoices(sandbox_accounting_api: AccountingApi, xero_tenant_id): is_discounted=False, line_amount_types=LineAmountTypes.EXCLUSIVE, reference="Red Fish, Blue Fish", + repeating_invoice_id= '428c0d75-909f-4b04-8403-a48dc27283b0', sent_to_contact=True, status="VOIDED", sub_total=Decimal("40.00"), diff --git a/tests/identity/api/cassettes/test_get_connections.yaml b/tests/identity/api/cassettes/test_get_connections.yaml index 663d49bb..53636d1f 100644 --- a/tests/identity/api/cassettes/test_get_connections.yaml +++ b/tests/identity/api/cassettes/test_get_connections.yaml @@ -11,7 +11,7 @@ interactions: User-Agent: - xero-python (0.1.0) method: GET - uri: https://api.xero.com/connections + uri: https://api.xero.com/Connections response: body: string: '[{"id":"f4a87932-0878-4884-abcf-73191dd810ba","tenantId":"a46fcb6f-2773-40c4-a119-8aa08bca1e8e","tenantType":"ORGANISATION","createdDateUtc":"2020-03-18T21:20:07.7179250","updatedDateUtc":"2020-03-30T05:15:13.3513620"}]' diff --git a/tests/test_api_client/test_deserializer.py b/tests/test_api_client/test_deserializer.py index 63aa013e..9c851a8a 100644 --- a/tests/test_api_client/test_deserializer.py +++ b/tests/test_api_client/test_deserializer.py @@ -161,7 +161,7 @@ def test_deserialize_bool(data, expected): assert result == expected -@pytest.mark.parametrize("data", [None, "", "1", "0", 1, 0]) +@pytest.mark.parametrize("data", ["", "1", "0", 1, 0]) def test_deserialize_bool_error(data): # given data type bool data_type = "bool" @@ -189,7 +189,7 @@ def test_deserialize_date(data, expected): assert result == expected -@pytest.mark.parametrize("data", [None, "", "2019-oo-01"]) +@pytest.mark.parametrize("data", ["", "2019-oo-01"]) def test_deserialize_date_error(data): # given data type date data_type = "date" @@ -268,7 +268,7 @@ def test_deserialize_datetime(data, expected): assert result == expected -@pytest.mark.parametrize("data", [None, "", "invalid"]) +@pytest.mark.parametrize("data", ["", "invalid"]) def test_deserialize_datetime_error(data): # given data type datetime data_type = "datetime" @@ -349,7 +349,7 @@ def __init__(self, **kwargs): deserialize.assert_any_call("str", "short description", None) -@pytest.mark.parametrize("data", [None, "", 1, True]) +@pytest.mark.parametrize("data", ["", 1, True]) def test_deserialize_model_error(data): # given test model and invalid test data class Model: From 23c824a3dc59d4ab7b960aa3a4319157187757bb Mon Sep 17 00:00:00 2001 From: Raghunath-S-S-J Date: Tue, 23 Jan 2024 15:54:17 +0530 Subject: [PATCH 2/2] Build from OpenAPI v2.40.3 --- docs/v1/accounting/index.html | 6 ++-- docs/v1/appstore/index.html | 2 +- docs/v1/assets/index.html | 2 +- docs/v1/files/index.html | 2 +- docs/v1/finance/index.html | 2 +- docs/v1/payroll-au/index.html | 4 +-- docs/v1/payroll-nz/index.html | 2 +- docs/v1/payroll-uk/index.html | 2 +- docs/v1/projects/index.html | 4 +-- xero_python/accounting/api/accounting_api.py | 2 +- .../accounting/models/currency_code.py | 1 - xero_python/accounting/models/tax_rate.py | 1 + xero_python/appstore/api/app_store_api.py | 2 +- xero_python/assets/api/asset_api.py | 2 +- xero_python/docs/README.md | 4 +-- xero_python/file/api/files_api.py | 2 +- xero_python/finance/api/finance_api.py | 2 +- xero_python/identity/api/identity_api.py | 2 +- xero_python/payrollau/api/payroll_au_api.py | 2 +- .../payrollau/models/country_of_residence.py | 1 - .../models/leave_line_calculation_type.py | 1 - xero_python/payrollnz/api/payroll_nz_api.py | 2 +- xero_python/payrollnz/docs/Employee.md | 1 + xero_python/payrollnz/models/employee.py | 29 +++++++++++++++++++ xero_python/payrolluk/api/payroll_uk_api.py | 2 +- xero_python/project/api/project_api.py | 2 +- xero_python/project/models/currency_code.py | 1 - 27 files changed, 56 insertions(+), 29 deletions(-) diff --git a/docs/v1/accounting/index.html b/docs/v1/accounting/index.html index a5e978f0..c2a29795 100644 --- a/docs/v1/accounting/index.html +++ b/docs/v1/accounting/index.html @@ -2555,8 +2555,8 @@ "title" : "", "type" : "string", "description" : "3 letter alpha code for the currency – see list of currency codes", - "enum" : [ "AED", "AFN", "ALL", "AMD", "ANG", "AOA", "ARS", "AUD", "AWG", "AZN", "BAM", "BBD", "BDT", "BGN", "BHD", "BIF", "BMD", "BND", "BOB", "BRL", "BSD", "BTN", "BWP", "BYN", "BYR", "BZD", "CAD", "CDF", "CHF", "CLP", "CNY", "COP", "CRC", "CUC", "CUP", "CVE", "CZK", "DJF", "DKK", "DOP", "DZD", "EGP", "ERN", "ETB", "EUR", "FJD", "FKP", "GBP", "GEL", "GGP", "GHS", "GIP", "GMD", "GNF", "GTQ", "GYD", "HKD", "HNL", "HRK", "HTG", "HUF", "IDR", "ILS", "IMP", "INR", "IQD", "IRR", "ISK", "JEP", "JMD", "JOD", "JPY", "KES", "KGS", "KHR", "KMF", "KPW", "KRW", "KWD", "KYD", "KZT", "LAK", "LBP", "LKR", "LRD", "LSL", "LTL", "LYD", "MAD", "MDL", "MGA", "MKD", "MMK", "MNT", "MOP", "MRU", "MUR", "MVR", "MWK", "MXN", "MYR", "MZN", "NAD", "NGN", "NIO", "NOK", "NPR", "NZD", "OMR", "PAB", "PEN", "PGK", "PHP", "PKR", "PLN", "PYG", "QAR", "RON", "RSD", "RUB", "RWF", "SAR", "SBD", "SCR", "SDG", "SEK", "SGD", "SHP", "SLL", "SOS", "SPL", "SRD", "STN", "SVC", "SYP", "SZL", "THB", "TJS", "TMT", "TND", "TOP", "TRY", "TTD", "TVD", "TWD", "TZS", "UAH", "UGX", "USD", "UYU", "UZS", "VEF", "VND", "VUV", "WST", "XAF", "XCD", "XDR", "XOF", "XPF", "YER", "ZAR", "ZMW", "ZMK", "ZWD", "" ], - "x-enum-varnames" : [ "AED", "AFN", "ALL", "AMD", "ANG", "AOA", "ARS", "AUD", "AWG", "AZN", "BAM", "BBD", "BDT", "BGN", "BHD", "BIF", "BMD", "BND", "BOB", "BRL", "BSD", "BTN", "BWP", "BYN", "BYR", "BZD", "CAD", "CDF", "CHF", "CLP", "CNY", "COP", "CRC", "CUC", "CUP", "CVE", "CZK", "DJF", "DKK", "DOP", "DZD", "EGP", "ERN", "ETB", "EUR", "FJD", "FKP", "GBP", "GEL", "GGP", "GHS", "GIP", "GMD", "GNF", "GTQ", "GYD", "HKD", "HNL", "HRK", "HTG", "HUF", "IDR", "ILS", "IMP", "INR", "IQD", "IRR", "ISK", "JEP", "JMD", "JOD", "JPY", "KES", "KGS", "KHR", "KMF", "KPW", "KRW", "KWD", "KYD", "KZT", "LAK", "LBP", "LKR", "LRD", "LSL", "LTL", "LYD", "MAD", "MDL", "MGA", "MKD", "MMK", "MNT", "MOP", "MRU", "MUR", "MVR", "MWK", "MXN", "MYR", "MZN", "NAD", "NGN", "NIO", "NOK", "NPR", "NZD", "OMR", "PAB", "PEN", "PGK", "PHP", "PKR", "PLN", "PYG", "QAR", "RON", "RSD", "RUB", "RWF", "SAR", "SBD", "SCR", "SDG", "SEK", "SGD", "SHP", "SLL", "SOS", "SPL", "SRD", "STN", "SVC", "SYP", "SZL", "THB", "TJS", "TMT", "TND", "TOP", "TRY_LIRA", "TTD", "TVD", "TWD", "TZS", "UAH", "UGX", "USD", "UYU", "UZS", "VEF", "VND", "VUV", "WST", "XAF", "XCD", "XDR", "XOF", "XPF", "YER", "ZAR", "ZMW", "ZMK", "ZWD", "EMPTY_CURRENCY" ] + "enum" : [ "AED", "AFN", "ALL", "AMD", "ANG", "AOA", "ARS", "AUD", "AWG", "AZN", "BAM", "BBD", "BDT", "BGN", "BHD", "BIF", "BMD", "BND", "BOB", "BRL", "BSD", "BTN", "BWP", "BYN", "BYR", "BZD", "CAD", "CDF", "CHF", "CLP", "CNY", "COP", "CRC", "CUC", "CUP", "CVE", "CZK", "DJF", "DKK", "DOP", "DZD", "EGP", "ERN", "ETB", "EUR", "FJD", "FKP", "GBP", "GEL", "GGP", "GHS", "GIP", "GMD", "GNF", "GTQ", "GYD", "HKD", "HNL", "HRK", "HTG", "HUF", "IDR", "ILS", "IMP", "INR", "IQD", "IRR", "ISK", "JEP", "JMD", "JOD", "JPY", "KES", "KGS", "KHR", "KMF", "KPW", "KRW", "KWD", "KYD", "KZT", "LAK", "LBP", "LKR", "LRD", "LSL", "LTL", "LYD", "MAD", "MDL", "MGA", "MKD", "MMK", "MNT", "MOP", "MRU", "MUR", "MVR", "MWK", "MXN", "MYR", "MZN", "NAD", "NGN", "NIO", "NOK", "NPR", "NZD", "OMR", "PAB", "PEN", "PGK", "PHP", "PKR", "PLN", "PYG", "QAR", "RON", "RSD", "RUB", "RWF", "SAR", "SBD", "SCR", "SDG", "SEK", "SGD", "SHP", "SLL", "SOS", "SPL", "SRD", "STN", "SVC", "SYP", "SZL", "THB", "TJS", "TMT", "TND", "TOP", "TRY", "TTD", "TVD", "TWD", "TZS", "UAH", "UGX", "USD", "UYU", "UZS", "VEF", "VND", "VUV", "WST", "XAF", "XCD", "XDR", "XOF", "XPF", "YER", "ZAR", "ZMW", "ZMK", "ZWD" ], + "x-enum-varnames" : [ "AED", "AFN", "ALL", "AMD", "ANG", "AOA", "ARS", "AUD", "AWG", "AZN", "BAM", "BBD", "BDT", "BGN", "BHD", "BIF", "BMD", "BND", "BOB", "BRL", "BSD", "BTN", "BWP", "BYN", "BYR", "BZD", "CAD", "CDF", "CHF", "CLP", "CNY", "COP", "CRC", "CUC", "CUP", "CVE", "CZK", "DJF", "DKK", "DOP", "DZD", "EGP", "ERN", "ETB", "EUR", "FJD", "FKP", "GBP", "GEL", "GGP", "GHS", "GIP", "GMD", "GNF", "GTQ", "GYD", "HKD", "HNL", "HRK", "HTG", "HUF", "IDR", "ILS", "IMP", "INR", "IQD", "IRR", "ISK", "JEP", "JMD", "JOD", "JPY", "KES", "KGS", "KHR", "KMF", "KPW", "KRW", "KWD", "KYD", "KZT", "LAK", "LBP", "LKR", "LRD", "LSL", "LTL", "LYD", "MAD", "MDL", "MGA", "MKD", "MMK", "MNT", "MOP", "MRU", "MUR", "MVR", "MWK", "MXN", "MYR", "MZN", "NAD", "NGN", "NIO", "NOK", "NPR", "NZD", "OMR", "PAB", "PEN", "PGK", "PHP", "PKR", "PLN", "PYG", "QAR", "RON", "RSD", "RUB", "RWF", "SAR", "SBD", "SCR", "SDG", "SEK", "SGD", "SHP", "SLL", "SOS", "SPL", "SRD", "STN", "SVC", "SYP", "SZL", "THB", "TJS", "TMT", "TND", "TOP", "TRY_LIRA", "TTD", "TVD", "TWD", "TZS", "UAH", "UGX", "USD", "UYU", "UZS", "VEF", "VND", "VUV", "WST", "XAF", "XCD", "XDR", "XOF", "XPF", "YER", "ZAR", "ZMW", "ZMK", "ZWD" ] }; defs["Element"] = { "title" : "", @@ -6008,7 +6008,7 @@