mws-orders 0.4.0 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/LICENSE +1 -1
- data/README.md +3 -3
- data/lib/mws/orders/address.rb +38 -0
- data/lib/mws/orders/buyer_customized_info.rb +14 -0
- data/lib/mws/orders/buyer_tax_info.rb +23 -0
- data/lib/mws/orders/collection.rb +1 -0
- data/lib/mws/orders/document.rb +6 -4
- data/lib/mws/orders/entity.rb +26 -15
- data/lib/mws/orders/invoice_data.rb +5 -4
- data/lib/mws/orders/message.rb +3 -2
- data/lib/mws/orders/order.rb +82 -33
- data/lib/mws/orders/order_item.rb +67 -30
- data/lib/mws/orders/order_items.rb +1 -0
- data/lib/mws/orders/orders.rb +1 -0
- data/lib/mws/orders/parser.rb +6 -14
- data/lib/mws/orders/payment_execution_detail_item.rb +3 -2
- data/lib/mws/orders/points_granted.rb +18 -0
- data/lib/mws/orders/product_info.rb +14 -0
- data/lib/mws/orders/service_status.rb +4 -3
- data/lib/mws/orders/tax_classification.rb +18 -0
- data/lib/mws/orders/tax_collection.rb +18 -0
- data/lib/mws/orders/tokenable.rb +2 -2
- data/lib/mws/orders/version.rb +1 -1
- metadata +11 -38
- data/lib/mws/orders/payment_execution_detail.rb +0 -16
- data/lib/mws/orders/shipping_address.rb +0 -37
- data/test/fixtures/order_items.xml +0 -83
- data/test/fixtures/orders.xml +0 -112
- data/test/fixtures/service_status.xml +0 -19
- data/test/mws/orders/test_entity.rb +0 -96
- data/test/mws/orders/test_message.rb +0 -18
- data/test/mws/orders/test_order.rb +0 -99
- data/test/mws/orders/test_order_item.rb +0 -74
- data/test/mws/orders/test_order_items.rb +0 -21
- data/test/mws/orders/test_orders.rb +0 -21
- data/test/mws/orders/test_parser.rb +0 -9
- data/test/mws/orders/test_payment_execution_detail.rb +0 -19
- data/test/mws/orders/test_payment_execution_detail_item.rb +0 -19
- data/test/mws/orders/test_service_status.rb +0 -28
- data/test/mws/orders/test_shipping_address.rb +0 -37
- data/test/mws/orders/test_tokenable.rb +0 -33
- data/test/test_helper.rb +0 -19
@@ -1,74 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'test_helper'
|
4
|
-
|
5
|
-
class TestOrderItemTest < MiniTest::Test
|
6
|
-
def setup
|
7
|
-
node = load_fixture('order_items').at_xpath('//xmlns:OrderItem')
|
8
|
-
@order_item = OrderItem.new(node)
|
9
|
-
end
|
10
|
-
|
11
|
-
def test_asin
|
12
|
-
assert_kind_of String, @order_item.asin
|
13
|
-
end
|
14
|
-
|
15
|
-
def test_order_item_id
|
16
|
-
assert_kind_of String, @order_item.order_item_id
|
17
|
-
end
|
18
|
-
|
19
|
-
def test_seller_sku
|
20
|
-
assert_kind_of String, @order_item.seller_sku
|
21
|
-
end
|
22
|
-
|
23
|
-
def test_title
|
24
|
-
assert_kind_of String, @order_item.title
|
25
|
-
end
|
26
|
-
|
27
|
-
def test_quantity_ordered
|
28
|
-
assert_kind_of Integer, @order_item.quantity_ordered
|
29
|
-
end
|
30
|
-
|
31
|
-
def test_quantity_shipped
|
32
|
-
assert_kind_of Integer, @order_item.quantity_shipped
|
33
|
-
end
|
34
|
-
|
35
|
-
def test_item_price
|
36
|
-
assert_kind_of Money, @order_item.item_price
|
37
|
-
end
|
38
|
-
|
39
|
-
def test_shipping_price
|
40
|
-
assert_kind_of Money, @order_item.shipping_price
|
41
|
-
end
|
42
|
-
|
43
|
-
def test_scheduled_delivery_ends_at
|
44
|
-
assert_kind_of Time, @order_item.scheduled_delivery_ends_at
|
45
|
-
end
|
46
|
-
|
47
|
-
def test_scheduled_delivery_starts_at
|
48
|
-
assert_kind_of Time, @order_item.scheduled_delivery_starts_at
|
49
|
-
end
|
50
|
-
|
51
|
-
def test_cod_fee
|
52
|
-
assert_kind_of Money, @order_item.cod_fee
|
53
|
-
end
|
54
|
-
|
55
|
-
def test_cod_fee_discount
|
56
|
-
assert_kind_of Money, @order_item.cod_fee_discount
|
57
|
-
end
|
58
|
-
|
59
|
-
def test_gift_message_text
|
60
|
-
assert_kind_of String, @order_item.gift_message_text
|
61
|
-
end
|
62
|
-
|
63
|
-
def test_gift_wrap_price
|
64
|
-
assert_kind_of Money, @order_item.gift_wrap_price
|
65
|
-
end
|
66
|
-
|
67
|
-
def test_gift_wrap_level
|
68
|
-
assert_kind_of String, @order_item.gift_wrap_level
|
69
|
-
end
|
70
|
-
|
71
|
-
def test_to_s
|
72
|
-
assert_equal @order_item.order_item_id, @order_item.to_s
|
73
|
-
end
|
74
|
-
end
|
@@ -1,21 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'test_helper'
|
4
|
-
|
5
|
-
class TestOrderItems < MiniTest::Test
|
6
|
-
def setup
|
7
|
-
node = load_fixture('order_items').xpath('//xmlns:ListOrderItemsResult')
|
8
|
-
@order_items = OrderItems.new(node)
|
9
|
-
end
|
10
|
-
|
11
|
-
def test_has_order_items
|
12
|
-
refute_empty @order_items.to_a
|
13
|
-
@order_items.each do |order_item|
|
14
|
-
assert_kind_of OrderItem, order_item
|
15
|
-
end
|
16
|
-
end
|
17
|
-
|
18
|
-
def test_has_next_token
|
19
|
-
refute_empty @order_items.next_token
|
20
|
-
end
|
21
|
-
end
|
@@ -1,21 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'test_helper'
|
4
|
-
|
5
|
-
class TestOrders < MiniTest::Test
|
6
|
-
def setup
|
7
|
-
node = load_fixture('orders').xpath('//xmlns:ListOrdersResult')
|
8
|
-
@orders = Orders.new(node)
|
9
|
-
end
|
10
|
-
|
11
|
-
def test_has_orders
|
12
|
-
refute_empty @orders.to_a
|
13
|
-
@orders.each do |order|
|
14
|
-
assert_kind_of Order, order
|
15
|
-
end
|
16
|
-
end
|
17
|
-
|
18
|
-
def test_has_next_token
|
19
|
-
refute_empty @orders.next_token
|
20
|
-
end
|
21
|
-
end
|
@@ -1,19 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'test_helper'
|
4
|
-
|
5
|
-
class TestPaymentExecutionDetail < MiniTest::Test
|
6
|
-
def setup
|
7
|
-
node =
|
8
|
-
load_fixture('orders').xpath('//xmlns:PaymentExecutionDetail')
|
9
|
-
.first
|
10
|
-
@ped = PaymentExecutionDetail.new(node)
|
11
|
-
end
|
12
|
-
|
13
|
-
def test_has_payment_execution_detail_items
|
14
|
-
refute_empty @ped.to_a
|
15
|
-
@ped.each do |pedi|
|
16
|
-
assert_kind_of PaymentExecutionDetailItem, pedi
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|
@@ -1,19 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'test_helper'
|
4
|
-
|
5
|
-
class TestPaymentExecutionDetailItem < MiniTest::Test
|
6
|
-
def setup
|
7
|
-
node =
|
8
|
-
load_fixture('orders').xpath('//xmlns:PaymentExecutionDetailItem').first
|
9
|
-
@pedi = PaymentExecutionDetailItem.new(node)
|
10
|
-
end
|
11
|
-
|
12
|
-
def test_payment
|
13
|
-
assert_kind_of Money, @pedi.payment
|
14
|
-
end
|
15
|
-
|
16
|
-
def test_payment_method
|
17
|
-
assert_kind_of String, @pedi.payment_method
|
18
|
-
end
|
19
|
-
end
|
@@ -1,28 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'test_helper'
|
4
|
-
|
5
|
-
class TestServiceStatus < MiniTest::Test
|
6
|
-
def setup
|
7
|
-
node =
|
8
|
-
load_fixture('service_status').xpath('//xmlns:GetServiceStatusResult')
|
9
|
-
.first
|
10
|
-
@status = ServiceStatus.new(node)
|
11
|
-
end
|
12
|
-
|
13
|
-
def test_status
|
14
|
-
assert_kind_of String, @status.status
|
15
|
-
end
|
16
|
-
|
17
|
-
def test_timestamp
|
18
|
-
assert_kind_of Time, @status.timestamp
|
19
|
-
end
|
20
|
-
|
21
|
-
def test_message_id
|
22
|
-
assert_kind_of String, @status.message_id
|
23
|
-
end
|
24
|
-
|
25
|
-
def test_messages
|
26
|
-
assert_kind_of Array, @status.messages
|
27
|
-
end
|
28
|
-
end
|
@@ -1,37 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'test_helper'
|
4
|
-
|
5
|
-
class TestShippingAddress < MiniTest::Test
|
6
|
-
def setup
|
7
|
-
node = load_fixture('orders').xpath('//xmlns:ShippingAddress').first
|
8
|
-
@address = ShippingAddress.new(node)
|
9
|
-
end
|
10
|
-
|
11
|
-
def test_name
|
12
|
-
assert_kind_of String, @address.name
|
13
|
-
end
|
14
|
-
|
15
|
-
def test_address_lines
|
16
|
-
assert_kind_of Array, @address.address_lines
|
17
|
-
@address.address_lines.each do |line|
|
18
|
-
assert_kind_of String, line
|
19
|
-
end
|
20
|
-
end
|
21
|
-
|
22
|
-
def test_city
|
23
|
-
assert_kind_of String, @address.city
|
24
|
-
end
|
25
|
-
|
26
|
-
def test_state_or_region
|
27
|
-
assert_kind_of String, @address.state_or_region
|
28
|
-
end
|
29
|
-
|
30
|
-
def test_postal_code
|
31
|
-
assert_kind_of String, @address.postal_code
|
32
|
-
end
|
33
|
-
|
34
|
-
def test_country_code
|
35
|
-
assert_kind_of String, @address.country_code
|
36
|
-
end
|
37
|
-
end
|
@@ -1,33 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'test_helper'
|
4
|
-
|
5
|
-
class TestTokenable < MiniTest::Test
|
6
|
-
def test_parses_next_token
|
7
|
-
xml = <<-XML
|
8
|
-
<NextToken xmlns="example">123</NextToken>
|
9
|
-
XML
|
10
|
-
tokenable = build_tokenable(xml)
|
11
|
-
|
12
|
-
assert_equal '123', tokenable.next_token
|
13
|
-
end
|
14
|
-
|
15
|
-
def test_returns_nil_if_next_token_is_not_present
|
16
|
-
xml = <<-XML
|
17
|
-
<Foo xmlns="example"/>
|
18
|
-
XML
|
19
|
-
tokenable = build_tokenable(xml)
|
20
|
-
|
21
|
-
refute tokenable.next_token
|
22
|
-
end
|
23
|
-
|
24
|
-
private
|
25
|
-
|
26
|
-
def build_tokenable(xml)
|
27
|
-
klass = Class.new(Collection) do
|
28
|
-
include Tokenable
|
29
|
-
end
|
30
|
-
|
31
|
-
klass.new(Nokogiri(xml))
|
32
|
-
end
|
33
|
-
end
|
data/test/test_helper.rb
DELETED
@@ -1,19 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'minitest/autorun'
|
4
|
-
require 'mws/orders/parser'
|
5
|
-
|
6
|
-
I18n.enforce_available_locales = false
|
7
|
-
|
8
|
-
module MiniTest
|
9
|
-
class Test
|
10
|
-
include MWS::Orders
|
11
|
-
|
12
|
-
def load_fixture(type)
|
13
|
-
file = File.expand_path("../fixtures/#{type}.xml", __FILE__)
|
14
|
-
body = File.read(file)
|
15
|
-
|
16
|
-
Nokogiri(body)
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|