Files
openfoodnetwork/spec/javascripts/unit/darkswarm/order_cycle_spec.js.coffee
2014-03-20 16:58:57 +11:00

35 lines
1.1 KiB
CoffeeScript

describe 'OrderCycle service', ->
$httpBackend = null
OrderCycle = null
mockProduct = {
update: ->
}
beforeEach ->
angular.module('Darkswarm').value('orderCycleData', {})
module 'Darkswarm', ($provide)->
$provide.value "Product", mockProduct
null # IMPORTANT
# You must return null because module() is a bit dumb
inject (_OrderCycle_, _$httpBackend_)->
$httpBackend = _$httpBackend_
OrderCycle = _OrderCycle_
it "posts the order_cycle ID and tells product to update", ->
$httpBackend.expectPOST("/shop/order_cycle", {"order_cycle_id" : 10}).respond(200)
spyOn(mockProduct, "update")
OrderCycle.order_cycle.order_cycle_id = 10
OrderCycle.push_order_cycle()
$httpBackend.flush()
expect(mockProduct.update).toHaveBeenCalled()
it "updates the orders_close_at attr after update", ->
datestring = "2013-12-20T00:00:00+11:00"
$httpBackend.expectPOST("/shop/order_cycle").respond({orders_close_at: datestring})
OrderCycle.push_order_cycle()
$httpBackend.flush()
expect(OrderCycle.order_cycle.orders_close_at).toEqual(datestring)