als-statistics
Version:
Modular JS statistics toolkit for Node.js and the browser: descriptive stats, correlations (Pearson/Spearman/Kendall), t-tests & ANOVA (Student/Welch), reliability (Cronbach’s alpha), regression (linear/logistic), clustering (DBSCAN/HDBSCAN), and table/co
31 lines (25 loc) • 1.03 kB
JavaScript
import { describe,it } from 'node:test';
import assert from 'node:assert/strict';
import { filterKeys } from '../../lib/utils/filter-keys.js';
describe('Tests', () => {
it('filter-keys: include только', () => {
const keys = ['A','B','C','foo','bar'];
const r = filterKeys(keys, ['A','foo']);
assert.deepEqual(r, ['A','foo']);
});
it('filter-keys: exclude только', () => {
const keys = ['A','B','C'];
const r = filterKeys(keys, ['-B']);
assert.deepEqual(r, ['A','C']);
});
it('filter-keys: regex-паттерны', () => {
const keys = ['alpha','beta','ALPHA','gamma'];
const r = filterKeys(keys, [/^alp/i]); // alpha + ALPHA
assert.deepEqual(r.sort(), ['ALPHA','alpha'].sort());
});
it('filter-keys: include + exclude приоритет include, затем минус', () => {
const keys = ['A','B','C','D'];
const r = filterKeys(keys, ['A','B','-B']);
assert.deepEqual(r, ['A']);
});
})