Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 'use strict';
- let expect = require('chai').expect;
- let assert = require('chai').assert;
- let should = require('chai').should();
- let sinon = require('sinon');
- describe('paging', () => {
- context('correct logic', () => {
- it('should try to save cache only once', () => {
- let cache = require('../lib/cache');
- let paging = require('../lib/paging');
- let cacheMock = sinon.mock(cache);
- cacheMock.expects('put').withArgs('paging').once();
- let result = paging(100, 10, 3, cache);
- cacheMock.verify();
- });
- it('should return correct values on page 1', () => {
- let cache = {
- put: sinon.fake.returns(true),
- has: sinon.fake.returns(false)
- }
- let paging = require('../lib/paging');
- let result = paging(100, 10, 3, cache);
- expect(result).to.be.an('array');
- let labels = result.map((item) => {
- return item.label;
- });
- expect(labels).to.have.ordered.members([1,2,3,4,9,10]);
- });
- it('should call logger', () => {
- let cache = require('../lib/cache');
- let paging = require('../lib/paging');
- sinon.stub(cache,'put').returns(true);
- sinon.stub(cache,'has').withArgs('paging').returns(false);
- let result = paging(100, 10, 3, cache);
- expect(cache.put.called).to.be.equal(true);
- sinon.restore();
- });
- });
- })
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement