class ActiveShipping::BenchmarkCarrier
Public Instance Methods
find_rates(origin, destination, packages, options = {})
click to toggle source
# File lib/active_shipping/carriers/benchmark_carrier.rb, line 10 def find_rates(origin, destination, packages, options = {}) origin = Location.from(origin) destination = Location.from(destination) packages = Array(packages) delay_time = generate_simulated_lag bogus_estimate = RateEstimate.new( origin, destination, @@name, "Free Benchmark Shipping", :total_price => 0, :currency => 'USD', :packages => packages, :delivery_range => [Time.now.utc.strftime("%Y-%d-%m"), Time.now.utc.strftime("%Y-%d-%m")] ) RateResponse.new(true, "Success (delayed #{delay_time} seconds)", {:rate => 'free'}, :rates => [bogus_estimate], :xml => "<rate>free</rate>") end
Private Instance Methods
generate_simulated_lag(max_delay = 30)
click to toggle source
# File lib/active_shipping/carriers/benchmark_carrier.rb, line 27 def generate_simulated_lag(max_delay = 30) sleep Random.rand * max_delay end