WIP - add extractor, generate snippet_data
This commit is contained in:
107
node_modules/noms/test.js
generated
vendored
Normal file
107
node_modules/noms/test.js
generated
vendored
Normal file
@ -0,0 +1,107 @@
|
||||
'use strict';
|
||||
var test = require('tape');
|
||||
var noms = require('./');
|
||||
|
||||
function countObj(num) {
|
||||
var i = 20;
|
||||
return noms.obj(function(next) {
|
||||
if (++i < num) {
|
||||
this.push({
|
||||
num: i
|
||||
});
|
||||
} else {
|
||||
this.push(null);
|
||||
}
|
||||
process.nextTick(function () {
|
||||
next();
|
||||
});
|
||||
}, function (next){
|
||||
this.push({
|
||||
num: 0
|
||||
});
|
||||
i = 1;
|
||||
next(null, {num: 1});
|
||||
});
|
||||
}
|
||||
function countObjWithNext(num) {
|
||||
var i = -1;
|
||||
return noms.obj(function(next) {
|
||||
if (++i < num) {
|
||||
process.nextTick(function () {
|
||||
next(null, {
|
||||
num: i
|
||||
});
|
||||
});
|
||||
} else {
|
||||
process.nextTick(function () {
|
||||
next(null, null);
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
function dripWordAsync(string, opts) {
|
||||
// from from2's tests
|
||||
return noms(opts||{}, function(size, next) {
|
||||
if (string.length <= 0) {
|
||||
return next(null, null);
|
||||
}
|
||||
var chunk = string.slice(0, size);
|
||||
string = string.slice(size);
|
||||
process.nextTick(function () {
|
||||
next(null, chunk);
|
||||
});
|
||||
});
|
||||
}
|
||||
function dripWord(string, opts) {
|
||||
// from from2's tests
|
||||
return noms(opts||{}, function(size, next) {
|
||||
if (string.length <= 0) {
|
||||
return next(null, null);
|
||||
}
|
||||
var chunk = string.slice(0, size);
|
||||
string = string.slice(size);
|
||||
next(null, chunk);
|
||||
});
|
||||
}
|
||||
test('works', function (t) {
|
||||
t.plan(10);
|
||||
countObj(10).on('data', function (d) {
|
||||
t.ok(true, d.num);
|
||||
});
|
||||
});
|
||||
test('works with next', function (t) {
|
||||
t.plan(10);
|
||||
countObjWithNext(10).on('data', function (d) {
|
||||
t.ok(true, d.num);
|
||||
});
|
||||
});
|
||||
test('works with size 1', function (t) {
|
||||
t.plan(3);
|
||||
var stream = dripWord('abc');
|
||||
|
||||
t.equals(stream.read(1).toString(), 'a');
|
||||
t.equals(stream.read(1).toString(), 'b');
|
||||
t.equals(stream.read(1).toString(), 'c');
|
||||
|
||||
});
|
||||
test('works with size 2', function (t) {
|
||||
t.plan(3);
|
||||
dripWord('abcde', {highWaterMark: 2}).on('data', function (d) {
|
||||
t.ok(true, d.toString());
|
||||
});
|
||||
});
|
||||
test('works with size async 1', function (t) {
|
||||
t.plan(3);
|
||||
var stream = dripWordAsync('abc');
|
||||
stream.on('readable', function () {
|
||||
t.equals(stream.read(1).toString(), 'a');
|
||||
t.equals(stream.read(1).toString(), 'b');
|
||||
t.equals(stream.read(1).toString(), 'c');
|
||||
});
|
||||
});
|
||||
test('works with size async 2', function (t) {
|
||||
t.plan(3);
|
||||
dripWordAsync('abcde', {highWaterMark: 2}).on('data', function (d) {
|
||||
t.ok(true, d.toString());
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user