Steve Gravrock
7f392d188e
Don't leak global error handlers between Jasmine's own tests
2020-01-20 10:18:29 -08:00
Steve Gravrock
fffb8abb24
Moved property tests to the main suite
...
Property tests can only run in Node, so they were previously in another
directory that only gets run in Node. Now they're next to the related
non-property tests and marked pending in the browser. This makes it more
likely that a developer who normally only runs tests in the browser will
notice and run them.
2020-01-11 10:49:37 -08:00
Steve Gravrock
472f61ab37
Provide better diffs for object graphs that include objectContaining
...
Turns this output:
Expected $[0].foo = Object({ a: 4, b: 5 }) to equal <jasmine.objectContaining(Object({ a: 1, c: 3 }))>.
into this:
Expected $[0].foo.a = 4 to equal 1.
Expected $[0].foo.c = undefined to equal 3.
And turns this output:
Expected spy jasmineDone to have been called with:
[ ... snipped very long expected call ]
but actual calls were:
[ ... snipped very long actual call ]
Call 0:
Expected $[0] = Object({ overallStatus: 'failed', totalTime: 1, incompleteReason: undefined, order: Order({ random: true, seed: '88732', sort: Function }), failedExpectations: [ Object({ matcherName: 'toBeResolved', passed: false, message: 'Suite "a suite" ran a "toBeResolved" expectation after it finished.
Did you forget to return or await the result of expectAsync?', error: undefined, errorForStack: Error, actual: [object Promise], expected: [ ], globalErrorType: 'lateExpeztation' }) ], deprecationWarnings: [ ] }) to equal <jasmine.objectContaining(Object({ failedExpectations: [ <jasmine.objectContaining(Object({ passed: false, globalErrorType: 'lateExpectation', message: 'Suite "a suite" ran a "toBeResolved" expectation after it finished.
Did you forget to return or await the result of expectAsync?', matcherName: 'toBeResolved' }))> ] }))>.
into this:
Expected spy jasmineDone to have been called with:
[ ... snipped very long expected call ]
but actual calls were:
[ ... snipped very long actual call ]
Call 0:
Expected $[0].failedExpectations[0].globalErrorType = 'lateExpeztation' to equal 'lateExpectation'.
2019-09-28 18:03:12 -07:00
Olga Kozlova
b01d86840a
mapContaining and setContaining asymmetric matchers
2019-08-03 22:14:48 +03:00
sylhare
7fb53dcdfa
Fixing missing semi-colons
2018-02-21 09:01:24 -05:00
Gregg Van Hove
274011ed03
Merge branch 'master' into 3.0-features
2018-02-02 16:33:38 -08:00
Gregg Van Hove
91aab8e1b8
Merge branch 'Volox-ie11-sets-support'
...
- Merges #1478 from @Volox
- Fixes #1355
2018-01-12 17:33:51 -08:00
Volonterio Riccardo
486a64658f
Added complete support for Set also for IE11.
...
Fixes 1355
2018-01-12 12:18:35 +01:00
Gregg Van Hove
1dfdc89ba9
Merge branch 'ie11-maps-support' of https://github.com/Volox/jasmine into Volox-ie11-maps-support
...
- Merges #1477 from @Volox
- Fixes #1472
2018-01-11 17:50:56 -08:00
Volonterio Riccardo
085a1f8a16
Added complete support for Map also for IE11.
...
Fixes 1472
2018-01-11 18:13:24 +01:00
Steve Gravrock
b0ec95c472
Merge branch 'master' into 3.0-features
2017-11-10 10:26:14 -08:00
Steve Gravrock
419470e9df
Removed support for IE <10
...
[#150527985 ]
2017-11-08 08:30:22 -08:00
Steve Gravrock
285f06d5c4
Merge branch 'promise-matching-1314' of https://github.com/sderickson/jasmine
2017-11-02 17:18:24 -07:00
Benjamin Mularczyk
b4dfdd7a48
Fix equality computation for ES6 Sets.
2017-11-01 01:01:26 +01:00
Sébastien Cevey
fc6ee243e9
Rewrite ES6 Set and Map comparison to ignore insertion order
2017-08-02 15:22:33 +01:00
Scott Erickson
6ddf64568e
Add Promise checking to eq
...
Fixes #1314
2017-06-26 19:10:19 -07:00
rmehlinger
5ee03f02ed
Add ES6 map support to Jasmine
2017-05-01 00:12:48 -07:00
Sean Parmelee
ef3cfe7f44
skip the test when we can’t get the propertyDescriptor
2017-04-25 12:27:32 -05:00
Sean Parmelee
0d6ecbec17
iterate through keys with a regular for loop
2017-04-25 11:28:16 -05:00
Ben Christel
d5e6bf47ed
Make toEqual matcher report the difference between objects
...
- Mismatches deep within object/array structures are pinpointed with a JsonPath-like syntax.
2016-11-14 22:08:34 -08:00
Gregg Van Hove
bad9c63bf7
Properly skip Set tests in browsers that don't really support it
2016-09-27 15:36:01 -07:00
Gregg Van Hove
05097b3e42
Merge branch 'set-equality' of https://github.com/alur/jasmine into alur-set-equality
...
- Merges #1067 from @alur
2016-09-27 13:37:57 -07:00
Gregg Van Hove
ec2ae4d521
Merge branch 'custom-testers-in-asymmetric-matchers' of https://github.com/joeyparrish/jasmine into joeyparrish-custom-testers-in-asymmetric-matchers
2016-09-27 11:01:45 -07:00
Ben Christel
227b0c62a3
Make the build pass in ie8
...
- pending() throws an exception in ie8. I have not dug into the root cause.
- iframe.contentWindow.eval() isn't supported in ie8
2016-07-24 21:48:11 -07:00
Ben Christel
cb1001e6c2
De-dup test setup
...
- Move environment-specific tests for toEquals into describe blocks so the check for the environment can be shared
2016-07-21 12:26:43 -07:00
Ben Christel
a0bce8031e
Test comparison of objects from different frames
2016-07-21 12:10:37 -07:00
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
Joey Parrish
de7b7c029e
Pass custom testers to asymmetric testers
...
This allows custom equality testers to affect asymmetric matches.
This avoid suprises when combining addCustomEqualityTester with
objectContaining or arrayContaining.
Closes #1138
2016-06-23 14:33:39 -07:00
Erik Welander
927cc011d6
Added support for ES6 sets to toContain and toEqual.
2016-03-04 02:09:59 -08: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
79206ccff5
Rename j$ to jasmineUnderTest for specs
...
- Clarifies what it is for when writing tests
- No longer named the same as the `jasmine` that is injected into live
code
2015-12-03 17:23:32 -08:00
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
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
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
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
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