Ben Christel
738c10fd43
Make toEqual pass for arrays with equivalent properties
...
- Fixes a bug caused by accidental use of a closure variable
2016-07-18 16:48:00 -07:00
slackersoft
954a6a0091
Merge branch 'feat/improveErrorMessages' of https://github.com/dhoko/jasmine into dhoko-feat/improveErrorMessages
...
- Merges #1026 from @dhoko
- Fixes #1025
2016-03-18 10:59:31 -07:00
dhoko
14067d0785
Improve errors with the domaine and how to use the API
2016-02-29 10:33:45 +01:00
Gregg Van Hove
5458f2f18d
Array equality treats undefined elements as equal however they got in there
...
- Fixes #786
2016-02-22 11:06:59 -08:00
Gregg Van Hove
7224c6adf2
Merge branch 'fix-eq-for-edge' of https://github.com/everedifice/jasmine into everedifice-fix-eq-for-edge
...
- Merges #1041
2016-02-18 16:48:33 -08:00
Patrizio Rullo
b7d8b0de71
Add toBeGreatThanOrEqual and toBeLessThanOrEqual matchers
...
- Implements issue #1013
2016-02-18 00:13:26 +01:00
Kevin Logan
e5c744f3dc
#1015 use isNumber fuction to check for empty expected argument. This will allow 0 to be passed in.
2016-02-17 12:03:06 -06:00
minhyeong-kim
3f27ff1c7c
chore: fix jshint error
2016-02-04 17:47:17 +09:00
minhyeong-kim
b59cacf131
refactor: fix Edge freezing issue for matcherUtils#eq
...
fix Microsoft Edge freezing when recursive comparing
2016-02-04 17:09:03 +09:00
Richard Harrington
c2ae3b6b12
Remove unused parameter from toThrowError
2015-10-26 11:43:31 -04:00
Kevin
a6a1962924
add toHaveBeenCalledTimes matcher
...
Fix #853
2015-06-05 21:07:24 -07:00
Gregg Van Hove
ff029b37b5
Use instanceof when checking Error types in toThrowError
...
Fixes #819
2015-04-09 15:38:24 -07:00
Greg Cobb and Gregg Van Hove
f22862fd80
Merge branch 'juliemr-arrayfix'
...
Fixes #765
2015-02-04 09:38:45 -08:00
Julie Ralph
53b0752ff0
Allow arrays from different frames or contexts to be equal
2015-02-04 09:28:04 -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
6bd98cb2ab
Rename jasmineMatches to asymmetricMatch
...
- This should be more clear what it is for
[finish #82295210 ]
2014-12-16 16:47:31 -08:00
slackersoft
7570bc422b
Display the name of the constructor when pretty printing objects
...
Fixes #598 [finishes #81228592 ]
2014-12-16 12:56:04 -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
slackersoft
b68ba90ad7
Just return the result directly from any and objectContaining
...
- They return false when they fail which means not equal.
2014-12-02 07:56:40 -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
Robin Böhm
31d71ac22f
add single quote check to jshint and fix src files for that
...
[fixes #522 ]
2014-02-24 16:28:16 -08: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
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
Davis W. Frank
9e149d1e0f
Move node dev deps forward, add .jshintrc to support latest grunt-contrib-jshint and Code Climate score
2013-10-25 12:23:57 -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
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
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
Sheel Choksi
04ac41d911
Fix phantomjs by using fnNameFor
...
Phantomjs's execptions toString include a ': ' at the end, so instead
use the exception's name property
2013-07-21 15:34:44 -07:00
JR Boyens
03ffe5ce6a
DRY up some sopping wet code
2013-07-19 18:51:05 -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 and Sheel Choksi
2916a8a1ff
Cleaning up explicit dependencies
2013-07-01 15:56:29 -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
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