fix(web): enhances integrated test stability#9718
Conversation
User Test ResultsTest specification and instructions User tests are not required Test Artifacts
|
|
You need to update your master branch locally... iOS builds failing due to expired certificate. |
|
Can you add a link to a build which failed before this fix? |
That would take some hunting. It's something I've sporadically seen in the past, but I don't remember seeing it within the past week. If you want me to spend that time, I can... but I figure it's effort best spent elsewhere at this point. |
I'd appreciate it because right now I don't know what this is fixing. |
I don't see anything recent enough in any of the listed TC logs. I know I've seen something about this in the past, but apparently it's too far back. |
mcdurdin
left a comment
There was a problem hiding this comment.
LGTM? It's a little hard to be clear on the exact sequence of events and the complex web of event handlers but it's basically a race condition, yeah?
|
Changes in this pull request will be available for download in Keyman version 17.0.196-alpha |
This corresponds to an occasionally-seen test failure error from the build logs in which we'd get an error corresponding to this block of code:
keyman/web/src/app/browser/src/contextManager.ts
Lines 533 to 536 in f5b28aa
The error would match line 533, stating an inability to read the
keyboardfield due to_kmwAttachmentbeing null / undefined.The actual trigger:
keyman/web/src/app/browser/src/context/pageIntegrationHandlers.ts
Lines 81 to 91 in f5b28aa
This event handler is called on
pageevents, rather than events related to attached elements. But... on line 87, it calls a method that relates to attached elements... and so a niche case related to management of recently-attached elements had slipped through the cracks until now.Discovered during work on #9657 and #9690. I've gone ahead and included its changes there, but this is easy enough to 🍒 out of the feature branch and make its own PR here.
@keymanapp-test-bot skip