Rewrite existing specs

This commit is contained in:
Matt-Yorkley
2018-09-17 16:34:52 +01:00
parent 68f0c80016
commit b2551b4e0b
9 changed files with 52 additions and 40 deletions

View File

@@ -37,7 +37,7 @@ describe "LineItemsCtrl", ->
order = { id: 9, order_cycle: { id: 4 }, distributor: { id: 5 }, number: "R123456" }
lineItem = { id: 7, quantity: 3, order: { id: 9 }, supplier: { id: 1 } }
httpBackend.expectGET("/admin/orders.json?q%5Bcompleted_at_gteq%5D=SomeDate&q%5Bcompleted_at_lt%5D=SomeDate&q%5Bcompleted_at_not_null%5D=true&q%5Bstate_not_eq%5D=canceled").respond [order]
httpBackend.expectGET("/admin/orders.json?q%5Bcompleted_at_gteq%5D=SomeDate&q%5Bcompleted_at_lt%5D=SomeDate&q%5Bcompleted_at_not_null%5D=true&q%5Bstate_not_eq%5D=canceled").respond {orders: [order], pagination: {page: 1, pages: 1, results: 1}}
httpBackend.expectGET("/admin/bulk_line_items.json?q%5Border%5D%5Bcompleted_at_gteq%5D=SomeDate&q%5Border%5D%5Bcompleted_at_lt%5D=SomeDate&q%5Border%5D%5Bcompleted_at_not_null%5D=true&q%5Border%5D%5Bstate_not_eq%5D=canceled").respond [lineItem]
httpBackend.expectGET("/admin/enterprises/visible.json?ams_prefix=basic&q%5Bsells_in%5D%5B%5D=own&q%5Bsells_in%5D%5B%5D=any").respond [distributor]
httpBackend.expectGET("/admin/order_cycles.json?ams_prefix=basic&as=distributor&q%5Borders_close_at_gt%5D=SomeDate").respond [orderCycle]
@@ -68,7 +68,7 @@ describe "LineItemsCtrl", ->
describe "initialisation", ->
it "gets suppliers", ->
expect(scope.suppliers).toDeepEqual [supplier ]
expect(scope.suppliers).toDeepEqual [ supplier ]
it "gets distributors", ->
expect(scope.distributors).toDeepEqual [ distributor ]

View File

@@ -7,13 +7,25 @@ describe "ordersCtrl", ->
{id: 10, name: 'Ten', status: 'open', distributors: [{id: 1, name: 'One'}]}
{id: 20, name: 'Twenty', status: 'closed', distributors: [{id: 2, name: 'Two', status: 'closed'}]}
]
SortOptions = {
predicate: "",
reverse: false
}
beforeEach ->
scope = {}
shops = []
orderCycles = [
{id: 10, name: 'Ten', status: 'open', distributors: [{id: 1, name: 'One'}]}
{id: 20, name: 'Twenty', status: 'closed', distributors: [{id: 2, name: 'Two', status: 'closed'}]}
]
module('admin.orders')
inject ($controller) ->
ctrl = $controller 'ordersCtrl', {$scope: scope, $attrs: attrs, shops: shops, orderCycles: orderCycles}
module 'admin.orders', ($provide)->
$provide.provider('shops', shops)
$provide.provider('orderCycles', orderCycles)
inject (_$injector_, $controller) ->
$injector = _$injector_
ctrl = $controller 'ordersCtrl', {$scope: scope, $attrs: attrs, $injector: $injector, SortOptions: SortOptions}
it "initialises name_and_status", ->
expect(scope.orderCycles[0].name_and_status).toEqual "Ten (open)"

View File

@@ -18,17 +18,17 @@ describe "Orders service", ->
result = response = null
beforeEach ->
response = [{ id: 5, name: 'Order 1'}]
response = { orders: [{ id: 5, name: 'Order 1'}], pagination: {page: 1, pages: 1, results: 1} }
$httpBackend.expectGET('/admin/orders.json').respond 200, response
result = Orders.index()
$httpBackend.flush()
it "stores returned data in @byID, with ids as keys", ->
# OrderResource returns instances of Resource rather than raw objects
expect(Orders.byID).toDeepEqual { 5: response[0] }
expect(Orders.byID).toDeepEqual { 5: response.orders[0] }
it "stores returned data in @pristineByID, with ids as keys", ->
expect(Orders.pristineByID).toDeepEqual { 5: response[0] }
expect(Orders.pristineByID).toDeepEqual { 5: response.orders[0] }
it "returns an array of orders", ->
expect(result).toDeepEqual response