Amazon-MWS

 view release on metacpan or  search on metacpan

t/shipping-confirmation.t  view on Meta::CPAN

ok($feed, "Can create the feed and validates against the schema"); # and diag $feed;

# test against the example provided in the documentation


my $expected = <<'XML';
<?xml version="1.0" encoding="UTF-8"?>
<AmazonEnvelope>
  <Header>
    <DocumentVersion>1.1</DocumentVersion>
    <MerchantIdentifier>My Store</MerchantIdentifier>
  </Header>
  <MessageType>OrderFulfillment</MessageType>
  <Message>
    <MessageID>1</MessageID>
    <OrderFulfillment>
      <MerchantOrderID>1234567</MerchantOrderID>
      <MerchantFulfillmentID>1234567</MerchantFulfillmentID>
      <FulfillmentDate>2002-05-01T15:36:33-08:00</FulfillmentDate>
      <FulfillmentData>
        <CarrierCode>UPS</CarrierCode>
        <ShippingMethod>Second Day</ShippingMethod>
        <ShipperTrackingNumber>1234567890</ShipperTrackingNumber>
      </FulfillmentData>
      <Item>
        <MerchantOrderItemID>1234567</MerchantOrderItemID>
        <MerchantFulfillmentItemID>1234567</MerchantFulfillmentItemID>
        <Quantity>2</Quantity>
      </Item>
    </OrderFulfillment>
  </Message>
</AmazonEnvelope>
XML

%shipped = (
            merchant_order_id => 1234567,
            merchant_fulfillment_id => 1234567,
            fulfillment_date => DateTime->new(year => 2002,
                                              month => 5,
                                              day => 1,
                                              hour => 15,
                                              minute => 36,
                                              second => 33,
                                              time_zone => '-08:00',
                                              ),
            carrier => 'UPS',
            shipping_method => 'Second Day',
            shipping_tracking_number => 1234567890,
            items => [
                      {
                       merchant_order_item_code => 1234567,
                       merchant_fulfillment_item_id => 1234567,
                       quantity => 2,
                      },
                     ],
           );

$shipped_order = Amazon::MWS::XML::ShippedOrder->new(%shipped);
is_deeply ([ split(/\n/, $uploader->shipping_confirmation_feed($shipped_order)) ],
           [ split(/\n/, $expected) ],
           "Feed looks ok");



( run in 0.887 second using v1.01-cache-2.11-cpan-ad19def0cd9 )