diff options
author | Bernhard Posselt <nukeawhale@gmail.com> | 2013-04-29 13:25:04 +0200 |
---|---|---|
committer | Bernhard Posselt <nukeawhale@gmail.com> | 2013-04-29 13:30:01 +0200 |
commit | 3fc18156ae0b586e8de0c82949acfa6291317536 (patch) | |
tree | 201e97511bea44c58b5e9d78d8cf36ae2e2b54f9 /js/tests | |
parent | a03b54c6a59837d0045c140ea7aef3fae95daa95 (diff) |
go back to order by id, fix #138, use a newest item id to prevent marking items as read that the user didnt see yet fix #141, also update the starred count periodically
Diffstat (limited to 'js/tests')
5 files changed, 22 insertions, 25 deletions
diff --git a/js/tests/controllers/itemcontrollerSpec.coffee b/js/tests/controllers/itemcontrollerSpec.coffee index 3a7e6712a..fe1e85c0b 100644 --- a/js/tests/controllers/itemcontrollerSpec.coffee +++ b/js/tests/controllers/itemcontrollerSpec.coffee @@ -101,7 +101,7 @@ describe 'ItemController', -> expect(@persistence.getItems).not.toHaveBeenCalled() - it 'should autoPage with the newest Item Id', => + it 'should autoPage with the lowest Item Id', => @NewestItem.handle(25) @persistence.getItems = jasmine.createSpy('getItems') @@ -116,12 +116,11 @@ describe 'ItemController', -> @scope.$broadcast 'autoPage' expect(@persistence.getItems).toHaveBeenCalledWith( - @FeedType.Folder, 3, 3, 25, jasmine.any(Function) + @FeedType.Folder, 3, 3, jasmine.any(Function) ) it 'should not prevent autopaging if there are no items', => - @NewestItem.handle(25) @scope.$broadcast 'autoPage' @persistence.getItems = jasmine.createSpy('getItems') @@ -130,12 +129,11 @@ describe 'ItemController', -> @scope.$broadcast 'autoPage' expect(@persistence.getItems).toHaveBeenCalledWith( - @FeedType.Folder, 3, 1, 25, jasmine.any(Function) + @FeedType.Folder, 3, 3, jasmine.any(Function) ) it 'should not send multiple autopage requests at once', => - @NewestItem.handle(25) @persistence.getItems = jasmine.createSpy('getItems') item1 = {id: 3, guidHash: 'abcd', feedId: 3} @ItemModel.add(item1) @@ -148,14 +146,14 @@ describe 'ItemController', -> @scope.$broadcast 'autoPage' expect(@persistence.getItems).not.toHaveBeenCalledWith( - @FeedType.Folder, 2, 1, 25, jasmine.any(Function) + @FeedType.Folder, 2, 3, jasmine.any(Function) ) it 'should allow another autopaging request if the last one finished', => @NewestItem.handle(25) @persistence.getItems = jasmine.createSpy('getItems') - @persistence.getItems.andCallFake (type, id, offset, newestItemId, + @persistence.getItems.andCallFake (type, id, offset, onSuccess) -> onSuccess() diff --git a/js/tests/services/businesslayer/feedbusinesslayerSpec.coffee b/js/tests/services/businesslayer/feedbusinesslayerSpec.coffee index 1c663d279..feb687b2c 100644 --- a/js/tests/services/businesslayer/feedbusinesslayerSpec.coffee +++ b/js/tests/services/businesslayer/feedbusinesslayerSpec.coffee @@ -93,6 +93,12 @@ describe 'FeedBusinessLayer', -> expect(count).toBe(169) + it 'should not mark feed read when no highest item id', => + @persistence.setFeedRead = jasmine.createSpy('setFeedRead') + @FeedBusinessLayer.markFeedRead(5) + expect(@persistence.setFeedRead).not.toHaveBeenCalled() + + it 'should mark feed as read', => @NewestItem.handle(25) @ActiveFeed.handle({type: @FeedType.Feed, id: 5}) diff --git a/js/tests/services/businesslayer/itembusinesslayerSpec.coffee b/js/tests/services/businesslayer/itembusinesslayerSpec.coffee index 4b8d520ee..8a30c6808 100644 --- a/js/tests/services/businesslayer/itembusinesslayerSpec.coffee +++ b/js/tests/services/businesslayer/itembusinesslayerSpec.coffee @@ -247,4 +247,4 @@ describe 'ItemBusinessLayer', -> @ItemBusinessLayer.loadNext(callback) expect(@persistence.getItems).toHaveBeenCalledWith( - @FeedType.Feed, 3, 4, 13, jasmine.any(Function)) + @FeedType.Feed, 3, 1, jasmine.any(Function)) diff --git a/js/tests/services/models/itemmodelSpec.coffee b/js/tests/services/models/itemmodelSpec.coffee index b4a74d122..3999467c9 100644 --- a/js/tests/services/models/itemmodelSpec.coffee +++ b/js/tests/services/models/itemmodelSpec.coffee @@ -102,3 +102,12 @@ describe 'ItemModel', -> item.setUnstarred() expect(@ItemModel.getById(3).isStarred()).toBe(false) + + + it 'should return the lowest id', => + @ItemModel.add({id: 2, guidHash: 'abc', feedId: 2, status: 16}) + @ItemModel.add({id: 3, guidHash: 'abcd', feedId: 2, status: 16}) + @ItemModel.add({id: 1, guidHash: 'abce', feedId: 2, status: 16}) + @ItemModel.add({id: 6, guidHash: 'abcf', feedId: 2, status: 16}) + + expect(@ItemModel.getLowestId()).toBe(1)
\ No newline at end of file diff --git a/js/tests/services/persistenceSpec.coffee b/js/tests/services/persistenceSpec.coffee index b0a057d16..e42d3bb17 100644 --- a/js/tests/services/persistenceSpec.coffee +++ b/js/tests/services/persistenceSpec.coffee @@ -56,12 +56,10 @@ describe 'Persistence', -> id: 5 limit: @config.itemBatchSize offset: 3 - newestItemId: 4 onSuccess: -> @Persistence.getItems(params.data.type, params.data.id, - params.data.offset, params.data.newestItemId, - params.onSuccess) + params.data.offset, params.onSuccess) expected = onSuccess: jasmine.any(Function) @@ -71,24 +69,10 @@ describe 'Persistence', -> id: 5 limit: @config.itemBatchSize offset: 3 - newestItemId: 4 expect(@req.get).toHaveBeenCalledWith('news_items', expected) - it 'send a correct get starred items request', => - params = - onSuccess: -> - - @Persistence.getStarredItems(params.onSuccess) - - expected = - onSuccess: jasmine.any(Function) - onFailure: jasmine.any(Function) - - expect(@req.get).toHaveBeenCalledWith('news_items_starred', expected) - - it 'send a correct star item request', => params = routeParams: |