From 2af2b50dde65e2a15e2eacce0b8d183bf5cf27c4 Mon Sep 17 00:00:00 2001 From: jomz Date: Wed, 4 Dec 2019 03:43:59 +0100 Subject: [PATCH] Avoid returning the same InvoiceID (a.o.) for all payments from get_payments --- lib/xero_gateway/payment.rb | 6 +++--- test/integration/get_payments_test.rb | 7 +++++++ 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/lib/xero_gateway/payment.rb b/lib/xero_gateway/payment.rb index b49f9ac5..b03968fb 100644 --- a/lib/xero_gateway/payment.rb +++ b/lib/xero_gateway/payment.rb @@ -30,10 +30,10 @@ def self.from_xml(payment_element) when 'Reference' then payment.reference = element.text when 'CurrencyRate' then payment.currency_rate = BigDecimal(element.text) when 'Invoice' - payment.invoice_id = element.elements["//InvoiceID"].text - payment.invoice_number = element.elements["//InvoiceNumber"].text + payment.invoice_id = element.elements["InvoiceID"].text + payment.invoice_number = element.elements["InvoiceNumber"].text when 'IsReconciled' then payment.reconciled = (element.text == "true") - when 'Account' then payment.account_id = element.elements["//AccountID"].text + when 'Account' then payment.account_id = element.elements["AccountID"].text end end payment diff --git a/test/integration/get_payments_test.rb b/test/integration/get_payments_test.rb index 1c5296b0..27cd65e1 100644 --- a/test/integration/get_payments_test.rb +++ b/test/integration/get_payments_test.rb @@ -27,6 +27,13 @@ def test_get_payments assert_kind_of(XeroGateway::Payment, payment.first) end + def test_get_payments_gets_actual_invoice_ids + result = @gateway.get_payments + assert_not_equal result.payments[0].invoice_id, result.payments[1].invoice_id + # assert_equal result.payments[0].invoice_id, 'b0875d8b-ff26-4ce8-8aea-6955492ead48' + # assert_equal result.payments[1].invoice_id, '33c8d757-2db0-48a2-8daa-f54768fabeb1' + end + def test_get_payments_modified_since_date # Create a test payment @gateway.create_payment(create_test_payment)