mws-orders 0.4.0 → 0.5.0
Sign up to get free protection for your applications and to get access to all the features.
- 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
|