phetsims / fourier-making-waves

"Fourier: Making Waves" is an educational simulation in HTML5, by PhET Interactive Simulations.
GNU General Public License v3.0
6 stars 3 forks source link

CT: trying to set focus on a node that is not focusable #207

Closed KatieWoe closed 2 years ago

KatieWoe commented 2 years ago
fourier-making-waves : multitouch-fuzz : unbuilt
https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/fourier-making-waves/fourier-making-waves_en.html?continuousTest=%7B%22test%22%3A%5B%22fourier-making-waves%22%2C%22multitouch-fuzz%22%2C%22unbuilt%22%5D%2C%22snapshotName%22%3A%22snapshot-1633621547897%22%2C%22timestamp%22%3A1633622695849%7D&brand=phet&ea&fuzz&fuzzPointers=2&memoryLimit=1000&supportsPanAndZoom=false
Query: brand=phet&ea&fuzz&fuzzPointers=2&memoryLimit=1000&supportsPanAndZoom=false
Uncaught Error: Assertion failed: trying to set focus on a node that is not focusable
Error: Assertion failed: trying to set focus on a node that is not focusable
at window.assertions.assertFunction (https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/assert/js/assert.js:25:13)
at Node.focus (https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/scenery/js/accessibility/pdom/ParallelDOM.js:548:21)
at AmplitudeKeypadDialog.hide (https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/sun/js/Popupable.js:131:32)
at AmplitudeKeypadDialog.hide (https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/fourier-making-waves/js/common/view/AmplitudeKeypadDialog.js:199:11)
at fire (https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/scenery-phet/js/BarrierRectangle.js:47:57)
at TinyEmitter.emit (https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/axon/js/TinyEmitter.js:86:9)
at https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/axon/js/Emitter.js:39:24
at Emitter.execute (https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/axon/js/Action.js:227:18)
at Emitter.emit (https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/axon/js/Emitter.js:64:19)
at FireListener.fire (https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/scenery/js/listeners/FireListener.js:93:23)
id: Bayes Chrome
Snapshot from 10/7/2021, 9:45:47 AM

----------------------------------

fourier-making-waves : phet-io-fuzz : unbuilt
https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/fourier-making-waves/fourier-making-waves_en.html?continuousTest=%7B%22test%22%3A%5B%22fourier-making-waves%22%2C%22phet-io-fuzz%22%2C%22unbuilt%22%5D%2C%22snapshotName%22%3A%22snapshot-1633621547897%22%2C%22timestamp%22%3A1633622530261%7D&ea&brand=phet-io&phetioStandalone&fuzz&memoryLimit=1000
Query: ea&brand=phet-io&phetioStandalone&fuzz&memoryLimit=1000
Uncaught Error: Assertion failed: trying to set focus on a node that is not focusable
Error: Assertion failed: trying to set focus on a node that is not focusable
at window.assertions.assertFunction (https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/assert/js/assert.js:25:13)
at Node.focus (https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/scenery/js/accessibility/pdom/ParallelDOM.js:548:21)
at AmplitudeKeypadDialog.hide (https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/sun/js/Popupable.js:131:32)
at AmplitudeKeypadDialog.hide (https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/fourier-making-waves/js/common/view/AmplitudeKeypadDialog.js:199:11)
at fire (https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/scenery-phet/js/BarrierRectangle.js:47:57)
at TinyEmitter.emit (https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/axon/js/TinyEmitter.js:86:9)
at https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/axon/js/Emitter.js:39:24
at Emitter.execute (https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/axon/js/Action.js:227:18)
at Emitter.emit (https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/axon/js/Emitter.js:64:19)
at FireListener.fire (https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/scenery/js/listeners/FireListener.js:93:23)
id: Bayes Chrome
Snapshot from 10/7/2021, 9:45:47 AM

----------------------------------

