From 52c87bc8b3fcdae933b62c1ae665c0249e558e7a Mon Sep 17 00:00:00 2001 From: tisilent Date: Thu, 24 Aug 2023 14:46:30 +0800 Subject: [PATCH] Add tests for computeVarinatOffset --- .../renderer/shared/RendererUtils.test.ts | 45 +++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 src/browser/renderer/shared/RendererUtils.test.ts diff --git a/src/browser/renderer/shared/RendererUtils.test.ts b/src/browser/renderer/shared/RendererUtils.test.ts new file mode 100644 index 00000000..e933af52 --- /dev/null +++ b/src/browser/renderer/shared/RendererUtils.test.ts @@ -0,0 +1,45 @@ +import { computeVarinatOffset } from 'browser/renderer/shared/RendererUtils'; +import { assert } from 'chai'; + +describe('RendererUtils', () => { + it('computeVarinatOffset', () => { + const cellWidth = 11; + const doubleCellWidth = 22; + let line = 1; + let varinatOffset = 0; + + // should line 1 + // =,_,=_,=_, + let cells = [cellWidth, cellWidth, doubleCellWidth, doubleCellWidth]; + let result = [1, 0, 0, 0]; + for (let index = 0; index < cells.length; index++) { + const cell = cells[index]; + varinatOffset = computeVarinatOffset(cell, line, varinatOffset); + assert.equal(varinatOffset, result[index]); + } + + // should line 2 + // ==__==__==_,_==__==__==,__==__==__==__==__==__,==__==__==__==__==__==, + line = 2; + varinatOffset = 0; + cells = [cellWidth, cellWidth, doubleCellWidth, doubleCellWidth]; + result = [3, 2, 0 ,2]; + for (let index = 0; index < cells.length; index++) { + const cell = cells[index]; + varinatOffset = computeVarinatOffset(cell, line, varinatOffset); + assert.equal(varinatOffset, result[index]); + } + + // should line 3 + // ===___===__,_===___===_,__===___===___===___==,=___===___===___===___, + line = 3; + varinatOffset = 0; + cells = [cellWidth, cellWidth, doubleCellWidth, doubleCellWidth]; + result = [5, 4, 2, 0]; + for (let index = 0; index < cells.length; index++) { + const cell = cells[index]; + varinatOffset = computeVarinatOffset(cell, line, varinatOffset); + assert.equal(varinatOffset, result[index]); + } + }); +});