require 'test_helper' class RemoteUSPSReturnsTest < ActiveSupport::TestCase include ActiveShipping::Test::Credentials include ActiveShipping::Test::Fixtures def setup begin creds = credentials(:usps_returns) @carrier = USPSReturns.new @external_return_label_request = ExternalReturnLabelRequest.from_hash( :merchant_account_id => creds[:merchant_account_id], :mid => creds[:mid], :customer_name => 'Joe Dirt', :customer_address1 => '122 W Hudson St', :customer_address2 => 'Unit 2', :customer_city => 'New York', :customer_state => 'NY', :customer_zipcode => '10013', :label_format => 'No Instructions', :label_definition => '4X6', :recipient_bcc => 'test@gmail.com', :service_type_code => '020', :address_override_notification => 'true', :address_validation => 'true', :call_center_or_self_service => 'Customer' ) rescue NoCredentialsFound => e skip(e.message) end end def test_external_return_label_request assert_silent do @carrier.external_return_label_request(@external_return_label_request, :test => true) end end def test_external_return_label_with_bad_account assert_raises ResponseError do @external_return_label_request.merchant_account_id = "1234" @carrier.external_return_label_request(@external_return_label_request, :test => true) end end def test_external_return_label_with_address_validation_false assert_silent do @external_return_label_request.address_validation = false @carrier.external_return_label_request(@external_return_label_request, :test => true) end end def test_external_return_label_with_address_validation_false_and_bad_address assert_silent do @external_return_label_request.address_validation = false @external_return_label_request.customer_state = 'NJ' @external_return_label_request.customer_zipcode = '08829' @carrier.external_return_label_request(@external_return_label_request, :test => true) end end def test_external_return_label_with_address_validation_true_and_bad_address assert_raises ResponseError do @external_return_label_request.address_validation = true @external_return_label_request.customer_state = 'NJ' @external_return_label_request.customer_zipcode = '08829' @carrier.external_return_label_request(@external_return_label_request, :test => true) end end end