WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
206012
REGRESSION: (
r254222
) [ Mac Debug ] TestWebKitAPI.AsyncFunction.Promise is timing out
https://bugs.webkit.org/show_bug.cgi?id=206012
Summary
REGRESSION: ( r254222 ) [ Mac Debug ] TestWebKitAPI.AsyncFunction.Promise is ...
Truitt Savell
Reported
2020-01-09 09:00:54 PST
TestWebKitAPI.AsyncFunction.Promise Description: This API test was introduced as timing out from
https://trac.webkit.org/changeset/254222/webkit
History:
https://results.webkit.org/?suite=api-tests&test=TestWebKitAPI.AsyncFunction.Promise
Attachments
Patch
(5.25 KB, patch)
2020-01-17 10:34 PST
,
Brady Eidson
no flags
Details
Formatted Diff
Diff
Patch
(5.32 KB, patch)
2020-01-17 10:46 PST
,
Brady Eidson
no flags
Details
Formatted Diff
Diff
Patch
(5.42 KB, patch)
2020-01-17 11:22 PST
,
Brady Eidson
no flags
Details
Formatted Diff
Diff
Show Obsolete
(2)
View All
Add attachment
proposed patch, testcase, etc.
Radar WebKit Bug Importer
Comment 1
2020-01-09 09:01:26 PST
<
rdar://problem/58445164
>
Jonathan Bedard
Comment 2
2020-01-17 09:30:02 PST
This is specific to debug builds.
Brady Eidson
Comment 3
2020-01-17 10:34:19 PST
Created
attachment 388055
[details]
Patch
Brady Eidson
Comment 4
2020-01-17 10:38:51 PST
Want a review on this from a JSC guy - This forced GC pass with only 1 function call appears to work! Should I actually expect that it works?
Brady Eidson
Comment 5
2020-01-17 10:46:23 PST
Created
attachment 388059
[details]
Patch
Keith Miller
Comment 6
2020-01-17 11:07:34 PST
Comment on
attachment 388059
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=388059&action=review
r- because I think this is backwards. But maybe I'm misunderstanding the logic.
> Tools/ChangeLog:9 > + But it turns out ne copy of the function call and an API call to force a GC pass seems to be enough.
Nit: Typo, I'm not sure what the exact sentence you were trying to say was though... :P
> Tools/TestWebKitAPI/Tests/WebKitCocoa/AsyncFunction.mm:275 > + [webView _callAsyncJavaScriptFunction:functionBody withArguments:nil inWorld:_WKContentWorld.pageContentWorld completionHandler:[&] (id result, NSError *error) { > + EXPECT_NULL(result); > + EXPECT_TRUE(error != nil); > + EXPECT_TRUE([[error description] containsString:@"no longer reachable"]); > + done = true;
I think this is the opposite of what you want? I think you want to confirm that it returned an error at least once not 100% of the time.
Brady Eidson
Comment 7
2020-01-17 11:10:01 PST
(In reply to Keith Miller from
comment #6
)
> Comment on
attachment 388059
[details]
> Patch > > View in context: >
https://bugs.webkit.org/attachment.cgi?id=388059&action=review
> > r- because I think this is backwards. But maybe I'm misunderstanding the > logic. > > > Tools/ChangeLog:9 > > + But it turns out ne copy of the function call and an API call to force a GC pass seems to be enough. > > Nit: Typo, I'm not sure what the exact sentence you were trying to say was > though... :P > > > Tools/TestWebKitAPI/Tests/WebKitCocoa/AsyncFunction.mm:275 > > + [webView _callAsyncJavaScriptFunction:functionBody withArguments:nil inWorld:_WKContentWorld.pageContentWorld completionHandler:[&] (id result, NSError *error) { > > + EXPECT_NULL(result); > > + EXPECT_TRUE(error != nil); > > + EXPECT_TRUE([[error description] containsString:@"no longer reachable"]); > > + done = true; > > I think this is the opposite of what you want? I think you want to confirm > that it returned an error at least once not 100% of the time.
Actually all this does is checks that *at least one* returns an error. The promise *never* gets resolved, so the callback will never take place... UNLESS it takes place because of GC.
Keith Miller
Comment 8
2020-01-17 11:14:27 PST
> > I think this is the opposite of what you want? I think you want to confirm > > that it returned an error at least once not 100% of the time. > > Actually all this does is checks that *at least one* returns an error. > The promise *never* gets resolved, so the callback will never take place... > UNLESS it takes place because of GC.
Ah, misread the code. r=me with the nit in the ChangeLog then.
Brady Eidson
Comment 9
2020-01-17 11:22:16 PST
Created
attachment 388069
[details]
Patch
WebKit Commit Bot
Comment 10
2020-01-17 12:06:10 PST
Comment on
attachment 388069
[details]
Patch Clearing flags on attachment: 388069 Committed
r254756
: <
https://trac.webkit.org/changeset/254756
>
WebKit Commit Bot
Comment 11
2020-01-17 12:06:11 PST
All reviewed patches have been landed. Closing bug.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug