Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Test failures in IE 11 #2860

Closed
mramato opened this issue Jul 1, 2015 · 28 comments
Closed

Test failures in IE 11 #2860

mramato opened this issue Jul 1, 2015 · 28 comments

Comments

@mramato
Copy link
Contributor

mramato commented Jul 1, 2015

After #2859, there are still 5 test failures in IE 11 that we should investigate

Renderer/CubeMap draws with a cube map with premultiplied alpha
Renderer/Texture renders with premultiplied alpha
Scene/Pick drill picks multiple objects
Scene/Pick does not drill pick when show is false
Scene/Primitive can disable picking when asynchronous

@pjcozzi
Copy link
Contributor

pjcozzi commented Jan 4, 2016

With Cesium 1.17, there's two need test failures in IE 11:

  • Scene/WebMapServiceImageryProvider pickFeatures works with THREDDS XML format
  • Scene/WebMapServiceImageryProvider pickFeatures works with msGMLOutput format

@kring
Copy link
Member

kring commented Jan 4, 2016

@RacingTadpole can you take a look at this?

@RacingTadpole
Copy link
Contributor

Sure. For my future ref, I've just tried the tests in a Win8 IE10 environment, and get the error:
Failed: promise rejected: TypeError: Unable to get property 'value' of undefined or null reference. The offending code is in https://github.com/AnalyticalGraphicsInc/cesium/blob/master/Specs/Scene/WebMapServiceImageryProviderSpec.js#L559 and https://github.com/AnalyticalGraphicsInc/cesium/blob/master/Source/Scene/GetFeatureInfoFormat.js#L230 .
I'll take a look soon.

@RacingTadpole
Copy link
Contributor

Oops, sorry. Yes, I only fixed the two new failures, THREDDS XML and msGMLOutput.

@hpinkos
Copy link
Contributor

hpinkos commented Feb 1, 2016

New failures in 1.18:
Scene/DeviceOrientationCameraController rotates for alpha
Scene/DeviceOrientationCameraController rotates for beta
Scene/DeviceOrientationCameraController rotates for gamma

@bagnell?

@lilleyse
Copy link
Contributor

lilleyse commented Mar 1, 2016

The errors I see in 1.19:

These tests work when run individually:
Scene/Pick drill picks multiple objects
Scene/Pick does not drill pick when show is false

These tests are really close to the expected results, seems like precision / rounding issues.
Renderer/CubeMap draws with a cube map with premultiplied alpha
Renderer/Texture renders with premultiplied alpha

Renderer/CubeMap fails to generate mipmaps (width) is failing because IE does not support non-power-of-two cube maps (source)

@hpinkos
Copy link
Contributor

hpinkos commented Aug 1, 2016

New failure in 1.24
Scene/GroundPrimitive creating a synchronous primitive throws if initializeTerrainHeights wasn't called

@lilleyse
Copy link
Contributor

Failures in 1.25

From before:

Renderer/CubeMap draws with a cube map with premultiplied alpha
Renderer/Texture renders with premultiplied alpha
Scene/GroundPrimitive creating a synchronous primitive throws if initializeTerrainHeights wasn't called

New ones:
DataSources/KmlDataSource when a LineString is clamped to ground and tesselated, entity has a corridor geometry and ColorProperty (Object.assign not supported in IE11)

Widgets/Viewer/Viewer does not crash when tracking an object with a position property whose value is undefined.

These two only pass when run individually:
Scene/GeometryRendering WallGeometry pick
Scene/GeometryRendering Extruded PolygonGeometry pick

