@@ -218,6 +218,7 @@ export function isPromisesArrayResolved(node: TSESTree.Node): boolean {
218218 * - it's returned from a function
219219 * - has `resolves` or `rejects` jest methods
220220 * - has `toResolve` or `toReject` jest-extended matchers
221+ * - has a jasmine async matcher
221222 */
222223export function isPromiseHandled ( nodeIdentifier : TSESTree . Identifier ) : boolean {
223224 const closestCallExpressionNode = findClosestCallExpressionNode (
@@ -241,7 +242,7 @@ export function isPromiseHandled(nodeIdentifier: TSESTree.Identifier): boolean {
241242 isReturnStatement ( node . parent )
242243 )
243244 return true ;
244- if ( hasClosestExpectResolvesRejects ( node . parent ) ) return true ;
245+ if ( hasClosestExpectHandlesPromise ( node . parent ) ) return true ;
245246 if ( hasChainedThen ( node ) ) return true ;
246247 if ( isPromisesArrayResolved ( node ) ) return true ;
247248 } ) ;
@@ -521,25 +522,34 @@ export function getAssertNodeInfo(
521522}
522523
523524const matcherNamesHandlePromise = [
525+ // jest matchers
524526 'resolves' ,
525527 'rejects' ,
528+ // jest-extended matchers
526529 'toResolve' ,
527530 'toReject' ,
531+ // jasmine matchers
532+ 'toBeRejected' ,
533+ 'toBeRejectedWith' ,
534+ 'toBeRejectedWithError' ,
535+ 'toBePending' ,
536+ 'toBeResolved' ,
537+ 'toBeResolvedTo' ,
528538] ;
529539
530540/**
531- * Determines whether a node belongs to an async assertion
532- * fulfilled by `resolves` or `rejects` properties or
533- * by `toResolve` or `toReject` jest-extended matchers
534- *
541+ * Determines whether a node belongs to an async assertion that is fulfilled by:
542+ * - `resolves` or `rejects` properties
543+ * - `toResolve` or `toReject` jest-extended matchers
544+ * - jasmine async matchers
535545 */
536- export function hasClosestExpectResolvesRejects ( node : TSESTree . Node ) : boolean {
546+ export function hasClosestExpectHandlesPromise ( node : TSESTree . Node ) : boolean {
537547 if (
538548 isCallExpression ( node ) &&
539549 ASTUtils . isIdentifier ( node . callee ) &&
540550 node . parent &&
541551 isMemberExpression ( node . parent ) &&
542- node . callee . name === 'expect'
552+ [ 'expect' , 'expectAsync' ] . includes ( node . callee . name )
543553 ) {
544554 const expectMatcher = node . parent . property ;
545555 return (
@@ -552,7 +562,7 @@ export function hasClosestExpectResolvesRejects(node: TSESTree.Node): boolean {
552562 return false ;
553563 }
554564
555- return hasClosestExpectResolvesRejects ( node . parent ) ;
565+ return hasClosestExpectHandlesPromise ( node . parent ) ;
556566}
557567
558568/**
0 commit comments