Updated arrayContaining to require actual values to be arrays

If the actual value of a test was a string, this was matching against arrays
that contained the strings. This was due to the use of the contains matcher,
which against string looks for substrings, when it was intended to look for
array elements.
This commit is contained in:
David Diederich
2019-08-30 01:09:53 -04:00
parent 008b80adc5
commit 0bd636b5d2
2 changed files with 13 additions and 0 deletions

View File

@@ -31,6 +31,12 @@ describe("ArrayContaining", function() {
expect(containing.asymmetricMatch(["bar"])).toBe(false);
});
it("does not match when the actual is not an array", function() {
var containing = new jasmineUnderTest.ArrayContaining(["foo"]);
expect(containing.asymmetricMatch("foo")).toBe(false);
});
it("jasmineToStrings itself", function() {
var containing = new jasmineUnderTest.ArrayContaining([]);