These all seem to be related:
DataSources/RectangleGeometryUpdater color material sets onTerrain to true
DataSources/RectangleGeometryUpdater fill is true sets onTerrain to true
DataSources/RectangleGeometryUpdater dynamic updater on terrain
DataSources/RectangleGeometryUpdater Checks that an entity without height and extrudedHeight and with a color material is on terrain
DataSources/PolygonGeometryUpdater color material sets onTerrain to true
DataSources/PolygonGeometryUpdater fill is true sets onTerrain to true
DataSources/PolygonGeometryUpdater dynamic updater on terrain
DataSources/PolygonGeometryUpdater Checks that a polygon without per position heights is on terrain
DataSources/PolygonGeometryUpdater Checks that an entity without height and extrudedHeight and with a color material is on terrain
DataSources/GeometryVisualizer StaticGroundGeometryColorBatch updates color attribute after rebuilding primitive
DataSources/EllipseGeometryUpdater color material sets onTerrain to true
DataSources/EllipseGeometryUpdater fill is true sets onTerrain to true
DataSources/EllipseGeometryUpdater dynamic updater on terrain
DataSources/EllipseGeometryUpdater Checks that an entity without height and extrudedHeight and with a color material is on terrain
DataSources/CorridorGeometryUpdater color material sets onTerrain to true
DataSources/CorridorGeometryUpdater fill is true sets onTerrain to true
DataSources/CorridorGeometryUpdater dynamic updater on terrain
DataSources/CorridorGeometryUpdater Checks that an entity without height and extrudedHeight and with a color material is on terrain

@lilleyse
Copy link
Contributor

lilleyse commented Sep 1, 2016

Now the only failures that happen consistently are:

Renderer/CubeMap draws with a cube map with premultiplied alpha
Renderer/Texture renders with premultiplied alpha

Other test fails when run with all, but pass when run individually.

@bagnell
Copy link
Contributor

bagnell commented Sep 30, 2016

Test failures in 1.26

Scene/LabelCollection can render after adding a label
Scene/GroundPrimitive renders with distance display condition per instance attribute

These tests pass when run individually:
Scene/GeometryRendering PolygonGeometry pick
Scene/GeometryRendering Extruded PolygonGeometry pick

@tfili
Copy link
Contributor

tfili commented Nov 28, 2016

New test failures in 1.28

DataSources/CorridorGeometryUpdater A time-varying color causes ground geometry to be dynamic
DataSources/EllipseGeometryUpdater A time-varying color causes ground geometry to be dynamic
DataSources/PolygonGeometryUpdater A time-varying color causes ground geometry to be dynamic
DataSources/RectangleGeometryUpdater A time-varying color causes ground geometry to be dynamic
Scene/LabelCollection renders label with distanceDisplayCondition

@bagnell I'm assuming the first 4 are because of lack of ground primitives in IE and the other one caused by the same issue as Scene/LabelCollection can render after adding a label?

@bagnell
Copy link
Contributor

bagnell commented Nov 28, 2016

I'm assuming the first 4 are because of lack of ground primitives in IE and the other one caused by the same issue as Scene/LabelCollection can render after adding a label

Yes, but don't we check if ground primitives are supported and fall back to regular primitives?

@tfili
Copy link
Contributor

tfili commented Nov 29, 2016

@bagnell That's exactly whats happening. It's falling back to a regular primitive. The test will get different results depending whether a Primitive or GroundPrimitive is used. Behavior is correct, the test is just broken for browsers without GroundPrimitive support.

@hpinkos
Copy link
Contributor

hpinkos commented Feb 1, 2017

New test failure: Renderer/Context get the fragment depth extension

There's also a bunch of tests that fail when you try to run all of the Scene tests at the same time. Looks like something is going weird with the context? RuntimeError: WebGL Error: CONTEXT_LOST_WEBGL lost: undefined(17408);
Those tests pass individually, however.

@lilleyse
Copy link
Contributor

lilleyse commented Mar 1, 2017

Errors I'm seeing now:

Core/loadCRN returns a promise that resolves to an compressed texture when the request loads - @bagnell can you check that crn textures are working in IE
Renderer/CubeMap fails to generate mipmaps (width)
Scene/GeometryRendering PolygonGeometry pick
Scene/GeometryRendering Extruded PolygonGeometry pick

And then many CONTEXT_LOST_WEBGL errors like above - all in PointPrimitiveCollection

@hpinkos
Copy link
Contributor

hpinkos commented Jul 31, 2017

