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: multiple problems related to listenerOrderRandom #240

Closed pixelzoom closed 8 months ago

pixelzoom commented 10 months ago

After addressing missing dependencies for https://github.com/phetsims/fourier-making-waves/issues/239 and https://github.com/phetsims/axon/issues/441, CT is now reporting a whole pile of problems for test fourier-making-waves : fuzz : unbuilt : listenerOrderRandom. CT trouble started at 11/18/23 9:47AM.

Here are the CT problems that are occurring:

fourier-making-waves : fuzz : unbuilt : listenerOrderRandom
http://128.138.93.172/continuous-testing/ct-snapshots/1700350076456/fourier-making-waves/fourier-making-waves_en.html?continuousTest=%7B%22test%22%3A%5B%22fourier-making-waves%22%2C%22fuzz%22%2C%22unbuilt%22%2C%22listenerOrderRandom%22%5D%2C%22snapshotName%22%3A%22snapshot-1700350076456%22%2C%22timestamp%22%3A1700351117860%7D&brand=phet&ea&fuzz&listenerOrder=random
Query: brand=phet&ea&fuzz&listenerOrder=random
Uncaught Error: Assertion failed: Display was already updating paint, may have thrown an error on the last update
Error: Assertion failed: Display was already updating paint, may have thrown an error on the last update
...
[CONSOLE] listenerOrder random seed: 104659
...
fourier-making-waves : fuzz : unbuilt : listenerOrderRandom
http://128.138.93.172/continuous-testing/ct-snapshots/1700349673490/fourier-making-waves/fourier-making-waves_en.html?continuousTest=%7B%22test%22%3A%5B%22fourier-making-waves%22%2C%22fuzz%22%2C%22unbuilt%22%2C%22listenerOrderRandom%22%5D%2C%22snapshotName%22%3A%22snapshot-1700349673490%22%2C%22timestamp%22%3A1700350615856%7D&brand=phet&ea&fuzz&listenerOrder=random
Query: brand=phet&ea&fuzz&listenerOrder=random
Uncaught Error: Assertion failed
Error: Assertion failed
at window.assertions.assertFunction (http://128.138.93.172/continuous-testing/ct-snapshots/1700349673490/assert/js/assert.js:28:13)
at assert (WavePacketComponentsChart.ts:67:14)
at createComponentsDataSets (WavePacketSumChart.ts:118:67)
at derivation (DerivedProperty.ts:51:11)
at getDerivedValue (DerivedProperty.ts:174:17)
at listener (TinyEmitter.ts:123:8)
at emit (ReadOnlyProperty.ts:329:22)
at _notifyListeners (ReadOnlyProperty.ts:276:13)
at unguardedSet (ReadOnlyProperty.ts:260:11)
at set (DerivedProperty.ts:174:12)
fourier-making-waves : fuzz : unbuilt : listenerOrderRandom
http://128.138.93.172/continuous-testing/ct-snapshots/1700341783704/fourier-making-waves/fourier-making-waves_en.html?continuousTest=%7B%22test%22%3A%5B%22fourier-making-waves%22%2C%22fuzz%22%2C%22unbuilt%22%2C%22listenerOrderRandom%22%5D%2C%22snapshotName%22%3A%22snapshot-1700341783704%22%2C%22timestamp%22%3A1700344258791%7D&brand=phet&ea&fuzz&listenerOrder=random
Query: brand=phet&ea&fuzz&listenerOrder=random
Uncaught Error: Assertion failed: reentry detected, value=[object Object], oldValue=[object Object]
Error: Assertion failed: reentry detected, value=[object Object], oldValue=[object Object]
at window.assertions.assertFunction (http://128.138.93.172/continuous-testing/ct-snapshots/1700341783704/assert/js/assert.js:28:13)
at assert (ReadOnlyProperty.ts:325:14)
at _notifyListeners (ReadOnlyProperty.ts:276:13)
at unguardedSet (ReadOnlyProperty.ts:260:11)
at set (Property.ts:65:10)
at set (Property.ts:58:9)
at reset (WavePacketModel.ts:77:31)
at resetWavePacketModel (WavePacketModel.ts:88:9)
at reset (WavePacketScreenView.ts:182:14)
at listener (TinyEmitter.ts:123:8)
fourier-making-waves : fuzz : unbuilt : listenerOrderRandom
http://128.138.93.172/continuous-testing/ct-snapshots/1700333713966/fourier-making-waves/fourier-making-waves_en.html?continuousTest=%7B%22test%22%3A%5B%22fourier-making-waves%22%2C%22fuzz%22%2C%22unbuilt%22%2C%22listenerOrderRandom%22%5D%2C%22snapshotName%22%3A%22snapshot-1700333713966%22%2C%22timestamp%22%3A1700335951664%7D&brand=phet&ea&fuzz&listenerOrder=random
Query: brand=phet&ea&fuzz&listenerOrder=random
Uncaught Error: Assertion failed: points with the same index must have the same x value
Error: Assertion failed: points with the same index must have the same x value
at window.assertions.assertFunction (http://128.138.93.172/continuous-testing/ct-snapshots/1700333713966/assert/js/assert.js:28:13)
at assert (WavePacketSumChart.ts:247:14)
at createEnvelopeDataSet (WavePacketSumChart.ts:124:20)
at derivation (DerivedProperty.ts:51:11)
at getDerivedValue (DerivedProperty.ts:174:17)
at listener (TinyEmitter.ts:123:8)
at emit (ReadOnlyProperty.ts:329:22)
at _notifyListeners (ReadOnlyProperty.ts:276:13)
at unguardedSet (ReadOnlyProperty.ts:260:11)
at set (Property.ts:54:10)
fourier-making-waves : fuzz : unbuilt : listenerOrderRandom
http://128.138.93.172/continuous-testing/ct-snapshots/1700326041243/fourier-making-waves/fourier-making-waves_en.html?continuousTest=%7B%22test%22%3A%5B%22fourier-making-waves%22%2C%22fuzz%22%2C%22unbuilt%22%2C%22listenerOrderRandom%22%5D%2C%22snapshotName%22%3A%22snapshot-1700326041243%22%2C%22timestamp%22%3A1700326452191%7D&brand=phet&ea&fuzz&listenerOrder=random
Query: brand=phet&ea&fuzz&listenerOrder=random
Uncaught Error: Assertion failed: viewValue should be finite
Error: Assertion failed: viewValue should be finite
at window.assertions.assertFunction (http://128.138.93.172/continuous-testing/ct-snapshots/1700326041243/assert/js/assert.js:28:13)
at assert (ChartTransform.ts:130:14)
at modelToView (ChartTransform.ts:143:16)
at modelToViewY (ChartTransform.ts:148:53)
at modelToViewXY (ChartTransform.ts:153:16)
at modelToViewPosition (CanvasLinePlot.ts:111:48)
at paintCanvas (ChartCanvasNode.ts:70:16)
at Array.forEach
at forEach (ChartCanvasNode.ts:64:18)
at paintCanvas (CanvasNodeDrawable.js:48:11)
pixelzoom commented 9 months ago

In the above commits, I improved messages for the assertions that are failing. I'll grab new messages and stack traces on an upcoming CT cycle.

pixelzoom commented 9 months ago

Here's one revised error message. I see this a couple of times on CT, and the message always includes i=0.

fourier-making-waves : fuzz : unbuilt : listenerOrderRandom
http://128.138.93.172/continuous-testing/ct-snapshots/1702940150988/fourier-making-waves/fourier-making-waves_en.html?continuousTest=%7B%22test%22%3A%5B%22fourier-making-waves%22%2C%22fuzz%22%2C%22unbuilt%22%2C%22listenerOrderRandom%22%5D%2C%22snapshotName%22%3A%22snapshot-1702940150988%22%2C%22timestamp%22%3A1702940469249%7D&brand=phet&ea&fuzz&listenerOrder=random
Query: brand=phet&ea&fuzz&listenerOrder=random
Uncaught Error: Assertion failed: points with the same index must have the same x value: i=0, dataSet1[i].x=-2, dataSet2[i].x=-1
Error: Assertion failed: points with the same index must have the same x value: i=0, dataSet1[i].x=-2, dataSet2[i].x=-1
at window.assertions.assertFunction (http://128.138.93.172/continuous-testing/ct-snapshots/1702940150988/assert/js/assert.js:28:13)
at assert (WavePacketSumChart.ts:247:14)
at createEnvelopeDataSet (WavePacketSumChart.ts:124:20)
at derivation (DerivedProperty.ts:51:11)
at getDerivedValue (DerivedProperty.ts:174:17)
at listener (TinyEmitter.ts:123:8)
at emit (ReadOnlyProperty.ts:329:22)
at _notifyListeners (ReadOnlyProperty.ts:276:13)
at unguardedSet (ReadOnlyProperty.ts:260:11)
at set (Property.ts:54:10)
pixelzoom commented 8 months ago

These problems are all related to listenerOrderRandom tests. I attempted to investigate a couple of them separately in #241 and #242. But they all seem related, and (no surprise) I hit all of them somewhat randomly while attempting to troubleshoot. I've invested hours in this, and I'm no closer to resolving the problems. So in the above commit, I reluctantly opted out of listenerOrderRandom testing for CT.

I'll leave this open until I verify that CT is happy.

pixelzoom commented 8 months ago

CT is happy. Closing.