phetsims / projectile-data-lab

"Projectile Data Lab" is an educational simulation in HTML5, by PhET Interactive Simulations.
GNU General Public License v3.0
0 stars 0 forks source link

CT Did not get next-test message in 400000ms #274

Closed KatieWoe closed 3 months ago

KatieWoe commented 3 months ago
projectile-data-lab : fuzz : built
Tried to run 3 times, never completed, failure: Error: Error: Did not get next-test message in 400000ms (currentSendingCount 0): ["projectile-data-lab","fuzz","built"]
[URL] http://128.138.93.172/continuous-testing/aqua/html/sim-test.html?url=..%2F..%2Fct-snapshots%2F1711555771807%2Fprojectile-data-lab%2Fbuild%2Fphet%2Fprojectile-data-lab_en_phet.html&simQueryParameters=fuzz&duration=80000&testInfo=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22fuzz%22%2C%22built%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711557047284%7D
[NAVIGATED] http://128.138.93.172/continuous-testing/aqua/html/sim-test.html?url=..%2F..%2Fct-snapshots%2F1711555771807%2Fprojectile-data-lab%2Fbuild%2Fphet%2Fprojectile-data-lab_en_phet.html&simQueryParameters=fuzz&duration=80000&testInfo=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22fuzz%22%2C%22built%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711557047284%7D
[ATTACHED]
[NAVIGATED] about:blank
[NAVIGATED] http://128.138.93.172/continuous-testing/ct-snapshots/1711555771807/projectile-data-lab/build/phet/projectile-data-lab_en_phet.html?continuousTest=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22fuzz%22%2C%22built%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711557047284%7D&fuzz
[CONSOLE] continuous-test-load
Error: Did not get next-test message in 400000ms (currentSendingCount 0): ["projectile-data-lab","fuzz","built"]

id: "Sparky Node Puppeteer"
Snapshot from 3/27/2024, 10:09:31 AM

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

projectile-data-lab : fuzz : built
Tried to run 3 times, never completed, failure: Error: Error: Did not get next-test message in 400000ms (currentSendingCount 0): ["projectile-data-lab","fuzz","built"]
[URL] http://128.138.93.172/continuous-testing/aqua/html/sim-test.html?url=..%2F..%2Fct-snapshots%2F1711555771807%2Fprojectile-data-lab%2Fbuild%2Fphet%2Fprojectile-data-lab_en_phet.html&simQueryParameters=fuzz&duration=80000&testInfo=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22fuzz%22%2C%22built%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711559192483%7D
[NAVIGATED] http://128.138.93.172/continuous-testing/aqua/html/sim-test.html?url=..%2F..%2Fct-snapshots%2F1711555771807%2Fprojectile-data-lab%2Fbuild%2Fphet%2Fprojectile-data-lab_en_phet.html&simQueryParameters=fuzz&duration=80000&testInfo=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22fuzz%22%2C%22built%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711559192483%7D
[ATTACHED]
[NAVIGATED] about:blank
[NAVIGATED] http://128.138.93.172/continuous-testing/ct-snapshots/1711555771807/projectile-data-lab/build/phet/projectile-data-lab_en_phet.html?continuousTest=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22fuzz%22%2C%22built%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711559192483%7D&fuzz
[CONSOLE] continuous-test-load
Error: Did not get next-test message in 400000ms (currentSendingCount 0): ["projectile-data-lab","fuzz","built"]

id: "Sparky Node Puppeteer"
Snapshot from 3/27/2024, 10:09:31 AM

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

projectile-data-lab : fuzz : built-phet-io
Tried to run 3 times, never completed, failure: Error: Error: Did not get next-test message in 400000ms (currentSendingCount 0): ["projectile-data-lab","fuzz","built-phet-io"]
[URL] http://127.0.0.1/continuous-testing/aqua/html/sim-test.html?url=..%2F..%2Fct-snapshots%2F1711555771807%2Fprojectile-data-lab%2Fbuild%2Fphet-io%2Fprojectile-data-lab_all_phet-io.html&simQueryParameters=fuzz%26phetioStandalone&duration=80000&testInfo=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22fuzz%22%2C%22built-phet-io%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711556841659%7D
[NAVIGATED] http://127.0.0.1/continuous-testing/aqua/html/sim-test.html?url=..%2F..%2Fct-snapshots%2F1711555771807%2Fprojectile-data-lab%2Fbuild%2Fphet-io%2Fprojectile-data-lab_all_phet-io.html&simQueryParameters=fuzz%26phetioStandalone&duration=80000&testInfo=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22fuzz%22%2C%22built-phet-io%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711556841659%7D
[ATTACHED]
[NAVIGATED] http://127.0.0.1/continuous-testing/ct-snapshots/1711555771807/projectile-data-lab/build/phet-io/projectile-data-lab_all_phet-io.html?continuousTest=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22fuzz%22%2C%22built-phet-io%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711556841659%7D&fuzz&phetioStandalone
[CONSOLE] [JavaScript Warning: "An AudioContext was prevented from starting automatically. It must be created or resumed after a user gesture on the page." {file: "http://127.0.0.1/continuous-testing/ct-snapshots/1711555771807/projectile-data-lab/build/phet-io/projectile-data-lab_all_phet-io.html?continuousTest=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22fuzz%22%2C%22built-phet-io%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711556841659%7D&fuzz&phetioStandalone" line: 1060}]
[CONSOLE] [JavaScript Warning: "WebGL warning: <Create>: WebglAllowWindowsNativeGl:false restricts context creation on this system." {file: "http://127.0.0.1/continuous-testing/ct-snapshots/1711555771807/projectile-data-lab/build/phet-io/projectile-data-lab_all_phet-io.html?continuousTest=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22fuzz%22%2C%22built-phet-io%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711556841659%7D&fuzz&phetioStandalone" line: 1060}]
[CONSOLE] [JavaScript Warning: "Failed to create WebGL context: WebGL creation failed:
* WebglAllowWindowsNativeGl:false restricts context creation on this system. ()
* Exhausted GL driver options. (FEATURE_FAILURE_WEBGL_EXHAUSTED_DRIVERS)" {file: "http://127.0.0.1/continuous-testing/ct-snapshots/1711555771807/projectile-data-lab/build/phet-io/projectile-data-lab_all_phet-io.html?continuousTest=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22fuzz%22%2C%22built-phet-io%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711556841659%7D&fuzz&phetioStandalone" line: 1060}]
[CONSOLE] [JavaScript Warning: "WebGL warning: <Create>: WebglAllowWindowsNativeGl:false restricts context creation on this system." {file: "http://127.0.0.1/continuous-testing/ct-snapshots/1711555771807/projectile-data-lab/build/phet-io/projectile-data-lab_all_phet-io.html?continuousTest=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22fuzz%22%2C%22built-phet-io%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711556841659%7D&fuzz&phetioStandalone" line: 1060}]
[CONSOLE] [JavaScript Warning: "Failed to create WebGL context: WebGL creation failed:
* WebglAllowWindowsNativeGl:false restricts context creation on this system. ()
* Exhausted GL driver options. (FEATURE_FAILURE_WEBGL_EXHAUSTED_DRIVERS)" {file: "http://127.0.0.1/continuous-testing/ct-snapshots/1711555771807/projectile-data-lab/build/phet-io/projectile-data-lab_all_phet-io.html?continuousTest=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22fuzz%22%2C%22built-phet-io%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711556841659%7D&fuzz&phetioStandalone" line: 1060}]
[CONSOLE] continuous-test-load
Error: Did not get next-test message in 400000ms (currentSendingCount 0): ["projectile-data-lab","fuzz","built-phet-io"]

id: "Sparky Node Firefox"
Snapshot from 3/27/2024, 10:09:31 AM

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

projectile-data-lab : fuzz : built-phet-io
Tried to run 3 times, never completed, failure: Error: Error: Did not get next-test message in 400000ms (currentSendingCount 0): ["projectile-data-lab","fuzz","built-phet-io"]
[URL] http://128.138.93.172/continuous-testing/aqua/html/sim-test.html?url=..%2F..%2Fct-snapshots%2F1711555771807%2Fprojectile-data-lab%2Fbuild%2Fphet-io%2Fprojectile-data-lab_all_phet-io.html&simQueryParameters=fuzz%26phetioStandalone&duration=80000&testInfo=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22fuzz%22%2C%22built-phet-io%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711559129155%7D
[NAVIGATED] http://128.138.93.172/continuous-testing/aqua/html/sim-test.html?url=..%2F..%2Fct-snapshots%2F1711555771807%2Fprojectile-data-lab%2Fbuild%2Fphet-io%2Fprojectile-data-lab_all_phet-io.html&simQueryParameters=fuzz%26phetioStandalone&duration=80000&testInfo=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22fuzz%22%2C%22built-phet-io%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711559129155%7D
[ATTACHED]
[NAVIGATED] about:blank
[NAVIGATED] http://128.138.93.172/continuous-testing/ct-snapshots/1711555771807/projectile-data-lab/build/phet-io/projectile-data-lab_all_phet-io.html?continuousTest=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22fuzz%22%2C%22built-phet-io%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711559129155%7D&fuzz&phetioStandalone
[CONSOLE] continuous-test-load
Error: Did not get next-test message in 400000ms (currentSendingCount 0): ["projectile-data-lab","fuzz","built-phet-io"]

id: "Sparky Node Puppeteer"
Snapshot from 3/27/2024, 10:09:31 AM

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

projectile-data-lab : fuzz : unbuilt
Tried to run 3 times, never completed, failure: Error: Error: Did not get next-test message in 400000ms (currentSendingCount 0): ["projectile-data-lab","fuzz","unbuilt"]
[URL] http://128.138.93.172/continuous-testing/aqua/html/sim-test.html?url=..%2F..%2Fct-snapshots%2F1711555771807%2Fprojectile-data-lab%2Fprojectile-data-lab_en.html&simQueryParameters=brand%3Dphet%26ea%26fuzz&duration=90000&testInfo=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22fuzz%22%2C%22unbuilt%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711556540673%7D
[NAVIGATED] http://128.138.93.172/continuous-testing/aqua/html/sim-test.html?url=..%2F..%2Fct-snapshots%2F1711555771807%2Fprojectile-data-lab%2Fprojectile-data-lab_en.html&simQueryParameters=brand%3Dphet%26ea%26fuzz&duration=90000&testInfo=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22fuzz%22%2C%22unbuilt%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711556540673%7D
[ATTACHED]
[NAVIGATED] about:blank
[NAVIGATED] http://128.138.93.172/continuous-testing/ct-snapshots/1711555771807/projectile-data-lab/projectile-data-lab_en.html?continuousTest=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22fuzz%22%2C%22unbuilt%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711556540673%7D&brand=phet&ea&fuzz
[CONSOLE] enabling assert
[CONSOLE] continuous-test-load
Error: Did not get next-test message in 400000ms (currentSendingCount 0): ["projectile-data-lab","fuzz","unbuilt"]

id: "Sparky Node Puppeteer"
Snapshot from 3/27/2024, 10:09:31 AM

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

projectile-data-lab : fuzz : unbuilt : assertSlow
Tried to run 3 times, never completed, failure: Error: Error: Did not get next-test message in 400000ms (currentSendingCount 0): ["projectile-data-lab","fuzz","unbuilt","assertSlow"]
[URL] http://128.138.93.172/continuous-testing/aqua/html/sim-test.html?url=..%2F..%2Fct-snapshots%2F1711555771807%2Fprojectile-data-lab%2Fprojectile-data-lab_en.html&simQueryParameters=brand%3Dphet%26eall%26fuzz&testInfo=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22fuzz%22%2C%22unbuilt%22%2C%22assertSlow%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711558605982%7D
[NAVIGATED] http://128.138.93.172/continuous-testing/aqua/html/sim-test.html?url=..%2F..%2Fct-snapshots%2F1711555771807%2Fprojectile-data-lab%2Fprojectile-data-lab_en.html&simQueryParameters=brand%3Dphet%26eall%26fuzz&testInfo=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22fuzz%22%2C%22unbuilt%22%2C%22assertSlow%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711558605982%7D
[ATTACHED]
[NAVIGATED] about:blank
[NAVIGATED] http://128.138.93.172/continuous-testing/ct-snapshots/1711555771807/projectile-data-lab/projectile-data-lab_en.html?continuousTest=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22fuzz%22%2C%22unbuilt%22%2C%22assertSlow%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711558605982%7D&brand=phet&eall&fuzz
[CONSOLE] enabling assert
[CONSOLE] enabling assertSlow
[CONSOLE] continuous-test-load
Error: Did not get next-test message in 400000ms (currentSendingCount 0): ["projectile-data-lab","fuzz","unbuilt","assertSlow"]

id: "Sparky Node Puppeteer"
Snapshot from 3/27/2024, 10:09:31 AM

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

projectile-data-lab : fuzz : unbuilt : listenerOrderRandom
Tried to run 3 times, never completed, failure: Error: Error: Did not get next-test message in 400000ms (currentSendingCount 0): ["projectile-data-lab","fuzz","unbuilt","listenerOrderRandom"]
[URL] http://128.138.93.172/continuous-testing/aqua/html/sim-test.html?url=..%2F..%2Fct-snapshots%2F1711555771807%2Fprojectile-data-lab%2Fprojectile-data-lab_en.html&simQueryParameters=brand%3Dphet%26ea%26fuzz%26listenerOrder%3Drandom&testInfo=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22fuzz%22%2C%22unbuilt%22%2C%22listenerOrderRandom%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711556136999%7D
[NAVIGATED] http://128.138.93.172/continuous-testing/aqua/html/sim-test.html?url=..%2F..%2Fct-snapshots%2F1711555771807%2Fprojectile-data-lab%2Fprojectile-data-lab_en.html&simQueryParameters=brand%3Dphet%26ea%26fuzz%26listenerOrder%3Drandom&testInfo=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22fuzz%22%2C%22unbuilt%22%2C%22listenerOrderRandom%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711556136999%7D
[ATTACHED]
[NAVIGATED] about:blank
[NAVIGATED] http://128.138.93.172/continuous-testing/ct-snapshots/1711555771807/projectile-data-lab/projectile-data-lab_en.html?continuousTest=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22fuzz%22%2C%22unbuilt%22%2C%22listenerOrderRandom%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711556136999%7D&brand=phet&ea&fuzz&listenerOrder=random
[CONSOLE] enabling assert
[CONSOLE] listenerOrder random seed: 984155
[CONSOLE] continuous-test-load
Error: Did not get next-test message in 400000ms (currentSendingCount 0): ["projectile-data-lab","fuzz","unbuilt","listenerOrderRandom"]

id: "Sparky Node Puppeteer"
Snapshot from 3/27/2024, 10:09:31 AM

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

projectile-data-lab : interactive-description-fuzz : built
Tried to run 3 times, never completed, failure: Error: Error: Did not get next-test message in 400000ms (currentSendingCount 0): ["projectile-data-lab","interactive-description-fuzz","built"]
[URL] http://127.0.0.1/continuous-testing/aqua/html/sim-test.html?url=..%2F..%2Fct-snapshots%2F1711555771807%2Fprojectile-data-lab%2Fbuild%2Fphet%2Fprojectile-data-lab_en_phet.html&simQueryParameters=fuzz%26supportsInteractiveDescription%3Dtrue&duration=40000&testInfo=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22interactive-description-fuzz%22%2C%22built%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711556895468%7D
[NAVIGATED] http://127.0.0.1/continuous-testing/aqua/html/sim-test.html?url=..%2F..%2Fct-snapshots%2F1711555771807%2Fprojectile-data-lab%2Fbuild%2Fphet%2Fprojectile-data-lab_en_phet.html&simQueryParameters=fuzz%26supportsInteractiveDescription%3Dtrue&duration=40000&testInfo=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22interactive-description-fuzz%22%2C%22built%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711556895468%7D
[ATTACHED]
[NAVIGATED] http://127.0.0.1/continuous-testing/ct-snapshots/1711555771807/projectile-data-lab/build/phet/projectile-data-lab_en_phet.html?continuousTest=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22interactive-description-fuzz%22%2C%22built%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711556895468%7D&fuzz&supportsInteractiveDescription=true
[CONSOLE] [JavaScript Warning: "An AudioContext was prevented from starting automatically. It must be created or resumed after a user gesture on the page." {file: "http://127.0.0.1/continuous-testing/ct-snapshots/1711555771807/projectile-data-lab/build/phet/projectile-data-lab_en_phet.html?continuousTest=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22interactive-description-fuzz%22%2C%22built%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711556895468%7D&fuzz&supportsInteractiveDescription=true" line: 1063}]
[CONSOLE] [JavaScript Warning: "WebGL warning: <Create>: WebglAllowWindowsNativeGl:false restricts context creation on this system." {file: "http://127.0.0.1/continuous-testing/ct-snapshots/1711555771807/projectile-data-lab/build/phet/projectile-data-lab_en_phet.html?continuousTest=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22interactive-description-fuzz%22%2C%22built%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711556895468%7D&fuzz&supportsInteractiveDescription=true" line: 1063}]
[CONSOLE] [JavaScript Warning: "Failed to create WebGL context: WebGL creation failed:
* WebglAllowWindowsNativeGl:false restricts context creation on this system. ()
* Exhausted GL driver options. (FEATURE_FAILURE_WEBGL_EXHAUSTED_DRIVERS)" {file: "http://127.0.0.1/continuous-testing/ct-snapshots/1711555771807/projectile-data-lab/build/phet/projectile-data-lab_en_phet.html?continuousTest=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22interactive-description-fuzz%22%2C%22built%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711556895468%7D&fuzz&supportsInteractiveDescription=true" line: 1063}]
[CONSOLE] [JavaScript Warning: "WebGL warning: <Create>: WebglAllowWindowsNativeGl:false restricts context creation on this system." {file: "http://127.0.0.1/continuous-testing/ct-snapshots/1711555771807/projectile-data-lab/build/phet/projectile-data-lab_en_phet.html?continuousTest=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22interactive-description-fuzz%22%2C%22built%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711556895468%7D&fuzz&supportsInteractiveDescription=true" line: 1063}]
[CONSOLE] [JavaScript Warning: "Failed to create WebGL context: WebGL creation failed:
* WebglAllowWindowsNativeGl:false restricts context creation on this system. ()
* Exhausted GL driver options. (FEATURE_FAILURE_WEBGL_EXHAUSTED_DRIVERS)" {file: "http://127.0.0.1/continuous-testing/ct-snapshots/1711555771807/projectile-data-lab/build/phet/projectile-data-lab_en_phet.html?continuousTest=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22interactive-description-fuzz%22%2C%22built%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711556895468%7D&fuzz&supportsInteractiveDescription=true" line: 1063}]
[CONSOLE] continuous-test-load
Error: Did not get next-test message in 400000ms (currentSendingCount 0): ["projectile-data-lab","interactive-description-fuzz","built"]

id: "Sparky Node Firefox"
Snapshot from 3/27/2024, 10:09:31 AM

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

projectile-data-lab : interactive-description-fuzz : built
Tried to run 3 times, never completed, failure: Error: Error: Did not get next-test message in 400000ms (currentSendingCount 0): ["projectile-data-lab","interactive-description-fuzz","built"]
[URL] http://128.138.93.172/continuous-testing/aqua/html/sim-test.html?url=..%2F..%2Fct-snapshots%2F1711555771807%2Fprojectile-data-lab%2Fbuild%2Fphet%2Fprojectile-data-lab_en_phet.html&simQueryParameters=fuzz%26supportsInteractiveDescription%3Dtrue&duration=40000&testInfo=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22interactive-description-fuzz%22%2C%22built%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711559781053%7D
[NAVIGATED] http://128.138.93.172/continuous-testing/aqua/html/sim-test.html?url=..%2F..%2Fct-snapshots%2F1711555771807%2Fprojectile-data-lab%2Fbuild%2Fphet%2Fprojectile-data-lab_en_phet.html&simQueryParameters=fuzz%26supportsInteractiveDescription%3Dtrue&duration=40000&testInfo=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22interactive-description-fuzz%22%2C%22built%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711559781053%7D
[ATTACHED]
[NAVIGATED] about:blank
[NAVIGATED] http://128.138.93.172/continuous-testing/ct-snapshots/1711555771807/projectile-data-lab/build/phet/projectile-data-lab_en_phet.html?continuousTest=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22interactive-description-fuzz%22%2C%22built%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711559781053%7D&fuzz&supportsInteractiveDescription=true
[CONSOLE] continuous-test-load
Error: Did not get next-test message in 400000ms (currentSendingCount 0): ["projectile-data-lab","interactive-description-fuzz","built"]

id: "Sparky Node Puppeteer"
Snapshot from 3/27/2024, 10:09:31 AM

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

projectile-data-lab : pan-and-zoom-fuzz : unbuilt
Tried to run 3 times, never completed, failure: Error: Error: Did not get next-test message in 400000ms (currentSendingCount 0): ["projectile-data-lab","pan-and-zoom-fuzz","unbuilt"]
[URL] http://128.138.93.172/continuous-testing/aqua/html/sim-test.html?url=..%2F..%2Fct-snapshots%2F1711555771807%2Fprojectile-data-lab%2Fprojectile-data-lab_en.html&simQueryParameters=brand%3Dphet%26ea%26fuzz%26fuzzPointers%3D2%26supportsPanAndZoom%3Dtrue&testInfo=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22pan-and-zoom-fuzz%22%2C%22unbuilt%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711556061463%7D
[NAVIGATED] http://128.138.93.172/continuous-testing/aqua/html/sim-test.html?url=..%2F..%2Fct-snapshots%2F1711555771807%2Fprojectile-data-lab%2Fprojectile-data-lab_en.html&simQueryParameters=brand%3Dphet%26ea%26fuzz%26fuzzPointers%3D2%26supportsPanAndZoom%3Dtrue&testInfo=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22pan-and-zoom-fuzz%22%2C%22unbuilt%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711556061463%7D
[ATTACHED]
[NAVIGATED] about:blank
[NAVIGATED] http://128.138.93.172/continuous-testing/ct-snapshots/1711555771807/projectile-data-lab/projectile-data-lab_en.html?continuousTest=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22pan-and-zoom-fuzz%22%2C%22unbuilt%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711556061463%7D&brand=phet&ea&fuzz&fuzzPointers=2&supportsPanAndZoom=true
[CONSOLE] enabling assert
[CONSOLE] continuous-test-load
Error: Did not get next-test message in 400000ms (currentSendingCount 0): ["projectile-data-lab","pan-and-zoom-fuzz","unbuilt"]

id: "Sparky Node Puppeteer"
Snapshot from 3/27/2024, 10:09:31 AM

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

projectile-data-lab : pan-and-zoom-fuzz : unbuilt
Tried to run 3 times, never completed, failure: Error: Error: Did not get next-test message in 400000ms (currentSendingCount 0): ["projectile-data-lab","pan-and-zoom-fuzz","unbuilt"]
[URL] http://128.138.93.172/continuous-testing/aqua/html/sim-test.html?url=..%2F..%2Fct-snapshots%2F1711555771807%2Fprojectile-data-lab%2Fprojectile-data-lab_en.html&simQueryParameters=brand%3Dphet%26ea%26fuzz%26fuzzPointers%3D2%26supportsPanAndZoom%3Dtrue&testInfo=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22pan-and-zoom-fuzz%22%2C%22unbuilt%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711559241571%7D
[NAVIGATED] http://128.138.93.172/continuous-testing/aqua/html/sim-test.html?url=..%2F..%2Fct-snapshots%2F1711555771807%2Fprojectile-data-lab%2Fprojectile-data-lab_en.html&simQueryParameters=brand%3Dphet%26ea%26fuzz%26fuzzPointers%3D2%26supportsPanAndZoom%3Dtrue&testInfo=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22pan-and-zoom-fuzz%22%2C%22unbuilt%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711559241571%7D
[ATTACHED]
[NAVIGATED] about:blank
[NAVIGATED] http://128.138.93.172/continuous-testing/ct-snapshots/1711555771807/projectile-data-lab/projectile-data-lab_en.html?continuousTest=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22pan-and-zoom-fuzz%22%2C%22unbuilt%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711559241571%7D&brand=phet&ea&fuzz&fuzzPointers=2&supportsPanAndZoom=true
[CONSOLE] enabling assert
[CONSOLE] continuous-test-load
Error: Did not get next-test message in 400000ms (currentSendingCount 0): ["projectile-data-lab","pan-and-zoom-fuzz","unbuilt"]

id: "Sparky Node Puppeteer"
Snapshot from 3/27/2024, 10:09:31 AM

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

projectile-data-lab : phet-io-fuzz : unbuilt
Tried to run 3 times, never completed, failure: Error: Error: Did not get next-test message in 400000ms (currentSendingCount 0): ["projectile-data-lab","phet-io-fuzz","unbuilt"]
[URL] http://128.138.93.172/continuous-testing/aqua/html/sim-test.html?url=..%2F..%2Fct-snapshots%2F1711555771807%2Fprojectile-data-lab%2Fprojectile-data-lab_en.html&simQueryParameters=ea%26brand%3Dphet-io%26phetioStandalone%26fuzz&testInfo=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22phet-io-fuzz%22%2C%22unbuilt%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711556254299%7D
[NAVIGATED] http://128.138.93.172/continuous-testing/aqua/html/sim-test.html?url=..%2F..%2Fct-snapshots%2F1711555771807%2Fprojectile-data-lab%2Fprojectile-data-lab_en.html&simQueryParameters=ea%26brand%3Dphet-io%26phetioStandalone%26fuzz&testInfo=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22phet-io-fuzz%22%2C%22unbuilt%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711556254299%7D
[ATTACHED]
[NAVIGATED] about:blank
[NAVIGATED] http://128.138.93.172/continuous-testing/ct-snapshots/1711555771807/projectile-data-lab/projectile-data-lab_en.html?continuousTest=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22phet-io-fuzz%22%2C%22unbuilt%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711556254299%7D&ea&brand=phet-io&phetioStandalone&fuzz
[CONSOLE] enabling assert
[CONSOLE] continuous-test-load
Error: Did not get next-test message in 400000ms (currentSendingCount 0): ["projectile-data-lab","phet-io-fuzz","unbuilt"]

id: "Sparky Node Puppeteer"
Snapshot from 3/27/2024, 10:09:31 AM

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

projectile-data-lab : phet-io-fuzz : unbuilt
Tried to run 3 times, never completed, failure: Error: Error: Did not get next-test message in 400000ms (currentSendingCount 0): ["projectile-data-lab","phet-io-fuzz","unbuilt"]
[URL] http://128.138.93.172/continuous-testing/aqua/html/sim-test.html?url=..%2F..%2Fct-snapshots%2F1711555771807%2Fprojectile-data-lab%2Fprojectile-data-lab_en.html&simQueryParameters=ea%26brand%3Dphet-io%26phetioStandalone%26fuzz&testInfo=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22phet-io-fuzz%22%2C%22unbuilt%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711559114880%7D
[NAVIGATED] http://128.138.93.172/continuous-testing/aqua/html/sim-test.html?url=..%2F..%2Fct-snapshots%2F1711555771807%2Fprojectile-data-lab%2Fprojectile-data-lab_en.html&simQueryParameters=ea%26brand%3Dphet-io%26phetioStandalone%26fuzz&testInfo=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22phet-io-fuzz%22%2C%22unbuilt%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711559114880%7D
[ATTACHED]
[NAVIGATED] about:blank
[NAVIGATED] http://128.138.93.172/continuous-testing/ct-snapshots/1711555771807/projectile-data-lab/projectile-data-lab_en.html?continuousTest=%7B%22test%22%3A%5B%22projectile-data-lab%22%2C%22phet-io-fuzz%22%2C%22unbuilt%22%5D%2C%22snapshotName%22%3A%22snapshot-1711555771807%22%2C%22timestamp%22%3A1711559114880%7D&ea&brand=phet-io&phetioStandalone&fuzz
[CONSOLE] enabling assert
[CONSOLE] continuous-test-load
Error: Did not get next-test message in 400000ms (currentSendingCount 0): ["projectile-data-lab","phet-io-fuzz","unbuilt"]

id: "Sparky Node Puppeteer"
Snapshot from 3/27/2024, 10:09:31 AM
samreid commented 3 months ago

I wonder if this is related to https://github.com/phetsims/projectile-data-lab/issues/273

matthew-blackman commented 3 months ago

Patch from 4/1 pairing:

``` diff Subject: [PATCH] Update API file - see https://github.com/phetsims/projectile-data-lab/issues/275 --- Index: js/measures/view/IntervalToolNode.ts IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== diff --git a/js/measures/view/IntervalToolNode.ts b/js/measures/view/IntervalToolNode.ts --- a/js/measures/view/IntervalToolNode.ts (revision 587d552b841090333a894d7f837fb4584a8dfc8e) +++ b/js/measures/view/IntervalToolNode.ts (date 1711999632440) @@ -279,8 +279,7 @@ const dragListenerOptions: DragListenerOptions = { useInputListenerCursor: true, - dragBoundsProperty: new Property( new Bounds2( 0, 0, PDLConstants.MAX_FIELD_DISTANCE, 0 ) ), - allowTouchSnag: true + dragBoundsProperty: new Property( new Bounds2( 0, 0, PDLConstants.MAX_FIELD_DISTANCE, 0 ) ) }; const translateDragListenerOptions = { Index: js/measures/model/IntervalTool.ts IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== diff --git a/js/measures/model/IntervalTool.ts b/js/measures/model/IntervalTool.ts --- a/js/measures/model/IntervalTool.ts (revision 587d552b841090333a894d7f837fb4584a8dfc8e) +++ b/js/measures/model/IntervalTool.ts (date 1712000180262) @@ -109,14 +109,21 @@ this._edge1 = DEFAULT_EDGE_1; this._edge2 = DEFAULT_EDGE_2; - this.notifyChanged(); + // this.notifyChanged(); + + this.notifyEdge1Changed(); + this.notifyEdge2Changed(); + this.notifyCenterChanged(); } public set edge1( value: number ) { const clamped = Utils.clamp( value, 0, PDLConstants.MAX_FIELD_DISTANCE ); if ( clamped !== this.edge1 ) { this._edge1 = clamped; - this.notifyChanged(); + // this.notifyChanged(); + + this.notifyEdge2Changed(); + this.notifyCenterChanged(); } } @@ -128,7 +135,10 @@ const clamped = Utils.clamp( value, 0, PDLConstants.MAX_FIELD_DISTANCE ); if ( clamped !== this._edge2 ) { this._edge2 = clamped; - this.notifyChanged(); + // this.notifyChanged(); + + this.notifyEdge1Changed(); + this.notifyCenterChanged(); } } @@ -170,17 +180,38 @@ this._edge1 = min - separation; } - this.notifyChanged(); + // this.notifyChanged(); + + this.notifyEdge1Changed(); + this.notifyEdge2Changed(); } } - // When the edges or center of the interval tool change, notify the listeners - private notifyChanged(): void { + // When edge 1 of the interval tool change, notify the listeners + private notifyEdge1Changed(): void { // Update the downstream Properties which are only used for sonification. // Only update the Property values once everything is fully in-sync. this.edge1Property.value = this._edge1; + + this.changedEmitter.emit(); + } + + // When edge 2 of the interval tool change, notify the listeners + private notifyEdge2Changed(): void { + + // Update the downstream Properties which are only used for sonification. + // Only update the Property values once everything is fully in-sync. this.edge2Property.value = this._edge2; + + this.changedEmitter.emit(); + } + + // When the center of the interval tool change, notify the listeners + private notifyCenterChanged(): void { + + // Update the downstream Properties which are only used for sonification. + // Only update the Property values once everything is fully in-sync. this.centerProperty.value = this.center; this.changedEmitter.emit();
samreid commented 3 months ago

Patch to eliminate _edge1 etc:

```diff Subject: [PATCH] Only use webgl on firefox, see https://github.com/phetsims/center-and-variability/issues/619 --- Index: js/measures/model/MeasuresModel.ts IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== diff --git a/js/measures/model/MeasuresModel.ts b/js/measures/model/MeasuresModel.ts --- a/js/measures/model/MeasuresModel.ts (revision 587d552b841090333a894d7f837fb4584a8dfc8e) +++ b/js/measures/model/MeasuresModel.ts (date 1712001794696) @@ -167,8 +167,8 @@ // Compute the percent of data within the interval tool, only considering the landedProjectiles. const updateIntervalToolDataPercentage = () => { - const min = Math.min( this.intervalTool.edge1, this.intervalTool.edge2 ); - const max = Math.max( this.intervalTool.edge1, this.intervalTool.edge2 ); + const min = Math.min( this.intervalTool.edge1Property.value, this.intervalTool.edge2Property.value ); + const max = Math.max( this.intervalTool.edge1Property.value, this.intervalTool.edge2Property.value ); const field = this.fieldProperty.value; const count = field.landedProjectiles.filter( projectile => { return projectile.x >= min && projectile.x <= max; @@ -183,7 +183,8 @@ field.projectilesClearedEmitter.addListener( updateIntervalToolDataPercentage ); } ); this.fieldProperty.link( updateIntervalToolDataPercentage ); - this.intervalTool.changedEmitter.addListener( updateIntervalToolDataPercentage ); + this.intervalTool.edge1Property.link( updateIntervalToolDataPercentage ); + this.intervalTool.edge2Property.link( updateIntervalToolDataPercentage ); } protected override shouldPlayMeanTone(): boolean { Index: js/measures/view/MeasuresHistogramNode.ts IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== diff --git a/js/measures/view/MeasuresHistogramNode.ts b/js/measures/view/MeasuresHistogramNode.ts --- a/js/measures/view/MeasuresHistogramNode.ts (revision 587d552b841090333a894d7f837fb4584a8dfc8e) +++ b/js/measures/view/MeasuresHistogramNode.ts (date 1712001988738) @@ -151,14 +151,15 @@ this.chartClipLayer.addChild( intervalToolHighlight ); intervalToolHighlight.moveToBack(); const updateIntervalToolHighlight = () => { - const x1 = this.chartTransform.modelToViewX( intervalTool.edge1 ); - const x2 = this.chartTransform.modelToViewX( intervalTool.edge2 ); + const x1 = this.chartTransform.modelToViewX( intervalTool.edge1Property.value ); + const x2 = this.chartTransform.modelToViewX( intervalTool.edge2Property.value ); const min = Math.min( x1, x2 ); const max = Math.max( x1, x2 ); intervalToolHighlight.setRect( min, 0, max - min, this.chartTransform.viewHeight ); }; updateIntervalToolHighlight(); - intervalTool.changedEmitter.addListener( updateIntervalToolHighlight ); + intervalTool.edge1Property.link( updateIntervalToolHighlight ); + intervalTool.edge2Property.link( updateIntervalToolHighlight ); meanDistanceProperty.link( mean => { textVBox.setChildren( mean === null ? [ noDataLabel ] : dataLabels ); Index: js/measures/view/IntervalToolNode.ts IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== diff --git a/js/measures/view/IntervalToolNode.ts b/js/measures/view/IntervalToolNode.ts --- a/js/measures/view/IntervalToolNode.ts (revision 587d552b841090333a894d7f837fb4584a8dfc8e) +++ b/js/measures/view/IntervalToolNode.ts (date 1712002411045) @@ -111,7 +111,7 @@ // This is a downstream Property (only updated in the update function) that is used for sonification only. // IntervalTool.centerXProperty may go out of range, so we use this Property to clamp the value. - const centerXSonifiedProperty = new NumberProperty( intervalTool.center ); + const centerXSonifiedProperty = new NumberProperty( intervalTool.centerProperty.value ); class DraggableShadedSphereNode extends AccessibleSlider( Node, 0 ) { public constructor( options: AccessibleSliderOptions ) { @@ -168,11 +168,14 @@ this.addChild( this.centerLineNode ); const getIntervalString = () => { - return Utils.toFixed( Math.abs( intervalTool.edge2 - intervalTool.edge1 ), 1 ); + return Utils.toFixed( Math.abs( intervalTool.edge2Property.value - intervalTool.edge1Property.value ), 1 ); }; const intervalProperty = new Property( getIntervalString() ); - intervalTool.changedEmitter.addListener( () => { + intervalTool.edge1Property.link( () => { + intervalProperty.value = getIntervalString(); + } ); + intervalTool.edge2Property.link( () => { intervalProperty.value = getIntervalString(); } ); @@ -227,8 +230,8 @@ this.addChild( readoutVBox ); const update = () => { - const viewEdge1X = modelViewTransform.modelToViewX( intervalTool.edge1 ); - const viewEdge2X = modelViewTransform.modelToViewX( intervalTool.edge2 ); + const viewEdge1X = modelViewTransform.modelToViewX( intervalTool.edge1Property.value ); + const viewEdge2X = modelViewTransform.modelToViewX( intervalTool.edge2Property.value ); const SPHERE_Y = modelViewTransform.modelToViewY( 18 ); const ARROW_Y = modelViewTransform.modelToViewY( 14.5 ); @@ -255,11 +258,13 @@ readoutVBox.top = ARROW_Y - intervalReadout.height / 2; // Update the downstream Property which is only used for sonification. - centerXSonifiedProperty.value = intervalTool.center; + centerXSonifiedProperty.value = intervalTool.centerProperty.value; }; intervalTool.dataFractionProperty.link( update ); - intervalTool.changedEmitter.addListener( update ); + intervalTool.edge1Property.link( update ); + intervalTool.edge2Property.link( update ); + update(); percentPatternProperty.link( update ); intervalReadoutStringProperty.link( update ); Index: js/measures/model/IntervalTool.ts IDEA additional info: Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP <+>UTF-8 =================================================================== diff --git a/js/measures/model/IntervalTool.ts b/js/measures/model/IntervalTool.ts --- a/js/measures/model/IntervalTool.ts (revision 587d552b841090333a894d7f837fb4584a8dfc8e) +++ b/js/measures/model/IntervalTool.ts (date 1712003125284) @@ -11,8 +11,6 @@ */ import projectileDataLab from '../../projectileDataLab.js'; -import Emitter from '../../../../axon/js/Emitter.js'; -import Utils from '../../../../dot/js/Utils.js'; import PhetioObject, { PhetioObjectOptions } from '../../../../tandem/js/PhetioObject.js'; import optionize, { EmptySelfOptions } from '../../../../phet-core/js/optionize.js'; import WithRequired from '../../../../phet-core/js/types/WithRequired.js'; @@ -30,13 +28,6 @@ export default class IntervalTool extends PhetioObject { - // Edge 1 and edge 2 are the positions of the left and right edges of the interval tool, in no particular order. - private _edge1 = DEFAULT_EDGE_1; - private _edge2 = DEFAULT_EDGE_2; - - // Emits when the interval tool changes - public readonly changedEmitter = new Emitter(); - // The fraction of data within the interval tool public readonly dataFractionProperty: Property; @@ -60,7 +51,7 @@ super( options ); - this.edge1Property = new NumberProperty( this._edge1, { + this.edge1Property = new NumberProperty( DEFAULT_EDGE_1, { range: new Range( 0, PDLConstants.MAX_FIELD_DISTANCE ), tandem: providedOptions.tandem.createTandem( 'edge1Property' ), units: 'm', @@ -69,7 +60,7 @@ } } ); - this.edge2Property = new NumberProperty( this._edge2, { + this.edge2Property = new NumberProperty( DEFAULT_EDGE_2, { range: new Range( 0, PDLConstants.MAX_FIELD_DISTANCE ), tandem: providedOptions.tandem.createTandem( 'edge2Property' ), units: 'm', @@ -79,21 +70,59 @@ } ); // This one is not PhET-iO instrumented, to avoid bounds and circularity issues. Clients should use edge1Property and edge2Property. - this.centerProperty = new NumberProperty( this.center, { + this.centerProperty = new NumberProperty( ( DEFAULT_EDGE_1 + DEFAULT_EDGE_2 ) / 2, { reentrant: true } ); - this.edge1Property.link( edge1 => { - this.edge1 = edge1; - } ); + this.centerProperty.lazyLink( ( center, oldCenter ) => { + + const delta = center - oldCenter; + + let edge1 = this.edge1Property.value; + let edge2 = this.edge2Property.value; + const separation = edge2 - edge1; + edge1 += delta; + edge2 += delta; + + const min = 0; + const max = PDLConstants.MAX_FIELD_DISTANCE; + + if ( edge1 > max ) { + edge1 = max; + edge2 = max + separation; + } + + if ( edge2 > max ) { + edge2 = max; + edge1 = max - separation; + } - this.edge2Property.link( edge2 => { - this.edge2 = edge2; - } ); + if ( edge1 < min ) { + edge1 = min; + edge2 = min + separation; + } + + if ( edge2 < min ) { + edge2 = min; + edge1 = min - separation; + } - this.centerProperty.link( center => { - this.center = center; + this.edge1Property.value = edge1; + this.edge2Property.value = edge2; + // this.notifyChanged(); } ); + + // this.edge1Property.link( edge1 => { + // this.edge1 = edge1; + // } ); + // + // this.edge2Property.link( edge2 => { + // this.edge2 = edge2; + // } ); + // + // this.centerProperty.link( center => { + // this.center = center; + // } ); this.dataFractionProperty = new NumberProperty( 0, { tandem: options.tandem.createTandem( 'dataFractionProperty' ), @@ -101,90 +130,41 @@ phetioDocumentation: 'The fraction of data within the interval tool', phetioReadOnly: true } ); - - this.changedEmitter = new Emitter(); } public reset(): void { - this._edge1 = DEFAULT_EDGE_1; - this._edge2 = DEFAULT_EDGE_2; - - this.notifyChanged(); - } - - public set edge1( value: number ) { - const clamped = Utils.clamp( value, 0, PDLConstants.MAX_FIELD_DISTANCE ); - if ( clamped !== this.edge1 ) { - this._edge1 = clamped; - this.notifyChanged(); - } - } - - public get edge1(): number { - return this._edge1; - } - - public set edge2( value: number ) { - const clamped = Utils.clamp( value, 0, PDLConstants.MAX_FIELD_DISTANCE ); - if ( clamped !== this._edge2 ) { - this._edge2 = clamped; - this.notifyChanged(); - } - } + // this._edge1 = DEFAULT_EDGE_1; + // this._edge2 = DEFAULT_EDGE_2; + this.edge1Property.reset(); + this.edge2Property.reset(); - public get edge2(): number { - return this._edge2; + // this.notifyChanged(); } - public get center(): number { - return ( this._edge1 + this._edge2 ) / 2; - } + // public set edge1( value: number ) { + // const clamped = Utils.clamp( value, 0, PDLConstants.MAX_FIELD_DISTANCE ); + // if ( clamped !== this.edge1 ) { + // this._edge1 = clamped; + // this.notifyChanged(); + // } + // } + // + // public get edge1(): number { + // return this._edge1; + // } + // + // public set edge2( value: number ) { + // const clamped = Utils.clamp( value, 0, PDLConstants.MAX_FIELD_DISTANCE ); + // if ( clamped !== this._edge2 ) { + // this._edge2 = clamped; + // this.notifyChanged(); + // } + // } + // + // public get edge2(): number { + // return this._edge2; + // } - public set center( value: number ) { - if ( value !== this.center ) { - const delta = value - this.center; - const separation = this._edge2 - this._edge1; - this._edge1 += delta; - this._edge2 += delta; - - const min = 0; - const max = PDLConstants.MAX_FIELD_DISTANCE; - - if ( this.edge1 > max ) { - this._edge1 = max; - this._edge2 = max + separation; - } - - if ( this._edge2 > max ) { - this._edge2 = max; - this._edge1 = max - separation; - } - - if ( this.edge1 < min ) { - this._edge1 = min; - this._edge2 = min + separation; - } - - if ( this._edge2 < min ) { - this._edge2 = min; - this._edge1 = min - separation; - } - - this.notifyChanged(); - } - } - - // When the edges or center of the interval tool change, notify the listeners - private notifyChanged(): void { - - // Update the downstream Properties which are only used for sonification. - // Only update the Property values once everything is fully in-sync. - this.edge1Property.value = this._edge1; - this.edge2Property.value = this._edge2; - this.centerProperty.value = this.center; - - this.changedEmitter.emit(); - } } projectileDataLab.register( 'IntervalTool', IntervalTool ); \ No newline at end of file ```
samreid commented 3 months ago

@matthew-blackman and I committed the proposed strategy and it seems to work well. No more crashing, CT is passing again. We would like to leave this issue open for QA to verify in RC.1. Not sure if there is more to do than that.

matthew-blackman commented 3 months ago

I fixed a bug that was causing the interval tool readout to stay at 0%. The updates here are a significant improvement to the code, and the interval tool is working well in my testing. Nice work!

matthew-blackman commented 3 months ago

This will need some QA testing during RC 1. I don't see any remaining work to be done in this issue. Closing.