mirror of
https://github.com/thangisme/notes.git
synced 2024-11-17 14:55:55 -05:00
45 lines
1.2 KiB
JavaScript
45 lines
1.2 KiB
JavaScript
|
/* eslint-disable max-nested-callbacks */
|
||
|
|
||
|
import {
|
||
|
expect
|
||
|
} from 'chai';
|
||
|
import calculateCellHeight from './../src/calculateCellHeight';
|
||
|
|
||
|
describe('calculateCellHeight', () => {
|
||
|
describe('value', () => {
|
||
|
context('is not a string', () => {
|
||
|
it('throws an error', () => {
|
||
|
expect(() => {
|
||
|
calculateCellHeight(null);
|
||
|
}).to.throw(Error, 'Value must be a string.');
|
||
|
});
|
||
|
});
|
||
|
});
|
||
|
describe('context width', () => {
|
||
|
context('is not an integer', () => {
|
||
|
it('throws an error', () => {
|
||
|
expect(() => {
|
||
|
calculateCellHeight('foo', null);
|
||
|
}).to.throw(Error, 'Column width must be an integer.');
|
||
|
});
|
||
|
});
|
||
|
context('is 0', () => {
|
||
|
it('throws an error', () => {
|
||
|
expect(() => {
|
||
|
calculateCellHeight('foo', 0);
|
||
|
}).to.throw(Error, 'Column width must be greater than 0.');
|
||
|
});
|
||
|
});
|
||
|
context('is lesser than the column width', () => {
|
||
|
it('has height 1', () => {
|
||
|
expect(calculateCellHeight('foo', 10)).to.equal(1);
|
||
|
});
|
||
|
});
|
||
|
context('is 2 and half times greater than the column width', () => {
|
||
|
it('has height 3', () => {
|
||
|
expect(calculateCellHeight('aabbc', 2)).to.equal(3);
|
||
|
});
|
||
|
});
|
||
|
});
|
||
|
});
|