peddler 2.0.4 → 2.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +12 -18
- data/lib/mws/fulfillment_inbound_shipment/client.rb +18 -0
- data/lib/mws/fulfillment_outbound_shipment/client.rb +0 -11
- data/lib/mws/reports/parser.rb +35 -0
- data/lib/peddler/errors/builder.rb +2 -1
- data/lib/peddler/errors/class_generator.rb +1 -0
- data/lib/peddler/flat_file_parser.rb +1 -0
- data/lib/peddler/headers.rb +4 -0
- data/lib/peddler/marketplace.rb +1 -0
- data/lib/peddler/operation.rb +12 -2
- data/lib/peddler/version.rb +1 -1
- data/lib/peddler/xml_parser.rb +1 -0
- data/lib/peddler/xml_response_parser.rb +1 -1
- data/test/helper.rb +1 -0
- data/test/integration/test_feeds.rb +3 -3
- data/test/integration/test_fulfillment_inbound_shipment.rb +3 -3
- data/test/integration/test_fulfillment_inventory.rb +2 -2
- data/test/integration/test_fulfillment_outbound_shipment.rb +1 -1
- data/test/integration/test_merchant_fulfillment.rb +57 -1
- data/test/integration/test_multibyte_queries.rb +1 -1
- data/test/integration/test_mws_headers.rb +1 -1
- data/test/integration/test_off_amazon_payments.rb +1 -1
- data/test/integration/test_orders.rb +2 -2
- data/test/integration/test_products.rb +12 -12
- data/test/integration/test_recommendations.rb +2 -2
- data/test/integration/test_reports.rb +6 -6
- data/test/integration/test_sellers.rb +1 -1
- data/test/integration/test_subscriptions.rb +3 -3
- data/test/integration_helper.rb +9 -7
- data/test/unit/mws/test_feeds_client.rb +6 -6
- data/test/unit/mws/test_finances_client.rb +5 -5
- data/test/unit/mws/test_fulfillment_inbound_shipment_client.rb +40 -24
- data/test/unit/mws/test_fulfillment_inventory_client.rb +3 -3
- data/test/unit/mws/test_fulfillment_outbound_shipment_client.rb +11 -11
- data/test/unit/mws/test_merchant_fulfillment_client.rb +5 -5
- data/test/unit/mws/test_off_amazon_payments_client.rb +17 -17
- data/test/unit/mws/test_orders_client.rb +7 -7
- data/test/unit/mws/test_products_client.rb +15 -15
- data/test/unit/mws/test_recommendations_client.rb +4 -4
- data/test/unit/mws/test_reports_client.rb +14 -14
- data/test/unit/mws/test_sellers_client.rb +3 -3
- data/test/unit/mws/test_subscriptions_client.rb +11 -11
- data/test/unit/peddler/errors/test_builder.rb +4 -4
- data/test/unit/peddler/errors/test_class_generator.rb +1 -1
- data/test/unit/peddler/errors/test_error.rb +5 -5
- data/test/unit/peddler/errors/test_parser.rb +4 -4
- data/test/unit/peddler/test_client.rb +20 -20
- data/test/unit/peddler/test_flat_file_parser.rb +11 -11
- data/test/unit/peddler/test_headers.rb +1 -1
- data/test/unit/peddler/test_marketplace.rb +1 -1
- data/test/unit/peddler/test_operation.rb +18 -12
- data/test/unit/peddler/test_parser.rb +3 -3
- data/test/unit/peddler/test_structured_list.rb +5 -5
- data/test/unit/peddler/test_vcr_matcher.rb +4 -4
- data/test/unit/peddler/test_xml_parser.rb +3 -3
- data/test/unit/peddler/test_xml_response_parser.rb +4 -4
- data/test/unit/test_mws.rb +1 -1
- data/test/vcr_cassettes/FulfillmentInboundShipment.yml +36 -36
- data/test/vcr_cassettes/MerchantFulfillment.yml +309 -1
- metadata +3 -2
@@ -4,14 +4,14 @@ require 'helper'
|
|
4
4
|
require 'peddler/flat_file_parser'
|
5
5
|
|
6
6
|
class TestPeddlerFlatFileParser < MiniTest::Test
|
7
|
-
def
|
7
|
+
def test_parsing_data
|
8
8
|
body = build_body("Feed Processing Summary:\n\tNumber of records processed\t\t11006\n\tNumber of records successful\t\t11006\n\noriginal-record-number\tsku\terror-code\terror-type\terror-message\n1822\t85da472e-ba6c-11e3-95af-002590a74356\t5000\tWarning\tThe update for Sku '85da472e-ba6c-11e3-95af-002590a74356' was skipped because it is identical to the update in feed '9518995390'.\n",
|
9
9
|
encoding: Encoding::ASCII_8BIT)
|
10
10
|
parser = Peddler::FlatFileParser.new(build_mock_response(body), 'ISO-8859-1')
|
11
11
|
assert_kind_of CSV::Table, parser.parse
|
12
12
|
end
|
13
13
|
|
14
|
-
def
|
14
|
+
def test_parsing_data_a_line_at_a_time
|
15
15
|
body = build_body("Feed Processing Summary:\n\tNumber of records processed\t\t11006\n\tNumber of records successful\t\t11006\n\noriginal-record-number\tsku\terror-code\terror-type\terror-message\n1822\t85da472e-ba6c-11e3-95af-002590a74356\t5000\tWarning\tThe update for Sku '85da472e-ba6c-11e3-95af-002590a74356' was skipped because it is identical to the update in feed '9518995390'.\n",
|
16
16
|
encoding: Encoding::ASCII_8BIT)
|
17
17
|
parser = Peddler::FlatFileParser.new(build_mock_response(body), 'ISO-8859-1')
|
@@ -20,21 +20,21 @@ class TestPeddlerFlatFileParser < MiniTest::Test
|
|
20
20
|
assert counter.positive?
|
21
21
|
end
|
22
22
|
|
23
|
-
def
|
23
|
+
def test_the_work_around_empty_rows
|
24
24
|
body = build_body("Feed Processing Summary:\n\tNumber of records processed\t\t2\n\tNumber of records successful\t\t2\n\nfoo\tbar\n1\ta\n\n2\tb\n",
|
25
25
|
encoding: Encoding::ASCII_8BIT)
|
26
26
|
parser = Peddler::FlatFileParser.new(build_mock_response(body), 'ISO-8859-1')
|
27
27
|
assert_equal 3, parser.parse.count
|
28
28
|
end
|
29
29
|
|
30
|
-
def
|
30
|
+
def test_summary
|
31
31
|
body = build_body("Feed Processing Summary:\n\tNumber of records processed\t\t11006\n\tNumber of records successful\t\t11006\n\noriginal-record-number\tsku\terror-code\terror-type\terror-message\n1822\t85da472e-ba6c-11e3-95af-002590a74356\t5000\tWarning\tThe update for Sku '85da472e-ba6c-11e3-95af-002590a74356' was skipped because it is identical to the update in feed '9518995390'.\n",
|
32
32
|
encoding: Encoding::ASCII_8BIT)
|
33
33
|
parser = Peddler::FlatFileParser.new(build_mock_response(body), 'ISO-8859-1')
|
34
34
|
refute_empty parser.records_count
|
35
35
|
end
|
36
36
|
|
37
|
-
def
|
37
|
+
def test_summary_of_non_english_reports
|
38
38
|
body = build_body("Riepilogo elaborazione feed:\n\tNumero record elaborati\t\t1\n\tNumero record elaborati con successo\t\t1\n\n",
|
39
39
|
encoding: 'Cp1252')
|
40
40
|
parser = Peddler::FlatFileParser.new(build_mock_response(body), 'ISO-8859-1')
|
@@ -48,38 +48,38 @@ class TestPeddlerFlatFileParser < MiniTest::Test
|
|
48
48
|
assert parser.valid?
|
49
49
|
end
|
50
50
|
|
51
|
-
def
|
51
|
+
def test_handling_reports_without_a_summary
|
52
52
|
response = OpenStruct.new(body: "Foo\nBar\n")
|
53
53
|
parser = Peddler::FlatFileParser.new(response, 'ISO-8859-1')
|
54
54
|
refute_empty parser.content
|
55
55
|
end
|
56
56
|
|
57
|
-
def
|
57
|
+
def test_handling_japanese_flat_files
|
58
58
|
body = build_body("Foo\nこんにちは\n", encoding: Encoding::SHIFT_JIS)
|
59
59
|
parser = Peddler::FlatFileParser.new(build_mock_response(body), Encoding::WINDOWS_31J)
|
60
60
|
assert_equal 'こんにちは', parser.parse[0]['Foo']
|
61
61
|
end
|
62
62
|
|
63
|
-
def
|
63
|
+
def test_handling_japanese_curly_braces
|
64
64
|
body = build_body("Foo\n〝\n", encoding: Encoding::WINDOWS_31J)
|
65
65
|
parser = Peddler::FlatFileParser.new(build_mock_response(body), Encoding::WINDOWS_31J)
|
66
66
|
assert_equal '〝', parser.parse[0]['Foo']
|
67
67
|
end
|
68
68
|
|
69
|
-
def
|
69
|
+
def test_handling_latin_1_flat_files
|
70
70
|
body = build_body("Foo\n™\n", encoding: 'Cp1252')
|
71
71
|
parser = Peddler::FlatFileParser.new(build_mock_response(body), Encoding::CP1252)
|
72
72
|
assert_equal '™', parser.parse['Foo'][0]
|
73
73
|
end
|
74
74
|
|
75
|
-
def
|
75
|
+
def test_handling_undefined_characters
|
76
76
|
body = +"Foo\n\xFF\n"
|
77
77
|
body.force_encoding(Encoding::ASCII_8BIT)
|
78
78
|
parser = Peddler::FlatFileParser.new(build_mock_response(body), Encoding::ASCII_8BIT)
|
79
79
|
assert_equal '�', parser.parse['Foo'][0]
|
80
80
|
end
|
81
81
|
|
82
|
-
def
|
82
|
+
def test_handling_utf8_flat_files
|
83
83
|
body = "Foo\nfür\n"
|
84
84
|
parser = Peddler::FlatFileParser.new(build_mock_response(body, ascii: false), Encoding::CP1252)
|
85
85
|
assert_equal 'für', parser.parse['Foo'][0]
|
@@ -39,7 +39,7 @@ class TestPeddlerMarketplace < MiniTest::Test
|
|
39
39
|
@marketplace = Peddler::Marketplace.find('US')
|
40
40
|
end
|
41
41
|
|
42
|
-
def
|
42
|
+
def test_translation_of_uk_to_gb
|
43
43
|
marketplace = Peddler::Marketplace.find('UK')
|
44
44
|
assert_equal 'GB', marketplace.country_code
|
45
45
|
end
|
@@ -8,7 +8,7 @@ class TestPeddlerOperation < MiniTest::Test
|
|
8
8
|
@operation = Peddler::Operation.new('Foo')
|
9
9
|
end
|
10
10
|
|
11
|
-
def
|
11
|
+
def test_that_it_converts_key_to_structured_list
|
12
12
|
@operation.store('FooStatus', [1, 2])
|
13
13
|
@operation.structure!('FooStatus', 'Foo')
|
14
14
|
refute @operation.key?('FooStatus')
|
@@ -16,7 +16,7 @@ class TestPeddlerOperation < MiniTest::Test
|
|
16
16
|
assert_equal 2, @operation['FooStatus.Foo.2']
|
17
17
|
end
|
18
18
|
|
19
|
-
def
|
19
|
+
def test_that_it_converts_nested_keys_to_structured_list
|
20
20
|
@operation.store('Foo.1.Status', [{ 'Baz' => 1 }])
|
21
21
|
@operation.store('Foo.2.Status', [{ 'Baz' => 2 }])
|
22
22
|
@operation.structure!('Status', 'Bar')
|
@@ -26,30 +26,36 @@ class TestPeddlerOperation < MiniTest::Test
|
|
26
26
|
assert_equal 2, @operation['Foo.2.Status.Bar.1.Baz']
|
27
27
|
end
|
28
28
|
|
29
|
-
def
|
29
|
+
def test_that_store_camelizes_symbol_key
|
30
30
|
@operation.store(:foo_bar, 'baz')
|
31
31
|
assert @operation.key?('FooBar')
|
32
32
|
refute @operation.key?(:foo_bar)
|
33
33
|
end
|
34
34
|
|
35
|
-
def
|
35
|
+
def test_that_store_wont_camelize_string_key
|
36
36
|
@operation.store('foo_bar', 'baz')
|
37
37
|
assert @operation.key?('foo_bar')
|
38
38
|
refute @operation.key?('FooBar')
|
39
39
|
end
|
40
40
|
|
41
|
-
def
|
41
|
+
def test_that_store_wont_camelize_symbol_key_with_capital_letter
|
42
42
|
@operation.store('MarketplaceId'.to_sym, '1')
|
43
43
|
assert @operation.key?('MarketplaceId')
|
44
44
|
end
|
45
45
|
|
46
|
-
def
|
47
|
-
@operation.store(:seller_sku, '
|
46
|
+
def test_that_store_upcases_sku
|
47
|
+
@operation.store(:seller_sku, 'foo')
|
48
48
|
assert @operation.key?('SellerSKU')
|
49
49
|
refute @operation.key?(:seller_sku)
|
50
50
|
end
|
51
51
|
|
52
|
-
def
|
52
|
+
def test_that_store_upcases_cod
|
53
|
+
@operation.store(:include_cod_fulfillment_preview, 'foo')
|
54
|
+
assert @operation.key?('IncludeCODFulfillmentPreview')
|
55
|
+
refute @operation.key?(:include_cod_fulfillment_preview)
|
56
|
+
end
|
57
|
+
|
58
|
+
def test_that_store_timestamps_time_values
|
53
59
|
ts = Minitest::Mock.new
|
54
60
|
ts.expect(:iso8601, 'foo')
|
55
61
|
@operation.store('time', ts)
|
@@ -57,25 +63,25 @@ class TestPeddlerOperation < MiniTest::Test
|
|
57
63
|
assert_equal 'foo', @operation.fetch('time')
|
58
64
|
end
|
59
65
|
|
60
|
-
def
|
66
|
+
def test_stringifying_hash_values
|
61
67
|
@operation.store('Foo', bar: 1)
|
62
68
|
assert_equal 1, @operation.fetch('Foo.Bar')
|
63
69
|
refute @operation.key?('Foo')
|
64
70
|
end
|
65
71
|
|
66
|
-
def
|
72
|
+
def test_stringifying_nested_hash_values
|
67
73
|
@operation.store('Foo', bar: { baz: 1 })
|
68
74
|
assert_equal 1, @operation.fetch('Foo.Bar.Baz')
|
69
75
|
refute @operation.key?('Foo')
|
70
76
|
end
|
71
77
|
|
72
|
-
def
|
78
|
+
def test_stringifying_struct_values
|
73
79
|
@operation.store('Foo', Struct.new(:bar, :baz).new(1, 2))
|
74
80
|
assert_equal 1, @operation.fetch('Foo.Bar')
|
75
81
|
assert_equal 2, @operation.fetch('Foo.Baz')
|
76
82
|
end
|
77
83
|
|
78
|
-
def
|
84
|
+
def test_that_update_returns_delegator
|
79
85
|
assert_kind_of Peddler::Operation, @operation.add(foo: 'bar')
|
80
86
|
end
|
81
87
|
end
|
@@ -16,19 +16,19 @@ class TestPeddlerParser < MiniTest::Test
|
|
16
16
|
end
|
17
17
|
end
|
18
18
|
|
19
|
-
def
|
19
|
+
def test_parsing_xml
|
20
20
|
assert_parser Peddler::XMLParser,
|
21
21
|
'text/xml',
|
22
22
|
'text/xml; charset=UTF-8'
|
23
23
|
end
|
24
24
|
|
25
|
-
def
|
25
|
+
def test_parsing_incorrect_content_type
|
26
26
|
assert_parser Peddler::XMLParser,
|
27
27
|
'xml; charset=UTF-8',
|
28
28
|
body: '<?xml version="1.0"?><GetLowestOfferListingsForASINResponse>...'
|
29
29
|
end
|
30
30
|
|
31
|
-
def
|
31
|
+
def test_parsing_flat_files
|
32
32
|
assert_parser Peddler::FlatFileParser,
|
33
33
|
'text/plain',
|
34
34
|
'application/octet-stream'
|
@@ -8,29 +8,29 @@ class TestPeddlerStructuredList < MiniTest::Test
|
|
8
8
|
@list = Peddler::StructuredList.new('OrderStatus', 'Status')
|
9
9
|
end
|
10
10
|
|
11
|
-
def
|
11
|
+
def test_building_a_structured_list_for_a_single_value
|
12
12
|
exp = { 'OrderStatus.Status.1' => 'foo' }
|
13
13
|
assert_equal exp, @list.build('foo')
|
14
14
|
end
|
15
15
|
|
16
|
-
def
|
16
|
+
def test_building_a_structured_list_for_an_array_of_values
|
17
17
|
exp = { 'OrderStatus.Status.1' => 'foo', 'OrderStatus.Status.2' => 'bar' }
|
18
18
|
assert_equal exp, @list.build(%w[foo bar])
|
19
19
|
end
|
20
20
|
|
21
|
-
def
|
21
|
+
def test_flattening_nested_arrays_of_values
|
22
22
|
exp = { 'OrderStatus.Status.1' => 'foo', 'OrderStatus.Status.2' => 'bar' }
|
23
23
|
assert_equal exp, @list.build([%w[foo bar]])
|
24
24
|
end
|
25
25
|
|
26
|
-
def
|
26
|
+
def test_handling_single_key
|
27
27
|
list = Peddler::StructuredList.new('Foo')
|
28
28
|
exp = { 'Foo.1' => 'bar' }
|
29
29
|
|
30
30
|
assert_equal exp, list.build('bar')
|
31
31
|
end
|
32
32
|
|
33
|
-
def
|
33
|
+
def test_handling_more_than_two_keys
|
34
34
|
list = Peddler::StructuredList.new('QueryList', 'Query', '1', 'FilterOptions', 'FilterOption')
|
35
35
|
exp = { 'QueryList.Query.1.FilterOptions.FilterOption.1' => 'foo' }
|
36
36
|
|
@@ -13,7 +13,7 @@ class TestPeddlerVCRMatcher < MiniTest::Test
|
|
13
13
|
VCR.insert_cassette(test_name)
|
14
14
|
end
|
15
15
|
|
16
|
-
def
|
16
|
+
def test_matching_recorded_post_without_body
|
17
17
|
client.run
|
18
18
|
end
|
19
19
|
|
@@ -24,12 +24,12 @@ class TestPeddlerVCRMatcher < MiniTest::Test
|
|
24
24
|
end
|
25
25
|
end
|
26
26
|
|
27
|
-
def
|
27
|
+
def test_matching_recorded_post_with_body
|
28
28
|
client.body = 'content'
|
29
29
|
client.run
|
30
30
|
end
|
31
31
|
|
32
|
-
def
|
32
|
+
def test_that_it_wont_match_unrecorded_post_with_different_query_and_same_body
|
33
33
|
client.operation.add(foo: 'bar')
|
34
34
|
client.body = 'content'
|
35
35
|
assert_raises(VCR::Errors::UnhandledHTTPRequestError) do
|
@@ -37,7 +37,7 @@ class TestPeddlerVCRMatcher < MiniTest::Test
|
|
37
37
|
end
|
38
38
|
end
|
39
39
|
|
40
|
-
def
|
40
|
+
def test_that_it_wont_match_unrecorded_post_with_same_query_and_different_body
|
41
41
|
client.body = 'other content'
|
42
42
|
assert_raises(VCR::Errors::UnhandledHTTPRequestError) do
|
43
43
|
client.run
|
@@ -20,18 +20,18 @@ class TestPeddlerXMLParser < MiniTest::Test
|
|
20
20
|
@parser = Parser.new(res)
|
21
21
|
end
|
22
22
|
|
23
|
-
def
|
23
|
+
def test_that_it_does_not_implement_parsing
|
24
24
|
assert_raises(NotImplementedError) do
|
25
25
|
@parser.parse
|
26
26
|
end
|
27
27
|
end
|
28
28
|
|
29
|
-
def
|
29
|
+
def test_digging_data
|
30
30
|
@parser.instance_variable_set :@data, foo: { bar: :baz }
|
31
31
|
assert_equal :baz, @parser.dig(:foo, :bar)
|
32
32
|
end
|
33
33
|
|
34
|
-
def
|
34
|
+
def test_validation
|
35
35
|
assert @parser.valid?
|
36
36
|
end
|
37
37
|
end
|
@@ -4,25 +4,25 @@ require 'helper'
|
|
4
4
|
require 'peddler/xml_response_parser'
|
5
5
|
|
6
6
|
class TestPeddlerXMLResponseParser < MiniTest::Test
|
7
|
-
def
|
7
|
+
def test_parsing_responses
|
8
8
|
body = '<Response><Result><Foo>Bar</Foo></Result></Response>'
|
9
9
|
parser = Peddler::XMLResponseParser.new(response(body))
|
10
10
|
assert_equal 'Bar', parser.parse['Foo']
|
11
11
|
end
|
12
12
|
|
13
|
-
def
|
13
|
+
def test_parsing_messages
|
14
14
|
body = '<Response><MessageType>ProcessingReport</MessageType><Message><Foo>Bar</Foo></Message></Response>'
|
15
15
|
parser = Peddler::XMLResponseParser.new(response(body))
|
16
16
|
assert_equal 'Bar', parser.parse['Foo']
|
17
17
|
end
|
18
18
|
|
19
|
-
def
|
19
|
+
def test_parsing_reports
|
20
20
|
body = '<fooReports><fooReport><foo>Bar</foo></fooReport></fooReports>'
|
21
21
|
parser = Peddler::XMLResponseParser.new(response(body))
|
22
22
|
assert_equal 'Bar', parser.parse['foo']
|
23
23
|
end
|
24
24
|
|
25
|
-
def
|
25
|
+
def test_parsing_next_token
|
26
26
|
body = '<Response><Result><NextToken>123</NextToken></Result></Response>'
|
27
27
|
parser = Peddler::XMLResponseParser.new(response(body))
|
28
28
|
assert_equal '123', parser.next_token
|
data/test/unit/test_mws.rb
CHANGED
@@ -46,12 +46,12 @@ http_interactions:
|
|
46
46
|
<LabelPrepType>SELLER_LABEL</LabelPrepType>
|
47
47
|
<DestinationFulfillmentCenterId>IND1</DestinationFulfillmentCenterId>
|
48
48
|
<ShipToAddress>
|
49
|
-
<City>
|
49
|
+
<City>FILTERED</City>
|
50
50
|
<CountryCode>US</CountryCode>
|
51
51
|
<PostalCode>FILTERED</PostalCode>
|
52
52
|
<Name>FILTERED</Name>
|
53
53
|
<AddressLine1>FILTERED</AddressLine1>
|
54
|
-
<StateOrProvinceCode>
|
54
|
+
<StateOrProvinceCode>FILTERED</StateOrProvinceCode>
|
55
55
|
</ShipToAddress>
|
56
56
|
<Items>
|
57
57
|
<member>
|
@@ -116,12 +116,12 @@ http_interactions:
|
|
116
116
|
<LabelPrepType>SELLER_LABEL</LabelPrepType>
|
117
117
|
<DestinationFulfillmentCenterId>IND1</DestinationFulfillmentCenterId>
|
118
118
|
<ShipToAddress>
|
119
|
-
<City>
|
119
|
+
<City>FILTERED</City>
|
120
120
|
<CountryCode>US</CountryCode>
|
121
121
|
<PostalCode>FILTERED</PostalCode>
|
122
122
|
<Name>FILTERED</Name>
|
123
123
|
<AddressLine1>FILTERED</AddressLine1>
|
124
|
-
<StateOrProvinceCode>
|
124
|
+
<StateOrProvinceCode>FILTERED</StateOrProvinceCode>
|
125
125
|
</ShipToAddress>
|
126
126
|
<Items>
|
127
127
|
<member>
|
@@ -186,12 +186,12 @@ http_interactions:
|
|
186
186
|
<LabelPrepType>SELLER_LABEL</LabelPrepType>
|
187
187
|
<DestinationFulfillmentCenterId>IND1</DestinationFulfillmentCenterId>
|
188
188
|
<ShipToAddress>
|
189
|
-
<City>
|
189
|
+
<City>FILTERED</City>
|
190
190
|
<CountryCode>US</CountryCode>
|
191
191
|
<PostalCode>FILTERED</PostalCode>
|
192
192
|
<Name>FILTERED</Name>
|
193
193
|
<AddressLine1>FILTERED</AddressLine1>
|
194
|
-
<StateOrProvinceCode>
|
194
|
+
<StateOrProvinceCode>FILTERED</StateOrProvinceCode>
|
195
195
|
</ShipToAddress>
|
196
196
|
<Items>
|
197
197
|
<member>
|
@@ -256,12 +256,12 @@ http_interactions:
|
|
256
256
|
<LabelPrepType>SELLER_LABEL</LabelPrepType>
|
257
257
|
<DestinationFulfillmentCenterId>IND1</DestinationFulfillmentCenterId>
|
258
258
|
<ShipToAddress>
|
259
|
-
<City>
|
259
|
+
<City>FILTERED</City>
|
260
260
|
<CountryCode>US</CountryCode>
|
261
261
|
<PostalCode>FILTERED</PostalCode>
|
262
262
|
<Name>FILTERED</Name>
|
263
263
|
<AddressLine1>FILTERED</AddressLine1>
|
264
|
-
<StateOrProvinceCode>
|
264
|
+
<StateOrProvinceCode>FILTERED</StateOrProvinceCode>
|
265
265
|
</ShipToAddress>
|
266
266
|
<Items>
|
267
267
|
<member>
|
@@ -756,12 +756,12 @@ http_interactions:
|
|
756
756
|
<LabelPrepType>SELLER_LABEL</LabelPrepType>
|
757
757
|
<DestinationFulfillmentCenterId>IND1</DestinationFulfillmentCenterId>
|
758
758
|
<ShipToAddress>
|
759
|
-
<City>
|
759
|
+
<City>FILTERED</City>
|
760
760
|
<CountryCode>US</CountryCode>
|
761
761
|
<PostalCode>FILTERED</PostalCode>
|
762
762
|
<Name>FILTERED</Name>
|
763
763
|
<AddressLine1>FILTERED</AddressLine1>
|
764
|
-
<StateOrProvinceCode>
|
764
|
+
<StateOrProvinceCode>FILTERED</StateOrProvinceCode>
|
765
765
|
</ShipToAddress>
|
766
766
|
<Items>
|
767
767
|
<member>
|
@@ -826,12 +826,12 @@ http_interactions:
|
|
826
826
|
<LabelPrepType>SELLER_LABEL</LabelPrepType>
|
827
827
|
<DestinationFulfillmentCenterId>IND1</DestinationFulfillmentCenterId>
|
828
828
|
<ShipToAddress>
|
829
|
-
<City>
|
829
|
+
<City>FILTERED</City>
|
830
830
|
<CountryCode>US</CountryCode>
|
831
831
|
<PostalCode>FILTERED</PostalCode>
|
832
832
|
<Name>FILTERED</Name>
|
833
833
|
<AddressLine1>FILTERED</AddressLine1>
|
834
|
-
<StateOrProvinceCode>
|
834
|
+
<StateOrProvinceCode>FILTERED</StateOrProvinceCode>
|
835
835
|
</ShipToAddress>
|
836
836
|
<Items>
|
837
837
|
<member>
|
@@ -896,12 +896,12 @@ http_interactions:
|
|
896
896
|
<LabelPrepType>SELLER_LABEL</LabelPrepType>
|
897
897
|
<DestinationFulfillmentCenterId>IND1</DestinationFulfillmentCenterId>
|
898
898
|
<ShipToAddress>
|
899
|
-
<City>
|
899
|
+
<City>FILTERED</City>
|
900
900
|
<CountryCode>US</CountryCode>
|
901
901
|
<PostalCode>FILTERED</PostalCode>
|
902
902
|
<Name>FILTERED</Name>
|
903
903
|
<AddressLine1>FILTERED</AddressLine1>
|
904
|
-
<StateOrProvinceCode>
|
904
|
+
<StateOrProvinceCode>FILTERED</StateOrProvinceCode>
|
905
905
|
</ShipToAddress>
|
906
906
|
<Items>
|
907
907
|
<member>
|
@@ -966,12 +966,12 @@ http_interactions:
|
|
966
966
|
<LabelPrepType>SELLER_LABEL</LabelPrepType>
|
967
967
|
<DestinationFulfillmentCenterId>IND1</DestinationFulfillmentCenterId>
|
968
968
|
<ShipToAddress>
|
969
|
-
<City>
|
969
|
+
<City>FILTERED</City>
|
970
970
|
<CountryCode>US</CountryCode>
|
971
971
|
<PostalCode>FILTERED</PostalCode>
|
972
972
|
<Name>FILTERED</Name>
|
973
973
|
<AddressLine1>FILTERED</AddressLine1>
|
974
|
-
<StateOrProvinceCode>
|
974
|
+
<StateOrProvinceCode>FILTERED</StateOrProvinceCode>
|
975
975
|
</ShipToAddress>
|
976
976
|
<Items>
|
977
977
|
<member>
|
@@ -1036,12 +1036,12 @@ http_interactions:
|
|
1036
1036
|
<LabelPrepType>SELLER_LABEL</LabelPrepType>
|
1037
1037
|
<DestinationFulfillmentCenterId>IND1</DestinationFulfillmentCenterId>
|
1038
1038
|
<ShipToAddress>
|
1039
|
-
<City>
|
1039
|
+
<City>FILTERED</City>
|
1040
1040
|
<CountryCode>US</CountryCode>
|
1041
1041
|
<PostalCode>FILTERED</PostalCode>
|
1042
1042
|
<Name>FILTERED</Name>
|
1043
1043
|
<AddressLine1>FILTERED</AddressLine1>
|
1044
|
-
<StateOrProvinceCode>
|
1044
|
+
<StateOrProvinceCode>FILTERED</StateOrProvinceCode>
|
1045
1045
|
</ShipToAddress>
|
1046
1046
|
<Items>
|
1047
1047
|
<member>
|
@@ -1108,12 +1108,12 @@ http_interactions:
|
|
1108
1108
|
<DestinationFulfillmentCenterId>IND1</DestinationFulfillmentCenterId>
|
1109
1109
|
<LabelPrepType>SELLER_LABEL</LabelPrepType>
|
1110
1110
|
<ShipToAddress>
|
1111
|
-
<City>
|
1111
|
+
<City>FILTERED</City>
|
1112
1112
|
<CountryCode>US</CountryCode>
|
1113
1113
|
<PostalCode>FILTERED</PostalCode>
|
1114
1114
|
<Name>FILTERED</Name>
|
1115
1115
|
<AddressLine1>FILTERED</AddressLine1>
|
1116
|
-
<StateOrProvinceCode>
|
1116
|
+
<StateOrProvinceCode>FILTERED</StateOrProvinceCode>
|
1117
1117
|
</ShipToAddress>
|
1118
1118
|
<Items>
|
1119
1119
|
<member>
|
@@ -1675,12 +1675,12 @@ http_interactions:
|
|
1675
1675
|
<DestinationFulfillmentCenterId>IND1</DestinationFulfillmentCenterId>
|
1676
1676
|
<LabelPrepType>SELLER_LABEL</LabelPrepType>
|
1677
1677
|
<ShipToAddress>
|
1678
|
-
<City>
|
1678
|
+
<City>FILTERED</City>
|
1679
1679
|
<CountryCode>US</CountryCode>
|
1680
1680
|
<PostalCode>FILTERED</PostalCode>
|
1681
1681
|
<Name>FILTERED</Name>
|
1682
1682
|
<AddressLine1>FILTERED</AddressLine1>
|
1683
|
-
<StateOrProvinceCode>
|
1683
|
+
<StateOrProvinceCode>FILTERED</StateOrProvinceCode>
|
1684
1684
|
</ShipToAddress>
|
1685
1685
|
<Items>
|
1686
1686
|
<member>
|
@@ -2242,12 +2242,12 @@ http_interactions:
|
|
2242
2242
|
<DestinationFulfillmentCenterId>IND1</DestinationFulfillmentCenterId>
|
2243
2243
|
<LabelPrepType>SELLER_LABEL</LabelPrepType>
|
2244
2244
|
<ShipToAddress>
|
2245
|
-
<City>
|
2245
|
+
<City>FILTERED</City>
|
2246
2246
|
<CountryCode>US</CountryCode>
|
2247
2247
|
<PostalCode>FILTERED</PostalCode>
|
2248
2248
|
<Name>FILTERED</Name>
|
2249
2249
|
<AddressLine1>FILTERED</AddressLine1>
|
2250
|
-
<StateOrProvinceCode>
|
2250
|
+
<StateOrProvinceCode>FILTERED</StateOrProvinceCode>
|
2251
2251
|
</ShipToAddress>
|
2252
2252
|
<Items>
|
2253
2253
|
<member>
|
@@ -2809,12 +2809,12 @@ http_interactions:
|
|
2809
2809
|
<DestinationFulfillmentCenterId>IND1</DestinationFulfillmentCenterId>
|
2810
2810
|
<LabelPrepType>SELLER_LABEL</LabelPrepType>
|
2811
2811
|
<ShipToAddress>
|
2812
|
-
<City>
|
2812
|
+
<City>FILTERED</City>
|
2813
2813
|
<CountryCode>US</CountryCode>
|
2814
2814
|
<PostalCode>FILTERED</PostalCode>
|
2815
2815
|
<Name>FILTERED</Name>
|
2816
2816
|
<AddressLine1>FILTERED</AddressLine1>
|
2817
|
-
<StateOrProvinceCode>
|
2817
|
+
<StateOrProvinceCode>FILTERED</StateOrProvinceCode>
|
2818
2818
|
</ShipToAddress>
|
2819
2819
|
<Items>
|
2820
2820
|
<member>
|
@@ -3376,12 +3376,12 @@ http_interactions:
|
|
3376
3376
|
<DestinationFulfillmentCenterId>IND1</DestinationFulfillmentCenterId>
|
3377
3377
|
<LabelPrepType>SELLER_LABEL</LabelPrepType>
|
3378
3378
|
<ShipToAddress>
|
3379
|
-
<City>
|
3379
|
+
<City>FILTERED</City>
|
3380
3380
|
<CountryCode>US</CountryCode>
|
3381
3381
|
<PostalCode>FILTERED</PostalCode>
|
3382
3382
|
<Name>FILTERED</Name>
|
3383
3383
|
<AddressLine1>FILTERED</AddressLine1>
|
3384
|
-
<StateOrProvinceCode>
|
3384
|
+
<StateOrProvinceCode>FILTERED</StateOrProvinceCode>
|
3385
3385
|
</ShipToAddress>
|
3386
3386
|
<Items>
|
3387
3387
|
<member>
|
@@ -3943,12 +3943,12 @@ http_interactions:
|
|
3943
3943
|
<DestinationFulfillmentCenterId>IND1</DestinationFulfillmentCenterId>
|
3944
3944
|
<LabelPrepType>SELLER_LABEL</LabelPrepType>
|
3945
3945
|
<ShipToAddress>
|
3946
|
-
<City>
|
3946
|
+
<City>FILTERED</City>
|
3947
3947
|
<CountryCode>US</CountryCode>
|
3948
3948
|
<PostalCode>FILTERED</PostalCode>
|
3949
3949
|
<Name>FILTERED</Name>
|
3950
3950
|
<AddressLine1>FILTERED</AddressLine1>
|
3951
|
-
<StateOrProvinceCode>
|
3951
|
+
<StateOrProvinceCode>FILTERED</StateOrProvinceCode>
|
3952
3952
|
</ShipToAddress>
|
3953
3953
|
<Items>
|
3954
3954
|
<member>
|
@@ -4510,12 +4510,12 @@ http_interactions:
|
|
4510
4510
|
<DestinationFulfillmentCenterId>IND1</DestinationFulfillmentCenterId>
|
4511
4511
|
<LabelPrepType>SELLER_LABEL</LabelPrepType>
|
4512
4512
|
<ShipToAddress>
|
4513
|
-
<City>
|
4513
|
+
<City>FILTERED</City>
|
4514
4514
|
<CountryCode>US</CountryCode>
|
4515
4515
|
<PostalCode>FILTERED</PostalCode>
|
4516
4516
|
<Name>FILTERED</Name>
|
4517
4517
|
<AddressLine1>FILTERED</AddressLine1>
|
4518
|
-
<StateOrProvinceCode>
|
4518
|
+
<StateOrProvinceCode>FILTERED</StateOrProvinceCode>
|
4519
4519
|
</ShipToAddress>
|
4520
4520
|
<Items>
|
4521
4521
|
<member>
|
@@ -5077,12 +5077,12 @@ http_interactions:
|
|
5077
5077
|
<DestinationFulfillmentCenterId>IND1</DestinationFulfillmentCenterId>
|
5078
5078
|
<LabelPrepType>SELLER_LABEL</LabelPrepType>
|
5079
5079
|
<ShipToAddress>
|
5080
|
-
<City>
|
5080
|
+
<City>FILTERED</City>
|
5081
5081
|
<CountryCode>US</CountryCode>
|
5082
5082
|
<PostalCode>FILTERED</PostalCode>
|
5083
5083
|
<Name>FILTERED</Name>
|
5084
5084
|
<AddressLine1>FILTERED</AddressLine1>
|
5085
|
-
<StateOrProvinceCode>
|
5085
|
+
<StateOrProvinceCode>FILTERED</StateOrProvinceCode>
|
5086
5086
|
</ShipToAddress>
|
5087
5087
|
<Items>
|
5088
5088
|
<member>
|
@@ -5644,12 +5644,12 @@ http_interactions:
|
|
5644
5644
|
<DestinationFulfillmentCenterId>IND1</DestinationFulfillmentCenterId>
|
5645
5645
|
<LabelPrepType>SELLER_LABEL</LabelPrepType>
|
5646
5646
|
<ShipToAddress>
|
5647
|
-
<City>
|
5647
|
+
<City>FILTERED</City>
|
5648
5648
|
<CountryCode>US</CountryCode>
|
5649
5649
|
<PostalCode>FILTERED</PostalCode>
|
5650
5650
|
<Name>FILTERED</Name>
|
5651
5651
|
<AddressLine1>FILTERED</AddressLine1>
|
5652
|
-
<StateOrProvinceCode>
|
5652
|
+
<StateOrProvinceCode>FILTERED</StateOrProvinceCode>
|
5653
5653
|
</ShipToAddress>
|
5654
5654
|
<Items>
|
5655
5655
|
<member>
|