chainy/node_modules/markov/test/limit.js

30 lines
749 B
JavaScript
Raw Permalink Normal View History

2020-01-26 19:03:32 +00:00
var test = require('tape');
var markov = require('../');
var fs = require('fs');
test('limit', function (t) {
var to = setTimeout(function () {
t.fail('never finished');
}, 5000);
var m = markov(1);
var these = 'the THE tHe ThE thE The the THE The tHE the the';
m.seed(these, function () {
clearTimeout(to);
var counts = {};
for (var i = 0; i < 100; i++) {
var lim = Math.ceil(Math.random() * 10);
var res = m.respond('the', lim);
t.ok(res.length <= lim);
res.forEach(function (r) {
t.ok(these.split(' ').indexOf(r) >= 0);
counts[r] = (counts[r] || 0) + 1;
});
}
t.end();
});
});