1.0.18 • Published 8 years ago
hola-challenge-mailfilter-utils v1.0.18
Unofficial utilities for Hola's Mail Filter Challenge
Install
npm install --save-dev hola-challenge-mailfilter-utils
Usage
const Utils = require('hola-challenge-mailfilter-utils');
Bugs, issues and features
Please mail@barkalov.ru. Widely open for pull-requests.
Utils
Generate input
input = Utils.Generate.generateInput(messagesCount, rulesCount, Utils.Generate.GenerateWord.lexic);
Generate word
word = Utils.Generate.GenerateWord.ascii(syllablesCount);
word = Utils.Generate.GenerateWord.lexic(syllablesCount);
word = Utils.Generate.GenerateWord.dense(syllablesCount, 'mexicoalabamamicrosoftobama');
Weld input
inputAB = Utils.weldInput(inputA, inputB);
Filter
Filter reference
output = Utils.filterRef(input.messages, input.rules);
Hola web API as a filter.
output = Utils.filterOnline(input.messages, input.rules);
Check
Check input
isCorrect = Utils.checkInput(input);
Check output
isCorrect = Utils.checkOutput(output);
Verify output
isEqual = Utils.verifyOutput(outputRef, output);
Benchmark with reference
Utils.benchmark(filter);
Utils.benchmark([filter0, filter1, filter2]);