New test failures for 1.36:

  • Scene/Expression constructs regex
  • Scene/Cesium3DTileset verify batched points statistics
  • Scene/Cesium3DTileset debugColorizeTiles for pnts with batch table
  • 7 Test failures in Scene/PointCloud3DTileContent
  • 15 test failures in Scene/ShadowMap

@pjcozzi
Copy link
Contributor

pjcozzi commented Dec 15, 2017

In the upcoming 1.41 release on Windows, IE 11, I just get:

  • Scene/Model renders textured box with embedded binary CRN texture
  • Scene/Model raises animation start, update, and stop events when removeOnStop is true

@hpinkos
Copy link
Contributor

hpinkos commented Mar 1, 2018

I'm seeing a ton of test failures for 1.43

  • DataSources/CzmlDataSource checks validation document
  • Renderer/freezeRenderState works as expected
  • Scene/ClassificationPrimitive renders with invert classification and an opaque color
  • Scene/GroundPrimitive renders with invert classification and an opaque color
  • Scene/PointCloud3DTileContent rebuilds shader style when expression changes
  • Scene/Vector3DTilePoints renders a point
  • 28 Geometry3DTileContent render tests
  • 12 Vector3DTileGeometry render tests
  • 15 test failures in Scene/ShadowMap

A lot of the failures look like this:
Expected to render [0,0,255,255], but actually rendered [[object Uint8Array]].
It seems like those should be pretty easy to fix

@shunter
Copy link
Contributor

shunter commented Mar 1, 2018

The validation document failure is strange. I see it too both in IE11 and Edge. Has this failed in previous releases? The failure is a tiny rounding error in two cartesians converted from spherical coordinates, but essentially it's doing the same operation twice and getting different results.

@hpinkos
Copy link
Contributor

hpinkos commented Mar 1, 2018

@shunter yeah that's really weird. it looks like it started failing in the 1.38 release

@hpinkos
Copy link
Contributor

hpinkos commented Mar 1, 2018

Actually, the same test fails in firefox too. I'm going to open a separate issue for that one

@lilleyse
Copy link
Contributor

lilleyse commented Apr 2, 2018

23 failures now. Some of them actually don't look too bad, makes me optimistic that we may eventually hit zero. This was run pre-Draco updates (https://github.com/AnalyticalGraphicsInc/cesium/pull/6405/files)

  • Renderer/freezeRenderState works as expected
  • Scene/Expression constructs regex
  • Core/CircleGeometry computing rectangle property
  • Scene/GoogleEarthEnterpriseImageryProvider resolves readyPromise
  • Scene/GoogleEarthEnterpriseImageryProvider resolves readyPromise with Resource
  • Scene/GoogleEarthEnterpriseImageryProvider returns false for hasAlphaChannel
  • Scene/GoogleEarthEnterpriseImageryProvider can provide a root tile
  • Widgets/CesiumWidget/CesiumWidget resizing triggers a render in requestRender mode
  • Scene/BillboardCollection picks a billboard using scaleByDistance
  • Scene/ClassificationPrimitive renders with invert classification and an opaque color
  • Scene/GroundPrimitive renders with invert classification and an opaque color
  • Scene/Model renders textured box with embedded binary CRN texture
  • Scene/Model raises animation start, update, and stop events when removeOnStop is true
  • Scene/Model throws runtime error when loading a gltf with uint32 indices if OES_element_index_uint is disabled
  • Scene/Model loads a glTF with KHR_draco_mesh_compression extension
  • Scene/Model loads a glTF with KHR_draco_mesh_compression extension with integer attributes
  • Scene/Model error decoding a draco compressed glTF causes model loading to fail
  • Scene/Model loads a draco compressed glTF and dequantizes in the shader
  • Scene/Model loads a draco compressed glTF and dequantizes in the shader, skipping generic attributes
  • Scene/PointCloud3DTileContent rebuilds shader style when expression changes
  • Scene/PointCloud3DTileContent Rebuilds shaders when clipping planes are enabled, change between union and intersection, or change count
  • Scene/Vector3DTilePoints renders a point
  • Renderer/CubeMap fails to generate mipmaps (width)

