Julie Ralph
53b0752ff0
Allow arrays from different frames or contexts to be equal
2015-02-04 09:28:04 -08:00
Gregg Van Hove
a999490de9
Merge branch 'arrayContaining' of https://github.com/slackersoft/jasmine into slackersoft-arrayContaining
...
Merge #440 [Finish #59947350 ]
2015-01-12 14:01:02 -08:00
slackersoft
895c17e5c1
Merge branch 'rohit-equals-null-protoObjects'
2014-12-20 16:48:26 -08:00
Rohit Arondekar
a84eaf2cbe
Allow null prototype obj to be compared for equals
...
Fixes #729
2014-12-20 08:35:27 +05:30
slackersoft
bfcd8b046d
Allow asymmetric equality testers to preempt their symmetric brethren
...
- Also allow them to be compared to each other properly.
Fixes #540
2014-12-16 17:45:58 -08:00
slackersoft
2ab22951a1
Just check if either side implements asymmetricMatch
...
- Don't explicitly look for `Any` or `ObjectContaining`
[#82295210 ]
2014-12-16 17:29:18 -08:00
slackersoft
ea88023553
Check for ObjectContaining on either side of equality.
...
- Also clean up `undefined` check.
Fixes #682
2014-12-16 17:07:35 -08:00
slackersoft
305252f5a8
toMatch requires the expected to be a String or RegExp
...
- Otherwise it was using the `toString` as the RegExp, which is almost
definitely _not_ what you want.
Fixes #723
2014-12-16 11:50:45 -08:00
slackersoft
0fdb28c6ff
Merge branch 'toEqualDomNodes' of https://github.com/alexeibs/jasmine into alexeibs-toEqualDomNodes
2014-12-16 11:25:14 -08:00
slackersoft
a84202a6f9
Also check custom properties on Arrays when computing equality
...
[Finishes #50616649 ]
2014-12-16 10:22:23 -08:00
Charles Hansen
da6813ef0d
toContain works with array-like objects (Arguments, HTMLCollections, etc)
...
Fixes #699
Don't rely on Array.prototype.indexOf for testing containment (not in IE8)
2014-11-03 13:09:57 -08:00
slackersoft
a4d134521a
Revert "toContain works with array-like objects (Arguments, HTMLCollections, etc)"
...
IE 8 doesn't have Array.prototype.indexOf so this breaks there.
Reverting until we can figure out a better way to solve across all
supported browsers.
This reverts commit 663fbd0cdb .
2014-11-01 14:28:32 -07:00
Charles Hansen
663fbd0cdb
toContain works with array-like objects (Arguments, HTMLCollections, etc)
...
Fix #699
2014-10-30 13:08:16 -07:00
slackersoft
345903220c
Refactor toThrowError to be less one huge if/else if/else if block
...
- This should also improve it's code climate score as well.
- It's also about 20 lines shorter now too :)
[#59524164 ]
2014-09-07 16:02:42 -07:00
Alexei Bykov
ac8ef2988d
add better support of DOM nodes into equality matcher
2014-08-24 17:07:18 +04:00
slackersoft
a1c109ea17
Contains is explicitly false if actual is undefined or null
...
Fix #627
2014-07-18 13:18:22 -07:00
Sheel Choksi
00c8e37257
Pass through custom equality testers in toHaveBeenCalledWith [ fixes #536 ]
2014-03-26 22:19:03 -07:00
Sheel Choksi
76ca5ef6d4
Allow matcher custom failure messages to be a function
...
By deferring the evaluation of these messages, we can avoid the
expensive creation of them when in the majority use case (tests are
passing) they are not needed.
These failure messages were causing performance problems with larger
objects needed to be pretty printed as discussed in #520 and brought up
by @rdy.
[fixes #65925900 ][fixes #520 ]
2014-02-18 20:05:30 -08:00
Sheel Choksi
46d2c43da1
Revert "Use default failure message for toBeNaN"
...
Forgot that NaN has special casing that it needs a custom error message
for
This reverts commit b6c03a34e7 .
2014-02-18 19:14:16 -08:00
Sheel Choksi
b6c03a34e7
Use default failure message for toBeNaN
...
It is providing the same functionality by default without a custom error message
2014-02-17 22:45:54 -08:00
Sheel Choksi
9c7ba43ebd
Clean up a bunch of spec global variable leaks
...
Also some formatting changes to highlight when using one 'var' with comma operator
2014-01-18 14:17:14 -08:00
August Toman-Yih and Sheel Choksi
ea888e4c03
Fix triple/tripple spelling error
2013-10-30 17:30:25 -07:00
Josh Soref
c7e3ca6c8a
Spelling: Fix spelling errors
...
* equal
* existence
* expectation
* expected
* intend
* message
* report
* singular
2013-10-30 20:12:05 -04:00
Kyriacos Souroullas and Sheel Choksi
e346e7dcc1
Revert removal of compare nesting
...
Since we want the user to be able to pass a negative comparison function, the extra layer of wrapping is now needed
2013-10-28 17:13:09 -07:00
Sheel Choksi
d0aff9ed02
Use toThrowError instead of toThrow in places where we are expecting an error
2013-10-24 12:15:17 -07:00
Sheel Choksi
39d7ebf28e
Remove an extra layer of wrapping for matchers/custom matchers
...
Helps reduce how nested custom matchers have to be for users as well as
Jasmine internal matchers
[#59161378 ]
2013-10-20 22:21:56 -07:00
slackersoft
b5b77b318a
Argument matcher for an array containing at least the specified entries
2013-10-03 18:21:47 -07:00
Gregg Van Hove and Tim Jarratt
7e071547f5
Custom matchers fail to behave as expected
...
If they return false, that should be respected.
Submitted via @tjgrathwell
[Finish #58184156 ]
close #434
2013-10-03 15:13:27 -07:00
Gregg Van Hove and Tim Jarratt
1c19b8e38a
Move spec files back out of spec/javascripts
...
- Jasmine gem allows us to specify a path to jasmine.yml via ENV
[finish #58126010 ]
2013-10-02 16:32:35 -07:00
Gregg Van Hove and Rajan Agaskar
5017d1a4f1
Make rake jasmine:ci run specs correctly.
...
- Will replace rake core_specs.
- Remove obsolete dependencies & files -- most of these were for build tasks we
are no longer using. Notably, rspec and spec_helper were deleted.
2013-09-25 10:11:02 -07:00
Sheel Choksi
4bff199c2a
Rename a spy's callReturn and callThrow
...
.and.callReturn is now .and.returnValue
.and.callThrow is now .and.throwError
[finishes #56281634 ]
2013-09-06 21:55:14 -07:00
Sheel Choksi
5ba6e51e1c
Restore custom failure messages for toHaveBeenCalledWith
...
As pointed out by @tjgrathwell
2013-08-26 23:24:43 -07:00
Davis W. Frank & Sheel Choksi
3847557bbc
Squashed spy refactor and new spy syntax
...
Jasmine spies now have a 'and' property which allows the user to
change the spy's execution strategy-- such as '.and.callReturn(4)'
and a 'calls' property which allows inspection of the calls a spy
has received.
* This is a breaking change *
There is a CallTracker that keeps track of all calls and arguments
and a SpyStrategy which determines what the spy should do when it
is called.
2013-07-22 14:29:52 -07:00
Colin O'Byrne and JR Boyens
18c30566bd
Move from global to Env
2013-07-22 14:29:52 -07:00
Colin O'Byrne and JR Boyens
f2306729cd
Improve isIE check to allow us to check for a minimum version
2013-07-22 14:22:38 -07:00
Greg Cobb and JR Boyens
8c1881053c
Resolve remaining test issues
2013-07-22 11:57:47 -07:00
JR Boyens
990cc41f45
Remove debugger statement
2013-07-19 18:55:07 -07:00
Greg Cobb and JR Boyens
1b0b4f22a0
Fix IE10
2013-07-19 17:34:04 -07:00
Sheel Choksi
c91df21a96
Detailed error messages in toThrow/toThrowError
...
- included what was thrown for failure messages in toThrow and toThrowError
- fixed typo from 'execption' to 'exception' in toThrowError failure messages
- clarified failure messages in toThrowError to include specific error types
[Fixes #52680709 ]
2013-07-12 23:24:50 -07:00
Davis W. Frank
7ae3fa9fef
Fixed some specs that were not referring to the correct instance of Jasmine
2013-06-10 22:45:04 -07:00
Sheel Choksi
600be098af
Fix up my refactoring mistake in toThrowError
...
strengthen the associated tests to protect against it in the future
2013-06-04 19:49:11 -07:00
Sheel Choksi
7055d95584
Avoid instantiating passed in errorType in toThrowError
...
since the passed in errorType could be a custom user function,
we instead detect if its an instanceof Error by using a Surrogate
(inspired by Backbone's use of surrogacy)
2013-06-03 21:05:27 -07:00
Davis W. Frank
fbb9f53524
Fixing red build. Not sure why, but this spec was green in Chrome and Node.js
2013-06-03 10:31:52 -07:00
Davis W. Frank
0ac497db6b
Simplifying toThrow:
...
- It still supports no expected, which means that something was thrown
- Expected value is now tested via equality in order to pass
Adding toThrowError:
- toThrowError() passes if an Error type was thrown
- toThrowError(String) & toThrowError(RegExp) compare Expected to the Error message
- toThrowError(Error constructor) compares Expected to the constructor of what was thrown
- toThrowError(Error constructor, String) & toThrowError(Error constructor, RegExp) compares both the Error and the message
Also, equality now handles Errors, enforcing the message as part of the equality.
2013-06-03 09:24:43 -07:00
Davis W. Frank
d53002c63a
Matchers & Matchers specs now broken up into individual files. There is now a requireMatchers jasmineRequire function to attach matchers properly.
2013-06-02 22:22:25 -07:00