blob: 3d68e1e5076c0d5eba2126112efc34ec0405f3f6 [file] [log] [blame]
var test = require("tap").test
var some = require("../some.js")
test("some() doesn't find anything asynchronously", function (t) {
some(["a", "b", "c", "d", "e", "f", "g"], predicate, function (error, match) {
t.ifError(error, "ran successfully")
t.notOk(match, "nothing to find, so nothing found")
t.end()
})
function predicate(value, cb) {
// dezalgo ensures it's safe to not do this, but just in case
setTimeout(function () { cb(null, value > "j" && value) })
}
})
test("some() doesn't find anything synchronously", function (t) {
some(["a", "b", "c", "d", "e", "f", "g"], predicate, function (error, match) {
t.ifError(error, "ran successfully")
t.notOk(match, "nothing to find, so nothing found")
t.end()
})
function predicate(value, cb) {
cb(null, value > "j" && value)
}
})
test("some() doesn't find anything asynchronously", function (t) {
some(["a", "b", "c", "d", "e", "f", "g"], predicate, function (error, match) {
t.ifError(error, "ran successfully")
t.equals(match, "d", "found expected element")
t.end()
})
function predicate(value, cb) {
setTimeout(function () { cb(null, value > "c" && value) })
}
})
test("some() doesn't find anything synchronously", function (t) {
some(["a", "b", "c", "d", "e", "f", "g"], predicate, function (error, match) {
t.ifError(error, "ran successfully")
t.equals(match, "d", "found expected")
t.end()
})
function predicate(value, cb) {
cb(null, value > "c" && value)
}
})