@hpinkos
Copy link
Contributor

hpinkos commented Oct 1, 2018

From the 1.50 release:

  • A bunch of dynamic DataSources/GeometryVisualizer tests Polygon Intervals and Availability broken in IE #7103
  • Scene/ClassificationPrimitive update throws when an incompatible Appearance is set (likely related to above)
  • Scene/ClassificationPrimitive renders with invert classification and an opaque color
  • Scene/GroundPrimitive renders with invert classification and an opaque color
  • Scene/Model renders textured box with embedded binary CRN texture
  • Scene/Pick drillPick can drill pick batched Primitives with show attribute
  • Scene/Pick drillPick can drill pick batched Primitives without show attribute
  • Scene/Pick pickFromRay picks the globe
  • Scene/Vector3DTileGeometry renders with inverted classification
  • Scene/Vector3DTilePoints renders a point
  • Scene/Vector3DTilePolygons renders with inverted classification

@lilleyse
Copy link
Contributor

lilleyse commented Nov 1, 2018

From the 1.51 release:

  • Renderer/freezeRenderState works as expected
  • Scene/Expression constructs regex
  • Widgets/CesiumWidget/CesiumWidget resizing triggers a render in requestRender mode
  • Scene/BillboardCollection picks a billboard using scaleByDistance
  • Scene/BillboardCollection picks a billboard using translucencyByDistance
  • Scene/ClassificationPrimitive renders with invert classification and an opaque color
  • Scene/ClassificationPrimitive update throws when an incompatible Appearance is set
  • Scene/Model renders textured box with embedded binary CRN texture
  • Scene/Model raises animation start, update, and stop events when removeOnStop is true
  • Scene/Model loads a glTF 2.0 with doubleSided set to true
  • Scene/Vector3DTileGeometry renders with inverted classification
  • Scene/Vector3DTilePolygons renders with inverted classification
  • Scene/Vector3DTilePoints renders a point
  • Widgets/Viewer/Viewer does not crash when tracking an object with a position property whose value is undefined.

These tests pass when run individually:

  • Scene/BillboardCollection picks a billboard using scaleByDistance
  • Scene/BillboardCollection picks a billboard using translucencyByDistance
  • Scene/Model raises animation start, update, and stop events when removeOnStop is true
  • Scene/Model loads a glTF 2.0 with doubleSided set to true

@likangning93
Copy link
Contributor

I'm seeing Scene/GroundPrimitive renders with invert classification and an opaque color in 1.51 as well, but that might be associated with Scene/ClassificationPrimitive renders with invert classification and an opaque color.

@mramato
Copy link
Contributor Author

mramato commented Nov 12, 2018

Just a reminder that we ow run IE11 tests as part of CI, so all non-webgl should be passing but aren't (15 failures): https://ci.appveyor.com/project/AnalyticalGraphics/cesium/

I'm not sure how useful this GitHub issue is anymore, unless we made a concerted effort to clean up WebGL IE11 failures.

@ggetz
Copy link
Contributor

ggetz commented Feb 1, 2019

New ones as of 1.54:

  • Core/EllipsoidRhumbLine intersection with longitude handles N-S lines with different longitude
  • Renderer/freezeRenderState works as expected
  • A host of Renderer/BuiltinFunctions relating to oct encoding/IBL
  • Renderer/CubeMap sub copies images to a cube map
  • Renderer/CubeMap sub copies array buffers to a cube map
  • Scene/BillboardCollection is picked
  • Scene/Cesium3DTileset most detailed height queries tests
  • Scene/Model renders textured box with embedded binary CRN texture
  • Scene/Pick drillPickFromRay tests
  • Scene/PolylineCollection renders with model matrix

@ggetz
Copy link
Contributor

ggetz commented Jan 25, 2022

Closing due to dropped support for IE11

@ggetz ggetz closed this as completed Jan 25, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests