Open hpinkos opened 5 years ago
@lilleyse are you seeing this test failure? I'm seeing it in both Chrome and Firefox. I haven't checked the other browsers yet.
The test fails at this commit between 1.37 and 1.38. Not sure why it's suddenly failing now.
https://github.com/AnalyticalGraphicsInc/cesium/commit/809fa27f91fd8f387884cdc74b619cc802449325
I might have to pass this off to someone else more familiar with the polyline collection.
Doesn't that change fix what the test is supposed to be testing for?
Maybe? It doesn't seem like the test should fail though. If you change CesiumMath.SIXTY_FOUR_KILOBYTES
to 1
in the test it passes leading me to think there's a bug.
Well, if it's failing in previous releases, it doesn't have to hold up this release. Something must have changed outside of our code base, like a browser issue. It definitely didn't fail when I released 1.55, but I just checked out that tag and it fails now.
I'm going to label this next release
so we can look at it before the July release
@hpinkos @lilleyse Is this going to get looked at before Monday?
Probably not by either of us. Ok to push.
I changed the priority to priority - high
It appears to be something that changed at the browser level, not in our code, so we haven't introduced a breaking change that needs addressing by next release
However, obviously we don't want test failures in master so this should be looked at soon
Ran into this while doing the 1.61 release. It passes fine in Chrome, but errors in Edge and Firefox.
I'm seeing this failure in master (afff7a4d) right now on Chrome, Windows. Is it still inconsistent for other people?
These tests fail in Chrome for me:
The first one also fails in Firefox for me, but the other two are fine there. I can't get the Jasmine page to render in Edge at all, it just gives a totally useless SCRIPT5022: SCRIPT5022: Syntax error
I'm seeing this failure in Firefox only while doing the 1.73 release. My Firefox is using my Intel GPU while Chrome is using the NVidia one, so that could be the cause rather than the browser. In any case, I'm not going to let this hold up the release.
Sorry it's not Scene/PolylineCollection renders more than 64K vertices of different polylines
that is failing in Firefox, but rather Scene/PolylineCollection renders with model matrix
. The other two mentioned by @thw0rted pass for me in both browsers. Also, when I switch Firefox to use my NVidia GPU, the test passes.
Long story short, in Firefox on my system at least, Scene/PolylineCollection renders with model matrix
fails when run with my Intel UHD Graphics 630 but passes with my NVidia GTX 1650.
That's interesting, Tim, because my situation is exactly backwards: Firefox on NVidia, Chrome on Intel. So maybe the last two bullets in my previous post are particular to Intel GPUs?
Still failing
I don't think this has come up during releases for the past while and I can't reproduce on an Intel mac in Chrome or Firefox. I'll close this for now.
@ebogo1 I finally got a chance to test again and I still get this error. Full output of npm run test
:
1) applies show style to a tileset with glTF content
Scene/Cesium3DTileset
Error: Expected not to render [0,0,0,255], but actually rendered [0,0,0,255].
at <Jasmine>
at Specs/Scene/Cesium3DTilesetSpec.js:2705:25
at Promise.then (Source/ThirdParty/when.js:196:34)
at Source/ThirdParty/when.js:297:13
2) applies show style to a tileset with glb content
Scene/Cesium3DTileset
Error: Expected not to render [0,0,0,255], but actually rendered [0,0,0,255].
at <Jasmine>
at Specs/Scene/Cesium3DTilesetSpec.js:2720:25
at Promise.then (Source/ThirdParty/when.js:196:34)
at Source/ThirdParty/when.js:297:13
3) applies color style to tileset with glTF content
Scene/Cesium3DTileset
Error: Expected 0 to be greater than 0.
at <Jasmine>
at Specs/Scene/Cesium3DTilesetSpec.js:2735:25
at compare (Specs/addDefaultMatchers.js:292:13)
at <Jasmine>
Error: Expected 0 to be greater than 0.
at <Jasmine>
at Specs/Scene/Cesium3DTilesetSpec.js:2746:25
at compare (Specs/addDefaultMatchers.js:292:13)
at <Jasmine>
Error: Expected 0 to be greater than 0.
at <Jasmine>
at Specs/Scene/Cesium3DTilesetSpec.js:2747:25
at compare (Specs/addDefaultMatchers.js:292:13)
at <Jasmine>
4) applies color style to tileset with glb content
Scene/Cesium3DTileset
Error: Expected 0 to be greater than 0.
at <Jasmine>
at Specs/Scene/Cesium3DTilesetSpec.js:2735:25
at compare (Specs/addDefaultMatchers.js:292:13)
at <Jasmine>
Error: Expected 0 to be greater than 0.
at <Jasmine>
at Specs/Scene/Cesium3DTilesetSpec.js:2746:25
at compare (Specs/addDefaultMatchers.js:292:13)
at <Jasmine>
Error: Expected 0 to be greater than 0.
at <Jasmine>
at Specs/Scene/Cesium3DTilesetSpec.js:2747:25
at compare (Specs/addDefaultMatchers.js:292:13)
at <Jasmine>
5) renders with model matrix
Scene/PolylineCollection
Error: Expected to render [0,0,0,255], but actually rendered [255,255,255,255].
at <Jasmine>
at Specs/Scene/PolylineCollectionSpec.js:1592:21
at UserContext.<anonymous> (Specs/customizeJasmine.js:40:24)
at <Jasmine>
6) stops the render loop when render throws
Widgets/CesiumWidget/CesiumWidget
Error: Timeout - Async function did not complete within 30000ms (set by jasmine.DEFAULT_TIMEOUT_INTERVAL)
at <Jasmine>
7) shows the error panel when render throws
Widgets/CesiumWidget/CesiumWidget
Error: Timeout - Async function did not complete within 30000ms (set by jasmine.DEFAULT_TIMEOUT_INTERVAL)
at <Jasmine>
8) does not show the error panel if disabled
Widgets/CesiumWidget/CesiumWidget
Error: Timeout - Async function did not complete within 30000ms (set by jasmine.DEFAULT_TIMEOUT_INTERVAL)
at <Jasmine>
9) stops the render loop when render throws
Widgets/Viewer/Viewer
Error: Timeout - Async function did not complete within 30000ms (set by jasmine.DEFAULT_TIMEOUT_INTERVAL)
at <Jasmine>
10) shows the error panel when render throws
Widgets/Viewer/Viewer
Error: Timeout - Async function did not complete within 30000ms (set by jasmine.DEFAULT_TIMEOUT_INTERVAL)
at <Jasmine>
11) does not show the error panel if disabled
Widgets/Viewer/Viewer
Error: Timeout - Async function did not complete within 30000ms (set by jasmine.DEFAULT_TIMEOUT_INTERVAL)
at <Jasmine>
That's Chrome latest, Win10, on Intel HD 630 (iGPU). I ran again in Firefox latest, on NVidia 1060 (dGPU):
1) draws with a cube map while allowing color profiles
Renderer/CubeMap
Expected context to render 0,59,0,255, but rendered: 0,58,2,255
<Jasmine>
expectCubeMapFaces@Specs/Renderer/CubeMapSpec.js:63:12
@Specs/Renderer/CubeMapSpec.js:340:25
customizeJasmine/window.it/<@Specs/customizeJasmine.js:40:24
<Jasmine>
Expected context to render 193,0,0,255, but rendered: 192,2,1,255
<Jasmine>
expectCubeMapFaces@Specs/Renderer/CubeMapSpec.js:63:12
@Specs/Renderer/CubeMapSpec.js:340:25
customizeJasmine/window.it/<@Specs/customizeJasmine.js:40:24
<Jasmine>
Expected context to render 0,59,0,255, but rendered: 0,58,2,255
<Jasmine>
expectCubeMapFaces@Specs/Renderer/CubeMapSpec.js:63:12
@Specs/Renderer/CubeMapSpec.js:340:25
customizeJasmine/window.it/<@Specs/customizeJasmine.js:40:24
<Jasmine>
Expected context to render 193,0,0,255, but rendered: 192,2,1,255
<Jasmine>
expectCubeMapFaces@Specs/Renderer/CubeMapSpec.js:63:12
@Specs/Renderer/CubeMapSpec.js:340:25
customizeJasmine/window.it/<@Specs/customizeJasmine.js:40:24
<Jasmine>
Expected context to render 0,59,0,255, but rendered: 0,58,2,255
<Jasmine>
expectCubeMapFaces@Specs/Renderer/CubeMapSpec.js:63:12
@Specs/Renderer/CubeMapSpec.js:340:25
customizeJasmine/window.it/<@Specs/customizeJasmine.js:40:24
<Jasmine>
Expected context to render 193,0,0,255, but rendered: 192,2,1,255
<Jasmine>
expectCubeMapFaces@Specs/Renderer/CubeMapSpec.js:63:12
@Specs/Renderer/CubeMapSpec.js:340:25
customizeJasmine/window.it/<@Specs/customizeJasmine.js:40:24
<Jasmine>
2) applies show style to a tileset with glTF content
Scene/Cesium3DTileset
Expected not to render [0,0,0,255], but actually rendered [0,0,0,255].
<Jasmine>
@Specs/Scene/Cesium3DTilesetSpec.js:2705:25
when</</fulfilled/p<@Source/ThirdParty/when.js:196:34
when</</defer/_then/<@Source/ThirdParty/when.js:297:13
processQueue@Source/ThirdParty/when.js:647:11
_resolve@Source/ThirdParty/when.js:333:16
promiseResolve@Source/ThirdParty/when.js:359:11
when</</fulfilled/p<@Source/ThirdParty/when.js:196:34
when</</defer/_then/<@Source/ThirdParty/when.js:298:7
processQueue@Source/ThirdParty/when.js:647:11
_resolve@Source/ThirdParty/when.js:333:16
promiseResolve@Source/ThirdParty/when.js:359:11
poller@Specs/pollToPromise.js:26:16
3) applies show style to a tileset with glb content
Scene/Cesium3DTileset
Expected not to render [0,0,0,255], but actually rendered [0,0,0,255].
<Jasmine>
@Specs/Scene/Cesium3DTilesetSpec.js:2720:25
when</</fulfilled/p<@Source/ThirdParty/when.js:196:34
when</</defer/_then/<@Source/ThirdParty/when.js:297:13
processQueue@Source/ThirdParty/when.js:647:11
_resolve@Source/ThirdParty/when.js:333:16
promiseResolve@Source/ThirdParty/when.js:359:11
when</</fulfilled/p<@Source/ThirdParty/when.js:196:34
when</</defer/_then/<@Source/ThirdParty/when.js:298:7
processQueue@Source/ThirdParty/when.js:647:11
_resolve@Source/ThirdParty/when.js:333:16
promiseResolve@Source/ThirdParty/when.js:359:11
poller@Specs/pollToPromise.js:26:16
4) applies color style to tileset with glTF content
Scene/Cesium3DTileset
Expected 0 to be greater than 0.
<Jasmine>
expectColorStyle/<@Specs/Scene/Cesium3DTilesetSpec.js:2735:25
compare@Specs/addDefaultMatchers.js:292:21
<Jasmine>
expectColorStyle@Specs/Scene/Cesium3DTilesetSpec.js:2732:21
@Specs/Scene/Cesium3DTilesetSpec.js:2793:27
when</</fulfilled/p<@Source/ThirdParty/when.js:196:34
when</</defer/_then/<@Source/ThirdParty/when.js:297:13
processQueue@Source/ThirdParty/when.js:647:11
_resolve@Source/ThirdParty/when.js:333:16
promiseResolve@Source/ThirdParty/when.js:359:11
when</</fulfilled/p<@Source/ThirdParty/when.js:196:34
when</</defer/_then/<@Source/ThirdParty/when.js:298:7
processQueue@Source/ThirdParty/when.js:647:11
_resolve@Source/ThirdParty/when.js:333:16
promiseResolve@Source/ThirdParty/when.js:359:11
poller@Specs/pollToPromise.js:26:16
Expected 0 to be greater than 0.
<Jasmine>
expectColorStyle/<@Specs/Scene/Cesium3DTilesetSpec.js:2746:25
compare@Specs/addDefaultMatchers.js:292:21
<Jasmine>
expectColorStyle@Specs/Scene/Cesium3DTilesetSpec.js:2744:21
@Specs/Scene/Cesium3DTilesetSpec.js:2793:27
when</</fulfilled/p<@Source/ThirdParty/when.js:196:34
when</</defer/_then/<@Source/ThirdParty/when.js:297:13
processQueue@Source/ThirdParty/when.js:647:11
_resolve@Source/ThirdParty/when.js:333:16
promiseResolve@Source/ThirdParty/when.js:359:11
when</</fulfilled/p<@Source/ThirdParty/when.js:196:34
when</</defer/_then/<@Source/ThirdParty/when.js:298:7
processQueue@Source/ThirdParty/when.js:647:11
_resolve@Source/ThirdParty/when.js:333:16
promiseResolve@Source/ThirdParty/when.js:359:11
poller@Specs/pollToPromise.js:26:16
Expected 0 to be greater than 0.
<Jasmine>
expectColorStyle/<@Specs/Scene/Cesium3DTilesetSpec.js:2747:25
compare@Specs/addDefaultMatchers.js:292:21
<Jasmine>
expectColorStyle@Specs/Scene/Cesium3DTilesetSpec.js:2744:21
@Specs/Scene/Cesium3DTilesetSpec.js:2793:27
when</</fulfilled/p<@Source/ThirdParty/when.js:196:34
when</</defer/_then/<@Source/ThirdParty/when.js:297:13
processQueue@Source/ThirdParty/when.js:647:11
_resolve@Source/ThirdParty/when.js:333:16
promiseResolve@Source/ThirdParty/when.js:359:11
when</</fulfilled/p<@Source/ThirdParty/when.js:196:34
when</</defer/_then/<@Source/ThirdParty/when.js:298:7
processQueue@Source/ThirdParty/when.js:647:11
_resolve@Source/ThirdParty/when.js:333:16
promiseResolve@Source/ThirdParty/when.js:359:11
poller@Specs/pollToPromise.js:26:16
5) applies color style to tileset with glb content
Scene/Cesium3DTileset
Expected 0 to be greater than 0.
<Jasmine>
expectColorStyle/<@Specs/Scene/Cesium3DTilesetSpec.js:2735:25
compare@Specs/addDefaultMatchers.js:292:21
<Jasmine>
expectColorStyle@Specs/Scene/Cesium3DTilesetSpec.js:2732:21
@Specs/Scene/Cesium3DTilesetSpec.js:2802:27
when</</fulfilled/p<@Source/ThirdParty/when.js:196:34
when</</defer/_then/<@Source/ThirdParty/when.js:297:13
processQueue@Source/ThirdParty/when.js:647:11
_resolve@Source/ThirdParty/when.js:333:16
promiseResolve@Source/ThirdParty/when.js:359:11
when</</fulfilled/p<@Source/ThirdParty/when.js:196:34
when</</defer/_then/<@Source/ThirdParty/when.js:298:7
processQueue@Source/ThirdParty/when.js:647:11
_resolve@Source/ThirdParty/when.js:333:16
promiseResolve@Source/ThirdParty/when.js:359:11
poller@Specs/pollToPromise.js:26:16
Expected 0 to be greater than 0.
<Jasmine>
expectColorStyle/<@Specs/Scene/Cesium3DTilesetSpec.js:2746:25
compare@Specs/addDefaultMatchers.js:292:21
<Jasmine>
expectColorStyle@Specs/Scene/Cesium3DTilesetSpec.js:2744:21
@Specs/Scene/Cesium3DTilesetSpec.js:2802:27
when</</fulfilled/p<@Source/ThirdParty/when.js:196:34
when</</defer/_then/<@Source/ThirdParty/when.js:297:13
processQueue@Source/ThirdParty/when.js:647:11
_resolve@Source/ThirdParty/when.js:333:16
promiseResolve@Source/ThirdParty/when.js:359:11
when</</fulfilled/p<@Source/ThirdParty/when.js:196:34
when</</defer/_then/<@Source/ThirdParty/when.js:298:7
processQueue@Source/ThirdParty/when.js:647:11
_resolve@Source/ThirdParty/when.js:333:16
promiseResolve@Source/ThirdParty/when.js:359:11
poller@Specs/pollToPromise.js:26:16
Expected 0 to be greater than 0.
<Jasmine>
expectColorStyle/<@Specs/Scene/Cesium3DTilesetSpec.js:2747:25
compare@Specs/addDefaultMatchers.js:292:21
<Jasmine>
expectColorStyle@Specs/Scene/Cesium3DTilesetSpec.js:2744:21
@Specs/Scene/Cesium3DTilesetSpec.js:2802:27
when</</fulfilled/p<@Source/ThirdParty/when.js:196:34
when</</defer/_then/<@Source/ThirdParty/when.js:297:13
processQueue@Source/ThirdParty/when.js:647:11
_resolve@Source/ThirdParty/when.js:333:16
promiseResolve@Source/ThirdParty/when.js:359:11
when</</fulfilled/p<@Source/ThirdParty/when.js:196:34
when</</defer/_then/<@Source/ThirdParty/when.js:298:7
processQueue@Source/ThirdParty/when.js:647:11
_resolve@Source/ThirdParty/when.js:333:16
promiseResolve@Source/ThirdParty/when.js:359:11
poller@Specs/pollToPromise.js:26:16
TOTAL: 5 FAILED, 13006 SUCCESS
(Sorry about the formatting, the Firefox webdriver doesn't seem to be as well supported as the Chrome one.)
As stated in previous comments, it looks like the subject failures only happen on Windows, when using an Intel GPU. Please re-open and test on a Windows machine.
Also: the "render loop" test failures wouldn't be caught by Travis because it runs with --webgl-stub
(full CLI is npm --silent run test -- --browsers ChromeCI --failTaskOnError --webgl-stub --release --suppressPassed
); maybe that's another ticket though?
In case it helps: I spent at least 15 minutes faffing around with the "--include" CLI option trying to get it to work before I remembered I can just change the spec I'm interested in to use fdescribe
, it cut my test run from 5+ minutes per browser to 1 minute on both browsers forCesium3DTileset
, or 30 seconds for PolylineCollection
.
TL;DR: change describe
to fdescribe
in Specs/Scene/PolylineCollectionSpec.js
and save yourself a lot of test time.
http://localhost:8080/Specs/SpecRunner.html?spec=Scene%2FPolylineCollection%20renders%20more%20than%2064K%20vertices%20of%20different%20polylines