fourier-making-waves : xss-fuzz
https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/fourier-making-waves/fourier-making-waves_en.html?continuousTest=%7B%22test%22%3A%5B%22fourier-making-waves%22%2C%22xss-fuzz%22%5D%2C%22snapshotName%22%3A%22snapshot-1633621547897%22%2C%22timestamp%22%3A1633624528771%7D&brand=phet&ea&fuzz&stringTest=xss&memoryLimit=1000
Query: brand=phet&ea&fuzz&stringTest=xss&memoryLimit=1000
Uncaught Error: Assertion failed: trying to set focus on a node that is not focusable
Error: Assertion failed: trying to set focus on a node that is not focusable
at window.assertions.assertFunction (https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/assert/js/assert.js:25:13)
at Node.focus (https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/scenery/js/accessibility/pdom/ParallelDOM.js:548:21)
at AmplitudeKeypadDialog.hide (https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/sun/js/Popupable.js:131:32)
at AmplitudeKeypadDialog.hide (https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/fourier-making-waves/js/common/view/AmplitudeKeypadDialog.js:199:11)
at fire (https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/scenery-phet/js/BarrierRectangle.js:47:57)
at TinyEmitter.emit (https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/axon/js/TinyEmitter.js:86:9)
at https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/axon/js/Emitter.js:39:24
at Emitter.execute (https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/axon/js/Action.js:227:18)
at Emitter.emit (https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/axon/js/Emitter.js:64:19)
at FireListener.fire (https://bayes.colorado.edu/continuous-testing/ct-snapshots/1633621547897/scenery/js/listeners/FireListener.js:93:23)
id: Bayes Chrome
Snapshot from 10/7/2021, 9:45:47 AM
pixelzoom commented 2 years ago

To reproduce manually:

  1. Run the sim with ?ea
  2. Go to Discrete screen
  3. Click on the NumberDisplay above amplitude slider A1. This opens a modal keypad dialog.
  4. Press Tab to focus the "7" key in the keypad.
  5. Press the escape key to exit the dialog. The assertion fails:
Uncaught Error: Assertion failed: trying to set focus on a node that is not focusable
    at window.assertions.assertFunction (assert.js:25)
    at Node.focus (ParallelDOM.js:548)
    at AmplitudeKeypadDialog.hide (Popupable.js:131)
    at AmplitudeKeypadDialog.hide (AmplitudeKeypadDialog.js:199)
    at Object.keydown (Dialog.js:342)
    at Input.dispatchToListeners (Input.js:1886)
    at Input.dispatchToTargets (Input.js:1925)
    at Input.dispatchEvent (Input.js:1839)
    at Input.dispatchPDOMEvent (Input.js:1066)
    at Input.keydownAction.Action.phetioPlayback (Input.js:738)

This seems related to work that @jessegreenberg has been doing in https://github.com/phetsims/sun/issues/719. @jessegreenberg can you please take a look?

pixelzoom commented 2 years ago

Adding this for RC testing phetsims/qa#711, and blocks publication.

pixelzoom commented 2 years ago

Looking at CT, this started failing 10/6/2021 @ 1:28 PM MDT. It has been failing on almost every CT cycle.

pixelzoom commented 2 years ago

I discussed with @jessegreenberg on Zoom. This is a general problem, to be resolved in phetsims/sun#723. As I understand it, the fix involves removing an assertion that is too strict.

This does not block Fourier 1.0, because the problem is not in the branch or its dependencies.

When phetsims/sun#723 has been addressed and CT is clear, this issue can be closed.

jessegreenberg commented 2 years ago

This is handled gracefully after https://github.com/phetsims/sun/issues/723 and I can't reproduce any more. The assertions being thrown here were not added in the changes listed here https://github.com/phetsims/sun/issues/719#issuecomment-937895180 so I don't expect this to be an issue for 1.0.

pixelzoom commented 2 years ago

After pulling changes, I verified that I can no longer cause the problem to occur by following the steps in https://github.com/phetsims/fourier-making-waves/issues/207#issuecomment-938027681. I'll wait a couple of CT cycles, then close.

pixelzoom commented 2 years ago

CT looks good, closing.