Steve Gravrock
0690500a0d
Breaking change: Made Env#execute async
...
Errors related to invalid spec order are now reported via promise
rejection rather than synchronous throw.
2022-08-21 16:40:03 -07:00
Steve Gravrock
0bfbda720d
Breaking change: Env#execute no longer takes a callback
...
Use the returned promise instead.
2022-08-21 16:35:12 -07:00
Steve Gravrock
4fcdbd39fb
Breaking change: use addEventListener rather than setting window.onerror
...
* Generally simplifies error handling in browsers
* Makes Jasmine's own integration tests easier to debug
* Stack traces will be provided for more global errors
* ... but less error information will be provided in some browsers if the
error comes from a file:// URL (use `npx serve` or similar instead)
* Jasmine will no longer override existing onerror handlers in browsers
* Setting window.onerror will no longer override Jasmine's global error
handling (use jasmine.spyOnGlobalErrors instead)
2022-08-21 16:17:18 -07:00
Steve Gravrock
f934e6d816
Assume that addEventListener/removeEventListener are present in browsers
...
Jasmine 3.0 dropped support for the last browser that didn't support
the standard event handler methods (IE 9).
2022-08-20 10:27:44 -07:00
Steve Gravrock
79c6bbc189
clearStack optimizations
...
* Avoid setTimeout in Node, because we don't need the overhead there.
* Still call setTimeout in browsers to prevent the tab from being killed.
* Use queueMicrotask in Safari, because it's dramatically faster than
MessageChannel there.
* Continue to use MessageChannel in other supported browsers becuase it's
somewhat faster than queueMicrotask there.
* Don't use setImmediate any more because there's a faster alternative in
all supported envs.
In jasmine-core's own test suite, this yields a roughly 50-70% speedup
in Node, ~20% in Edge, and 75-90%(!) in Safari.
2022-08-15 17:50:49 -07:00
Steve Gravrock
e022e6199c
Bump version to 4.3.0
2022-07-23 10:27:19 -07:00
Steve Gravrock
140c12e8fc
Added Firefox 102 (current ESR) to CI
2022-07-23 10:17:21 -07:00
Steve Gravrock
d0e1bd96fb
README updates
...
* Removed redundancy
* Added a link to the FAQ
* Removed obsolete support channels
2022-07-01 16:58:38 -07:00
Steve Gravrock
6c56ebc984
Added jasmine.spyOnGlobalErrorsAsync
...
* Allows testing code that's expected to prodeuce global errors or
unhandled promise rejections
* Fixes #1843
* Fixes #1453
2022-06-30 18:09:56 -07:00
Steve Gravrock
d0a9931ae6
Separated reporter- and runable-specific queue runner configuration
2022-06-12 15:52:14 -07:00
Steve Gravrock
93c5f654d9
Extracted most suite-running code out of Env
2022-06-12 15:46:03 -07:00
Steve Gravrock
d8b65028a1
Pass queue runner factory to Spec#execute, not ctor
2022-06-12 12:34:46 -07:00
Steve Gravrock
d6cdc1841c
Extracted suite building out of Env
2022-06-12 09:49:01 -07:00
Steve Gravrock
72b39220e5
Runable, not runnable
2022-06-11 15:41:29 -07:00
Steve Gravrock
55dce7d119
Extracted runnable resource management out of Env
2022-06-11 15:28:37 -07:00
Steve Gravrock
789736dd02
Additional test coverage for default spy strategies
2022-06-11 15:08:02 -07:00
Steve Gravrock
c7ca3b0101
Converted integration specs to async/await
2022-06-11 13:43:44 -07:00
Steve Gravrock
96000220b1
Use arrow fns rather than self = this
2022-06-11 12:12:11 -07:00
Steve Gravrock
e2e2275d41
Removed obsolete and unused utility fns
2022-06-11 11:17:16 -07:00
Steve Gravrock
135ff20123
Replaced uses of var with const/let
2022-06-09 20:00:23 -07:00
Steve Gravrock
4af86f5398
Added supported envs to releasen notes
2022-06-09 18:25:04 -07:00
Steve Gravrock
e5e0e6481d
Bump version to 4.2.0
2022-06-09 18:18:45 -07:00
Steve Gravrock
bcf69b86b4
Removed duplicate Suite and Spec jsdocs
2022-06-03 12:22:58 -07:00
Steve Gravrock
a5f79fac81
Removed remaining jshint config comments
2022-06-02 18:22:23 -07:00
Steve Gravrock
18a00822c5
Built distribution
2022-06-02 11:37:10 -07:00
Steve Gravrock
4cc8437f79
Call buildExpectationResult directly from Suite and Spec
...
This removes quite a bit of indirection from result processing, at the
cost of making a few of the tests more awkward.
2022-06-01 10:18:23 -07:00
Steve Gravrock
8e58305b0a
ExpectationResult.js -> buildExpectationResult.js
2022-06-01 09:26:21 -07:00
Steve Gravrock
bd368aceee
Replaced var with const and let in expectation related code
2022-06-01 09:22:03 -07:00
Steve Gravrock
8f16021887
Replaced var with const and let in ExpectationResult
2022-06-01 09:02:43 -07:00
Steve Gravrock
bbb1b69b2e
More reliably report errors that occur late in the suite/spec lifecycle
...
Previously, an error that occurred after Jasmine started to report the
suiteDone or specDone event for the current runable would not be reliably
reported. Now such an error is reported on the nearest ancestor suite whose
suiteDone event has not yet been reported.
2022-05-28 18:10:55 -07:00
Steve Gravrock
9ea8a2096f
Additional integration tests for existing async error handling
2022-05-28 18:01:19 -07:00
Steve Gravrock
66340e2b19
Updated browserslist to match 4.0 envs
2022-05-28 18:00:45 -07:00
Steve Gravrock
fe29dfa89c
Update release process instructions
...
* Need to tag the release manually since the Ruby tooling for that was
removed
* Windows CI works again, so no need to manually test on Windows
2022-05-21 09:43:43 -07:00
Steve Gravrock
41f7fabe2f
Renamed jasmine.exactly to jasmine.is, for similarity with toBe
2022-05-21 08:30:53 -07:00
Steve Gravrock
856a040a2d
Fixed flaky spec
2022-05-19 16:39:48 -07:00
Steve Gravrock
f7eaa5ec29
Fixed failing CI builds for Node 12 and 14
...
See https://github.com/npm/cli/issues/4896
2022-05-16 19:53:20 -07:00
Steve Gravrock
0c87d47318
Added a jasmine.exactly asymmetric equality tester
2022-05-14 17:01:38 -07:00
Steve Gravrock
c24b2f5a73
Converted some integration specs to async/await
2022-05-14 12:05:53 -07:00
Steve Gravrock
774c83a36e
Don't report a deprecation when a runnable uses two forms of async
...
This was made into an error in 4.0, so the deprecation is redundant
(and broken).
2022-05-14 11:21:40 -07:00
Steve Gravrock
751cf6ab5b
Converted DiffBuilder, ObjectPath, MismatchTree, and SinglePrettyPrintRun to ES6 classes
2022-05-14 11:15:08 -07:00
Steve Gravrock
2fd76c954c
Replaced var with let and const in PrettyPrinter, DiffBuilder, and friends
2022-05-14 09:42:07 -07:00
Steve Gravrock
bb4d18f959
Include property getter values in pretty-printed objects
...
We already call getters when comparing objects for equality and generating
diffs, so it should be safe to do it here too.
See #1966 .
2022-05-12 17:14:13 -07:00
Steve Gravrock
68eaa64c31
Bump version to 4.1.1
2022-05-09 17:49:42 -07:00
Steve Gravrock
81f6eb45ea
Cleaned up specs for symbol property filtering
...
* Removed redundant spec
* Test the behavior of jasmineUnderTest, not the host jasmine
2022-05-09 17:11:36 -07:00
Steve Gravrock
841b212c66
Merge branch 'patch-1' of https://github.com/suke/jasmine
...
* Merges #1963 from @suke
* Excludes non-enumerable symbol properties from equality comparison
2022-05-09 16:51:47 -07:00
Steve Gravrock
9a27407d35
Folded util.objectDifference into MatchersUtil
...
This was always an implementation detail of objectKeysAreDifferentFormatter,
and didn't really do what its name suggested.
* #1966
2022-05-07 14:03:26 -07:00
Steve Gravrock
468e9577cd
Include symbol properties in matcher diffs
...
* #1966
2022-05-07 13:26:15 -07:00
Steve Gravrock
9d80377fe3
Fixed exception when comparing arrays with Symbol keys
...
* Fixes #1966
2022-05-07 10:42:29 -07:00
Steve Gravrock
270344bd38
Include symbol keys when pretty-printing objects
...
* Fixes #1966
2022-05-07 10:05:18 -07:00
suke
dfa94c70c1
toEqual does not compare symbols that cannot be enumerated
2022-04-27 10:51:03 +09:00