UNPKG

to-grid

Version:

generate an array of elements split into groups in specified layout

58 lines (47 loc) 1.55 kB
const expect = require('chai').expect; const index = require('../dist/index.js'); const { Order, default: toGrid } = index; describe('number of columns to be one', () => { const arr = [1, 2, 3]; const numOfColumns = 1; it("N ordering without dataSource", () => { const result = toGrid([], numOfColumns, Order.N); expect(result).to.eql([]); }); it('N ordering with dataSource', () => { const result = toGrid(arr, numOfColumns, Order.N); expect(result).to.eql([ [1], [2], [3] ]); }); it("Z ordering without dataSource", () => { const result = toGrid([], numOfColumns, Order.Z); expect(result).to.eql([]); }); it("Z ordering with dataSource", () => { const result = toGrid(arr, numOfColumns, Order.Z); expect(result).to.eql([[1], [2], [3]]); }); }); describe('number of columns to be more than one', () => { const arr = [1, 2, 3, 4, 5, 6, 7]; const numOfColumns = 3; it("N ordering without dataSource", () => { const result = toGrid([], numOfColumns, Order.N); expect(result).to.eql([]); }); it("N ordering with dataSource", () => { const result = toGrid(arr, numOfColumns, Order.N); expect(result).to.eql([[1, 4, 7], [2, 5], [3, 6]]); }); it("Z ordering without dataSource", () => { const result = toGrid([], numOfColumns, Order.Z); expect(result).to.eql([]); }); it("Z ordering with dataSource", () => { const result = toGrid(arr, numOfColumns, Order.Z); expect(result).to.eql([[1, 2, 3], [4, 5, 6], [7]]); }); });