Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'spec/javascripts/pager_spec.js')
-rw-r--r--spec/javascripts/pager_spec.js162
1 files changed, 0 insertions, 162 deletions
diff --git a/spec/javascripts/pager_spec.js b/spec/javascripts/pager_spec.js
deleted file mode 100644
index c95a8400c6c..00000000000
--- a/spec/javascripts/pager_spec.js
+++ /dev/null
@@ -1,162 +0,0 @@
-import $ from 'jquery';
-import MockAdapter from 'axios-mock-adapter';
-import axios from '~/lib/utils/axios_utils';
-import Pager from '~/pager';
-
-describe('pager', () => {
- let axiosMock;
-
- beforeEach(() => {
- axiosMock = new MockAdapter(axios);
- });
-
- afterEach(() => {
- axiosMock.restore();
- });
-
- describe('init', () => {
- const originalHref = window.location.href;
-
- beforeEach(() => {
- setFixtures('<div class="content_list"></div><div class="loading"></div>');
- spyOn($.fn, 'endlessScroll').and.stub();
- });
-
- afterEach(() => {
- window.history.replaceState({}, null, originalHref);
- });
-
- it('should use data-href attribute from list element', () => {
- const href = `${gl.TEST_HOST}/some_list.json`;
- setFixtures(`<div class="content_list" data-href="${href}"></div>`);
- Pager.init();
-
- expect(Pager.url).toBe(href);
- });
-
- it('should use current url if data-href attribute not provided', () => {
- const href = `${gl.TEST_HOST}/some_list`;
- spyOnDependency(Pager, 'removeParams').and.returnValue(href);
- Pager.init();
-
- expect(Pager.url).toBe(href);
- });
-
- it('should get initial offset from query parameter', () => {
- window.history.replaceState({}, null, '?offset=100');
- Pager.init();
-
- expect(Pager.offset).toBe(100);
- });
-
- it('keeps extra query parameters from url', () => {
- window.history.replaceState({}, null, '?filter=test&offset=100');
- const href = `${gl.TEST_HOST}/some_list?filter=test`;
- const removeParams = spyOnDependency(Pager, 'removeParams').and.returnValue(href);
- Pager.init();
-
- expect(removeParams).toHaveBeenCalledWith(['limit', 'offset']);
- expect(Pager.url).toEqual(href);
- });
- });
-
- describe('getOld', () => {
- const urlRegex = /(.*)some_list(.*)$/;
-
- function mockSuccess(count = 0) {
- axiosMock.onGet(urlRegex).reply(200, {
- count,
- html: '',
- });
- }
-
- function mockError() {
- axiosMock.onGet(urlRegex).networkError();
- }
-
- beforeEach(() => {
- setFixtures(
- '<div class="content_list" data-href="/some_list"></div><div class="loading"></div>',
- );
- spyOn(axios, 'get').and.callThrough();
-
- Pager.init();
- });
-
- it('shows loader while loading next page', done => {
- mockSuccess();
-
- spyOn(Pager.loading, 'show');
- Pager.getOld();
-
- setTimeout(() => {
- expect(Pager.loading.show).toHaveBeenCalled();
-
- done();
- });
- });
-
- it('hides loader on success', done => {
- mockSuccess();
-
- spyOn(Pager.loading, 'hide');
- Pager.getOld();
-
- setTimeout(() => {
- expect(Pager.loading.hide).toHaveBeenCalled();
-
- done();
- });
- });
-
- it('hides loader on error', done => {
- mockError();
-
- spyOn(Pager.loading, 'hide');
- Pager.getOld();
-
- setTimeout(() => {
- expect(Pager.loading.hide).toHaveBeenCalled();
-
- done();
- });
- });
-
- it('sends request to url with offset and limit params', done => {
- Pager.offset = 100;
- Pager.limit = 20;
- Pager.getOld();
-
- setTimeout(() => {
- const [url, params] = axios.get.calls.argsFor(0);
-
- expect(params).toEqual({
- params: {
- limit: 20,
- offset: 100,
- },
- });
-
- expect(url).toBe('/some_list');
-
- done();
- });
- });
-
- it('disables if return count is less than limit', done => {
- Pager.offset = 0;
- Pager.limit = 20;
-
- mockSuccess(1);
- spyOn(Pager.loading, 'hide');
- Pager.getOld();
-
- setTimeout(() => {
- expect(Pager.loading.hide).toHaveBeenCalled();
- expect(Pager.disable).toBe(true);
-
- done();
- });
- });
- });
-});