Files
react-native-devtools-frontend/node_modules/@sinonjs/commons/lib/every.test.js
T
Paul Lewis 40e2867bb7 [deps] Adds sinon
R=jacktfranklin@chromium.org

DISABLE_THIRD_PARTY_CHECK=Adding sinon to deps

Change-Id: If47962332a4d9a4b4f0edbe637bca4f9894545ba
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2562704
Auto-Submit: Paul Lewis <aerotwist@chromium.org>
Commit-Queue: Paul Lewis <aerotwist@chromium.org>
Commit-Queue: Jack Franklin <jacktfranklin@chromium.org>
Reviewed-by: Jack Franklin <jacktfranklin@chromium.org>
2020-11-27 10:25:34 +00:00

42 lines
1.2 KiB
JavaScript

"use strict";
var assert = require("@sinonjs/referee-sinon").assert;
var sinon = require("@sinonjs/referee-sinon").sinon;
var every = require("./every");
describe("util/core/every", function() {
it("returns true when the callback function returns true for every element in an iterable", function() {
var obj = [true, true, true, true];
var allTrue = every(obj, function(val) {
return val;
});
assert(allTrue);
});
it("returns false when the callback function returns false for any element in an iterable", function() {
var obj = [true, true, true, false];
var result = every(obj, function(val) {
return val;
});
assert.isFalse(result);
});
it("calls the given callback once for each item in an iterable until it returns false", function() {
var iterableOne = [true, true, true, true];
var iterableTwo = [true, true, false, true];
var callback = sinon.spy(function(val) {
return val;
});
every(iterableOne, callback);
assert.equals(callback.callCount, 4);
callback.resetHistory();
every(iterableTwo, callback);
assert.equals(callback.callCount, 3);
});
});