Merge branch 'arrayContaining-actuals-must-be-arrays' of https://github.com/divido/jasmine

* Merges #1746 from @divido
* Fixes #1745
This commit is contained in:
Steve Gravrock
2019-08-30 13:11:21 -07:00
3 changed files with 20 additions and 0 deletions

View File

@@ -8,6 +8,13 @@ getJasmineRequireObj().ArrayContaining = function(j$) {
throw new Error('You must provide an array to arrayContaining, not ' + j$.pp(this.sample) + '.');
}
// If the actual parameter is not an array, we can fail immediately, since it couldn't
// possibly be an "array containing" anything. However, we also want an empty sample
// array to match anything, so we need to double-check we aren't in that case
if (!j$.isArray_(other) && this.sample.length > 0) {
return false;
}
for (var i = 0; i < this.sample.length; i++) {
var item = this.sample[i];
if (!j$.matchersUtil.contains(other, item, customTesters)) {