This repository was archived by the owner on Apr 12, 2024. It is now read-only.
File tree Expand file tree Collapse file tree 2 files changed +22
-1
lines changed Expand file tree Collapse file tree 2 files changed +22
-1
lines changed Original file line number Diff line number Diff line change @@ -830,7 +830,9 @@ angular.module('ngResource', ['ng']).
830
830
831
831
function cancelRequest ( value ) {
832
832
promise . catch ( noop ) ;
833
- timeoutDeferred . resolve ( value ) ;
833
+ if ( timeoutDeferred !== null ) {
834
+ timeoutDeferred . resolve ( value ) ;
835
+ }
834
836
}
835
837
} ;
836
838
Original file line number Diff line number Diff line change @@ -2102,6 +2102,25 @@ describe('cancelling requests', function() {
2102
2102
2103
2103
expect ( creditCard . $cancelRequest ) . toBe ( noop ) ;
2104
2104
} ) ;
2105
+
2106
+ it ( 'should not break when calling old `$cancelRequest` after the response arrives' , function ( ) {
2107
+ $httpBackend . whenGET ( '/CreditCard' ) . respond ( { } ) ;
2108
+
2109
+ var CreditCard = $resource ( '/CreditCard' , { } , {
2110
+ get : {
2111
+ method : 'GET' ,
2112
+ cancellable : true
2113
+ }
2114
+ } ) ;
2115
+
2116
+ var creditCard = CreditCard . get ( ) ;
2117
+ var cancelRequest = creditCard . $cancelRequest ;
2118
+
2119
+ $httpBackend . flush ( ) ;
2120
+
2121
+ expect ( cancelRequest ) . not . toBe ( noop ) ;
2122
+ expect ( cancelRequest ) . not . toThrow ( ) ;
2123
+ } ) ;
2105
2124
} ) ;
2106
2125
2107
2126
describe ( 'configuring `cancellable` on the provider' , function ( ) {
You can’t perform that action at this time.
0 commit comments