Steve Gravrock
d092a59bd1
Treat multiple calls to done callbacks as errors
2021-09-10 18:07:35 -07:00
Steve Gravrock
15f7013f85
Merge branch '3.99' into 4.0
2021-09-08 21:04:10 -07:00
Steve Gravrock
be23836c9d
Deprecate multiple calls to done callbacks
2021-09-08 20:58:25 -07:00
Steve Gravrock
d61800c5c8
Removed support for custom promise libraries
...
All supported platforms now provide promises, so there's no longer a need
for Jasmine to be able to create them via a user-provided library. Jasmine
can still consume non-native promises but will always use the built-in
Promise object to create promises.
[#179078103 ]
2021-08-30 19:07:26 -07:00
Steve Gravrock
a63b0b0368
Merge branch '3.99' into 4.0
2021-08-30 18:44:32 -07:00
Steve Gravrock
2fd9d7b13f
Merge branch 'main' into 3.99
2021-08-17 17:08:34 -07:00
Steve Gravrock
dd8a65cb60
Better reporting of unhandled promise rejections with truthy but non-Error reasons on Node
...
[#179227413 ]
2021-08-14 14:03:03 -07:00
Steve Gravrock
e72d161fab
Return a promise from Env#execute in environments that support promises
...
[#178373231 ]
2021-08-07 13:05:55 -07:00
Steve Gravrock
4e96514634
Deprecated the Promise config setting
...
4.0 will only support environments that have native promises, so there will
no longer be a need for a user-supplied promise library
2021-08-07 12:04:14 -07:00
Steve Gravrock
d8862aa583
Removed the failFast and oneFailurePerSpec config properties
2021-07-31 09:28:14 -07:00
Steve Gravrock
2480a0a93a
Merge branch '3.99' into 4.0
2021-07-31 09:15:12 -07:00
Steve Gravrock
20b914c554
Deprecated the failFast and oneFailurePerSpec config properties
2021-07-31 08:42:01 -07:00
Steve Gravrock
058e77b824
Merge branch 'main' into 3.99
2021-07-31 08:15:29 -07:00
Steve Gravrock
dcaac62a6c
Updated deprecaton messages for Env#throwOnExpectationFailure() and Env#stopOnSpecFailure()
2021-07-31 08:02:39 -07:00
Steve Gravrock
b696bec9e3
Renamed failFast and oneFailurePerSpec config props to stopOnSpecFailure and stopSpecOnExpectationFailure
...
The new names are more self-explanatory and consistent with jasmine-npm. The
old names are deprecated but still work.
[#178682783 ]
2021-07-31 07:51:50 -07:00
Steve Gravrock
13dfcacbb0
Remove access to non-public properties of suites and specs returned by describe, it, etc.
...
[#179064612 ]
2021-07-30 17:36:50 -07:00
Steve Gravrock
6d002d22af
Merge branch '3.99' into 4.0
2021-07-29 21:46:48 -07:00
Steve Gravrock
799d9897fd
Deprecated access to non-public members in specs and suites returned from it(), describe(), etc.
2021-07-29 21:28:47 -07:00
Steve Gravrock
2a2a671b65
Don't deprecate access to Suite#id and Spec#id
2021-07-29 20:15:04 -07:00
Steve Gravrock
a0b4f3748d
Merge branch 'main' into 3.99
2021-07-29 20:09:25 -07:00
Steve Gravrock
43073b3bc5
Added API docs for Suite#id and Spec#id
...
These properties are the only way to obtain runnable IDs, without which
you can't call the form of Env#execute that takes an array of IDs.
2021-07-29 19:32:15 -07:00
Steve Gravrock
09d2ce9bc9
Removed more code that supported browsers we no longer run on
2021-07-27 17:53:09 -07:00
Steve Gravrock
0720c88252
Merge branch '3.99' into 4.0
2021-07-26 18:20:24 -07:00
Steve Gravrock
1206952ca6
Merge branch 'main' into 3.99
2021-07-26 18:19:11 -07:00
Steve Gravrock
286524959b
Split boot.js in two to allow the env to be configured in between
...
This is mainly intended to support jasmine-browser-runner, which will load
a script that configures the env in between the two boot files (boot0.js and
boot1.js). The single-file boot.js is retained for now but will be removed
in a future release.
2021-07-26 18:05:36 -07:00
Steve Gravrock
c73df57720
MatchersUtil#contains uses deep equality rather than === for set members
...
[#169001712 ]
2021-07-24 14:23:05 -07:00
Steve Gravrock
0170005015
Treat any argument to the done callback as an error
...
This reduces the risk of incorrectly passing a spec due to not correctly
detecting that an argument is an `Error` instance. Detecting Error instances
in a way that's reliable and portable across different browsers, TrustedTypes,
and frames is difficult.
[Finishes #178267587 ]
2021-07-24 09:30:39 -07:00
Steve Gravrock
6f04044417
Merge branch '3.99' into 4.0
2021-07-24 09:25:19 -07:00
Steve Gravrock
70d49e5b57
Deprecate non-Error arguments passed to done()
...
[Finishes #178267600 ]
2021-07-24 09:18:24 -07:00
Steve Gravrock
fe0a83ba87
Removed support for Internet Explorer
2021-07-23 21:46:15 -07:00
Steve Gravrock
a27280e9e7
Merge branch '3.99' into 4.0
2021-07-20 17:55:18 -07:00
Steve Gravrock
10601f5af6
Merge branch 'main' into 3.99
2021-07-20 17:47:17 -07:00
Steve Gravrock
c10ab4e704
Updated deprecation links
2021-07-20 16:50:31 -07:00
Steve Gravrock
c1d1d69be2
Fixed test failures in Chrome and Edge
2021-07-19 12:08:40 -07:00
Steve Gravrock
21bfbbb721
Merge branch 'iserror-tt' of https://github.com/bjarkler/jasmine into main
...
* Fixes Trusted Types error in Chromium-based browsers
* Merges #1921 from @bjarkler
* Fixes #1910
2021-07-19 12:06:12 -07:00
Steve Gravrock
9b3d4a2bf2
Merge branch '3.99' into 4.0
2021-07-10 09:13:28 -07:00
Steve Gravrock
6cb9507f62
Merge branch 'main' into 3.99
2021-07-10 08:58:14 -07:00
Steve Gravrock
50c88e7774
Mark Env#hideDisabled deprecated in jsdocs
2021-07-08 18:53:21 -07:00
Bjarki
dc80a282ba
Make j$.isError_ compatible with Trusted Types
...
The isError_ check uses a heuristic that calls the Function constructor
to determine if the given value is an Error object. This results in a
runtime violation in test suites that enforce Trusted Types.
Since Trusted Types are only supported in modern browsers (currently,
Chromium-based browsers), we can use a more straightforward heuristic in
environments where Trusted Types are supported.
Fixes #1910 . See that thread for more details.
2021-07-01 20:21:44 +00:00
Steve Gravrock
dbc1a0aa56
Added expectAsync(...).already
...
* Causes async matchers to immediately fail if the promise is pending
* Fixes #1845
2021-06-23 20:13:01 -07:00
Steve Gravrock
5862b22aef
Include rejection details in failure messages for toBeResolved and toBeResolvedWith
...
[#178559119 ]
2021-06-21 16:43:51 -07:00
Steve Gravrock
163f93d6ff
Removed constructors from jsdocs of classes that aren't user-constructable
2021-06-21 14:19:31 -07:00
Steve Gravrock
1893bf6c16
Added jsdocs for asymmetric equality testers
2021-06-21 14:09:14 -07:00
Steve Gravrock
a0f6b77c3e
Remove access to non-public Suite and Spec members via Env#topSuite
2021-05-29 18:57:56 -07:00
Steve Gravrock
3f3fb38cf1
Merge branch '3.99' into 4.0
2021-05-29 18:42:31 -07:00
Steve Gravrock
00c1e3d608
Deprecate access to non-public Suite and Spec members via Env#topSuite
...
The deprecation warning relies on Proxy, and won't work in environments
that don't have it. Among Jasmine's supported environments, that's Safari 9,
Safari 8, and all versions of IE.
2021-05-29 15:45:10 -07:00
Steve Gravrock
6a2a30d540
Improved & unified deprecation handling
...
* De-duplication now happens in core, not in reporters. This ensures that
the console doesn't get flooded.
* Stack traces are opt-out, not opt-in.
* The current runnable is not reported or logged for certain deprecations
where it's irrelevant.
* HtmlReporter shows stack traces in expandable widgets.
* Env#deprecated and Env#deprecatedOnceWithStack are merged.
2021-05-29 15:39:28 -07:00
Steve Gravrock
5f4a1c4276
Merge branch 'issue/1897' of https://github.com/Dari-K/jasmine into main
...
* Adds option for spyOnAllFunctions to include non-enumerable props
* Merges #1909 from @Dari-k
* Fixes #1897
2021-05-26 17:44:54 -07:00
Darius Keeley
a4ef3687ee
Add optional param to spyOnAllFunctions to include non-enumerable properties
2021-05-25 11:37:24 +01:00
Steve Gravrock
e4e232864d
Don't expose Suite objects as this of describe functions
...
This was a holdover from 1.x that should have been removed in 2.0,
but was missed. Suite is meant to be private, and almost none of
its methods can be safely called by user code.
2021-05-22 09:15:22 -07:00