Files
openfoodnetwork/spec/javascripts/unit/darkswarm/services/order_spec.js.coffee
2014-04-08 12:58:37 +10:00

48 lines
1.3 KiB
CoffeeScript

describe 'Order service', ->
Order = null
orderData = null
beforeEach ->
orderData = {
id: 3102
payment_method_id: null
shipping_methods:
7:
require_ship_address: true
price: 0.0
25:
require_ship_address: false
price: 13
payment_methods:
99:
test: "foo"
}
angular.module('Darkswarm').value('order', orderData)
module 'Darkswarm'
inject ($injector)->
Order = $injector.get("Order")
it "defaults the shipping method to the first", ->
expect(Order.shipping_method_id).toEqual 7
expect(Order.shippingMethod()).toEqual { require_ship_address : true, price : 0 }
it "defaults to 'same as billing' for address", ->
expect(Order.ship_address_same_as_billing).toEqual true
it 'Tracks whether a ship address is required', ->
expect(Order.requireShipAddress()).toEqual true
Order.shipping_method_id = 25
expect(Order.requireShipAddress()).toEqual false
it 'Gets the current shipping price', ->
expect(Order.shippingPrice()).toEqual 0.0
Order.shipping_method_id = 25
expect(Order.shippingPrice()).toEqual 13
it 'Gets the current payment method', ->
expect(Order.paymentMethod()).toEqual null
Order.payment_method_id = 99
expect(Order.paymentMethod()).toEqual {test: "foo"}