forked from Shopify/active_shipping
/
console.rb
39 lines (32 loc) · 1016 Bytes
/
console.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
require 'pry'
require 'reactive_shipping'
require 'test_helper'
include ReactiveShipping
include ReactiveShipping::Test::Credentials
include ReactiveShipping::Test::Fixtures
def create_carrier(klass, creds)
options = credentials(creds).merge(:test => true)
klass.new(options)
rescue NoCredentialsFound
STDERR.puts "No credentials found for #{creds}"
nil
end
def px(xml_s)
puts Nokogiri.XML(xml_s)
end
def reload!
# Supress a billion constant redefinition warnings
warn_level = $VERBOSE
$VERBOSE = nil
files = $LOADED_FEATURES.select { |feat| feat =~ /\/reactive_shipping\// }
files.each { |file| load file }
$VERBOSE = warn_level
files
end
# Prebuilt objects for most common carriers
@canpo = create_carrier(CanadaPost,:canada_post)
@fedex = create_carrier(FedEx,:fedex)
@shipwire = create_carrier(Shipwire,:shipwire)
@usps = create_carrier(USPS,:usps)
# Tips: call reload! to reload all the reactive_shipping files, use fixtures from test_helpers for parameters
binding.pry