UNPKG

als-statistics

Version:

A powerful and lightweight JavaScript library for descriptive statistics, regression, clustering, outlier detection, and noise analysis using a flexible table/column architecture.

30 lines (25 loc) 1.22 kB
const { describe, it } = require('node:test'); const assert = require('node:assert'); const BaseColumn = require('../../lib/column/base'); const ColumnFilter = require('../../lib/table/filter'); describe('BaseColumn - New Features', () => { it('should count values with filter applied', () => { const filter = new ColumnFilter(); filter.filterRows([1, 3]); // Фильтруем индексы 1 и 3 const column = new BaseColumn([10, 20, 30, 40, 50], filter); const count = column.count((x) => x > 15, true); assert.deepStrictEqual(count, [30, 50]); // 20 и 40 отфильтрованы }); it('should count all values when filtered=false', () => { const filter = new ColumnFilter(); filter.filterRows([1, 3]); const column = new BaseColumn([10, 20, 30, 40, 50], filter); const count = column.count((x) => x > 15, false); assert.deepStrictEqual(count, [20, 30, 40, 50]); }); it('should return empty array when no values match', () => { const column = new BaseColumn([10, 20, 30], null); const count = column.count((x) => x > 50); assert.deepStrictEqual(count, []); }); });