Bug 1336712 - Drop test annotations and checks for Windows XP, Vista OS X < 10.9 and Android Gingerbread (2.3): dom. r?RyanVM draft
authorSebastian Hengst <archaeopteryx@coole-files.de>
Sat, 04 Feb 2017 13:44:35 +0100
changeset 478964 4e67943ea1fe3b2ed69cd830b11d2d6a78499108
parent 478963 e52dc8fc6a35841de115043c5a6ed8837f64d0bc
child 478965 dfe14bfb07e8a61e423887786b2c896206a085f4
push id44108
push userarchaeopteryx@coole-files.de
push dateSat, 04 Feb 2017 12:49:41 +0000
reviewersRyanVM
bugs1336712
milestone54.0a1
Bug 1336712 - Drop test annotations and checks for Windows XP, Vista OS X < 10.9 and Android Gingerbread (2.3): dom. r?RyanVM MozReview-Commit-ID: 3kfCseTS8Ze
dom/canvas/test/test_canvas.html
dom/canvas/test/webgl-conf/generated-mochitest.ini
dom/canvas/test/webgl-conf/mochitest-errata.ini
dom/canvas/test/webgl-mochitest/mochitest.ini
dom/media/mediasource/test/mochitest.ini
dom/media/test/mochitest.ini
dom/media/test/test_eme_request_notifications.html
dom/media/tests/mochitest/head.js
dom/media/tests/mochitest/pc.js
dom/media/tests/mochitest/test_getUserMedia_basicScreenshare.html
dom/media/tests/mochitest/test_getUserMedia_basicTabshare.html
dom/media/tests/mochitest/test_getUserMedia_basicWindowshare.html
dom/media/tests/mochitest/test_getUserMedia_scarySources.html
dom/media/tests/mochitest/test_peerConnection_basicScreenshare.html
dom/media/tests/mochitest/test_peerConnection_basicWindowshare.html
dom/media/webaudio/test/mochitest.ini
dom/performance/tests/test_worker_performance_now.js
dom/tests/mochitest/chrome/chrome.ini
dom/tests/mochitest/general/test_performance_now.html
--- a/dom/canvas/test/test_canvas.html
+++ b/dom/canvas/test/test_canvas.html
@@ -27,32 +27,16 @@ function IsLinux() {
         os = Cc["@mozilla.org/xre/app-info;1"]
           .getService(SpecialPowers.Ci.nsIXULRuntime).OS;
     } catch (e) {}
 
     return os.indexOf("Linux") == 0 &&
            navigator.appVersion.indexOf("Android") == -1;
 }
 
-function IsMacOSX10_5orOlder() {
-    var is105orOlder = false;
-
-    if (navigator.platform.indexOf("Mac") == 0) {
-        var version = Cc["@mozilla.org/system-info;1"]
-                        .getService(SpecialPowers.Ci.nsIPropertyBag2)
-                        .getProperty("version");
-        // the next line is correct: Mac OS 10.6 corresponds to Darwin version 10 !
-        // Mac OS 10.5 would be Darwin version 9. the |version| string we've got here
-        // is the Darwin version.
-        is105orOlder = (parseFloat(version) < 10.0);
-    }
-    return is105orOlder;
-}
-
-
 function IsAzureSkia() {
   var enabled = false;
   
   try {
     var backend = Cc["@mozilla.org/gfx/info;1"].getService(SpecialPowers.Ci.nsIGfxInfo).getInfo().AzureCanvasBackend;
     enabled = (backend == "skia");
   } catch (e) { }
 
@@ -5762,17 +5746,17 @@ isPixel(ctx, 80,25, 0,255,0,255, 2);
 <script>
 
 
 function test_2d_gradient_interpolate_overlap() {
 
 var canvas = document.getElementById('c215');
 var ctx = canvas.getContext('2d');
 
-if (!IsD2DEnabled() && !IsMacOSX10_5orOlder()) {
+if (!IsD2DEnabled()) {
     // On D2D the different nature of how gradients
     // are drawn makes it so we cannot guarantee these stops are completely
     // hard.
 
     // On OS X 10.5 quartz is confused by the overlapping stops: Bug #715235
     canvas.width = 200;
     var g = ctx.createLinearGradient(0, 0, 200, 0);
     g.addColorStop(0, '#f00');
@@ -5822,24 +5806,21 @@ for (var p = 0; p < ps.length; ++p)
         g.addColorStop(ps[p], '#0f0');
         for (var i = 0; i < 15; ++i)
                 g.addColorStop(ps[p], '#f00');
         g.addColorStop(ps[p], '#0f0');
 }
 ctx.fillStyle = g;
 ctx.fillRect(0, 0, 100, 50);
 
-if (!IsMacOSX10_5orOlder()) {
-    // On OS X 10.5 quartz is confused by the overlapping stops: Bug #715235
-    isPixel(ctx, 1,25, 0,255,0,255, 0);
-    isPixel(ctx, 30,25, 0,255,0,255, 0);
-    isPixel(ctx, 40,25, 0,255,0,255, 0);
-    isPixel(ctx, 60,25, 0,255,0,255, 0);
-    isPixel(ctx, 80,25, 0,255,0,255, 0);
-}
+isPixel(ctx, 1,25, 0,255,0,255, 0);
+isPixel(ctx, 30,25, 0,255,0,255, 0);
+isPixel(ctx, 40,25, 0,255,0,255, 0);
+isPixel(ctx, 60,25, 0,255,0,255, 0);
+isPixel(ctx, 80,25, 0,255,0,255, 0);
 
 }
 </script>
 
 <!-- [[[ test_2d.gradient.interpolate.solid.html ]]] -->
 
 <p>Canvas test: 2d.gradient.interpolate.solid</p>
 <canvas id="c217" width="100" height="50"><p class="fallback">FAIL (fallback content)</p></canvas>
--- a/dom/canvas/test/webgl-conf/generated-mochitest.ini
+++ b/dom/canvas/test/webgl-conf/generated-mochitest.ini
@@ -7542,17 +7542,16 @@ skip-if = (os == 'android')
 [generated/test_conformance__canvas__texture-bindings-unaffected-on-resize.html]
 [generated/test_conformance__canvas__to-data-url-test.html]
 [generated/test_conformance__canvas__viewport-unchanged-upon-resize.html]
 skip-if = (os == 'mac')
 [generated/test_conformance__context__constants-and-properties.html]
 [generated/test_conformance__context__context-attribute-preserve-drawing-buffer.html]
 [generated/test_conformance__context__context-attributes-alpha-depth-stencil-antialias.html]
 skip-if = (os == 'b2g') || (os == 'linux') || (os == 'android')
-fail-if = (os == 'mac' && os_version == '10.6')
 [generated/test_conformance__context__context-creation-and-destruction.html]
 [generated/test_conformance__context__context-creation.html]
 skip-if = (os == 'android')
 [generated/test_conformance__context__context-eviction-with-garbage-collection.html]
 skip-if = (os == 'android')
 [generated/test_conformance__context__context-hidden-alpha.html]
 [generated/test_conformance__context__context-lost-restored.html]
 [generated/test_conformance__context__context-lost.html]
@@ -7603,17 +7602,16 @@ fail-if = (os == 'android')
 [generated/test_conformance__extensions__oes-texture-half-float-with-image.html]
 fail-if = (os == 'android')
 [generated/test_conformance__extensions__oes-texture-half-float-with-video.html]
 fail-if = (os == 'mac') || (os == 'android') || (os == 'linux') || (os == 'win')
 [generated/test_conformance__extensions__oes-texture-half-float.html]
 fail-if = (os == 'mac') || (os == 'win') || (os == 'android') || (os == 'linux')
 [generated/test_conformance__extensions__oes-vertex-array-object-bufferData.html]
 [generated/test_conformance__extensions__oes-vertex-array-object.html]
-skip-if = (os == 'mac' && os_version == '10.6')
 fail-if = (os == 'mac') || (os == 'linux') || (os == 'win')
 [generated/test_conformance__extensions__webgl-compressed-texture-atc.html]
 [generated/test_conformance__extensions__webgl-compressed-texture-etc.html]
 [generated/test_conformance__extensions__webgl-compressed-texture-pvrtc.html]
 [generated/test_conformance__extensions__webgl-compressed-texture-s3tc-srgb.html]
 [generated/test_conformance__extensions__webgl-compressed-texture-s3tc.html]
 [generated/test_conformance__extensions__webgl-compressed-texture-size-limit.html]
 skip-if = (os == 'win')
@@ -7696,21 +7694,18 @@ skip-if = (os == 'linux') || (os == 'mac
 [generated/test_conformance__glsl__constructors__glsl-construct-ivec2.html]
 skip-if = (os == 'linux')
 [generated/test_conformance__glsl__constructors__glsl-construct-ivec3.html]
 skip-if = (os == 'linux') || (os == 'mac') || (os == 'android')
 [generated/test_conformance__glsl__constructors__glsl-construct-ivec4.html]
 skip-if = (os == 'linux') || (os == 'mac')
 [generated/test_conformance__glsl__constructors__glsl-construct-mat2.html]
 skip-if = ((os == 'linux') && asan)
-fail-if = (os == 'mac' && os_version == '10.6')
 [generated/test_conformance__glsl__constructors__glsl-construct-mat3.html]
-fail-if = (os == 'mac' && os_version == '10.6')
 [generated/test_conformance__glsl__constructors__glsl-construct-mat4.html]
-fail-if = (os == 'mac' && os_version == '10.6')
 [generated/test_conformance__glsl__constructors__glsl-construct-vec-mat-corner-cases.html]
 skip-if = (os == 'linux')
 [generated/test_conformance__glsl__constructors__glsl-construct-vec-mat-index.html]
 skip-if = (os == 'mac') || (os == 'win') || (os == 'linux') || (os == 'android')
 [generated/test_conformance__glsl__constructors__glsl-construct-vec2.html]
 [generated/test_conformance__glsl__constructors__glsl-construct-vec3.html]
 skip-if = (os == 'linux')
 [generated/test_conformance__glsl__constructors__glsl-construct-vec4.html]
@@ -7816,29 +7811,27 @@ skip-if = (os == 'android')
 [generated/test_conformance__glsl__implicit__ternary_ivec2_vec2.vert.html]
 [generated/test_conformance__glsl__implicit__ternary_ivec3_vec3.vert.html]
 [generated/test_conformance__glsl__implicit__ternary_ivec4_vec4.vert.html]
 [generated/test_conformance__glsl__literals__float_literal.vert.html]
 [generated/test_conformance__glsl__literals__literal_precision.html]
 [generated/test_conformance__glsl__literals__overflow_leak.vert.html]
 [generated/test_conformance__glsl__matrices__glsl-mat3-construction.html]
 [generated/test_conformance__glsl__matrices__glsl-mat4-to-mat3.html]
-fail-if = (os == 'mac' && os_version == '10.6')
 [generated/test_conformance__glsl__matrices__matrix-compound-multiply.html]
 [generated/test_conformance__glsl__misc__attrib-location-length-limits.html]
 [generated/test_conformance__glsl__misc__boolean_precision.html]
 [generated/test_conformance__glsl__misc__const-variable-initialization.html]
 [generated/test_conformance__glsl__misc__embedded-struct-definitions-forbidden.html]
 [generated/test_conformance__glsl__misc__empty-declaration.html]
 [generated/test_conformance__glsl__misc__empty_main.vert.html]
 [generated/test_conformance__glsl__misc__expression-list-in-declarator-initializer.html]
 [generated/test_conformance__glsl__misc__gl_position_unset.vert.html]
 [generated/test_conformance__glsl__misc__global-variable-init.html]
 [generated/test_conformance__glsl__misc__glsl-function-nodes.html]
-fail-if = (os == 'mac' && os_version == '10.6')
 [generated/test_conformance__glsl__misc__glsl-long-variable-names.html]
 [generated/test_conformance__glsl__misc__glsl-vertex-branch.html]
 [generated/test_conformance__glsl__misc__large-loop-compile.html]
 [generated/test_conformance__glsl__misc__non-ascii-comments.vert.html]
 [generated/test_conformance__glsl__misc__non-ascii.vert.html]
 [generated/test_conformance__glsl__misc__re-compile-re-link.html]
 fail-if = (os == 'android' && android_version == '10')
 [generated/test_conformance__glsl__misc__sequence-operator-returns-constant.html]
@@ -8189,21 +8182,18 @@ fail-if = (os == 'android')
 [generated/test_conformance__ogles__GL__smoothstep__smoothstep_001_to_006.html]
 [generated/test_conformance__ogles__GL__sqrt__sqrt_001_to_006.html]
 [generated/test_conformance__ogles__GL__step__step_001_to_006.html]
 [generated/test_conformance__ogles__GL__struct__struct_001_to_008.html]
 [generated/test_conformance__ogles__GL__struct__struct_009_to_016.html]
 [generated/test_conformance__ogles__GL__struct__struct_017_to_024.html]
 [generated/test_conformance__ogles__GL__struct__struct_025_to_032.html]
 [generated/test_conformance__ogles__GL__struct__struct_033_to_040.html]
-fail-if = (os == 'mac' && os_version == '10.6')
 [generated/test_conformance__ogles__GL__struct__struct_041_to_048.html]
-fail-if = (os == 'mac' && os_version == '10.6')
 [generated/test_conformance__ogles__GL__struct__struct_049_to_056.html]
-fail-if = (os == 'mac' && os_version == '10.6')
 [generated/test_conformance__ogles__GL__swizzlers__swizzlers_001_to_008.html]
 [generated/test_conformance__ogles__GL__swizzlers__swizzlers_009_to_016.html]
 [generated/test_conformance__ogles__GL__swizzlers__swizzlers_017_to_024.html]
 [generated/test_conformance__ogles__GL__swizzlers__swizzlers_025_to_032.html]
 [generated/test_conformance__ogles__GL__swizzlers__swizzlers_033_to_040.html]
 [generated/test_conformance__ogles__GL__swizzlers__swizzlers_041_to_048.html]
 [generated/test_conformance__ogles__GL__swizzlers__swizzlers_049_to_056.html]
 [generated/test_conformance__ogles__GL__swizzlers__swizzlers_057_to_064.html]
@@ -8390,15 +8380,15 @@ fail-if = (os == 'linux') || (os == 'lin
 [generated/test_conformance__typedarrays__data-view-test.html]
 [generated/test_conformance__typedarrays__typed-arrays-in-workers.html]
 [generated/test_conformance__uniforms__gl-uniform-arrays.html]
 [generated/test_conformance__uniforms__gl-uniform-bool.html]
 [generated/test_conformance__uniforms__gl-uniformmatrix4fv.html]
 [generated/test_conformance__uniforms__gl-unknown-uniform.html]
 [generated/test_conformance__uniforms__null-uniform-location.html]
 [generated/test_conformance__uniforms__out-of-bounds-uniform-array-access.html]
-skip-if = (os == 'android') || (os == 'mac' && os_version == '10.6')
+skip-if = (os == 'android')
 [generated/test_conformance__uniforms__uniform-default-values.html]
 skip-if = (os == 'android') || (os == 'linux') || (os == 'win')
 [generated/test_conformance__uniforms__uniform-location.html]
 [generated/test_conformance__uniforms__uniform-samplers-test.html]
 [generated/test_conformance__uniforms__uniform-values-per-program.html]
 skip-if = (os == 'win')
--- a/dom/canvas/test/webgl-conf/mochitest-errata.ini
+++ b/dom/canvas/test/webgl-conf/mochitest-errata.ini
@@ -2,18 +2,16 @@
 # Modification to this file only take effect after running
 # generate-wrappers-and-manifest.py
 
 # See python/mozbuild/mozbuild/mozinfo.py for incoming data.
 
 ##########
 # android_version strings
 #   https://en.wikipedia.org/wiki/Android_version_history
-#   * Android 'Gingerbread' 2.3-2.3.2: 9
-#   * Android 'Gingerbread' 2.3.3+: 10 ('2.3' slaves)
 #   * Android 'ICS' 4.0-4.0.2: 14 ('4.0' slaves, inactive)
 #   * Android 'ICS' 4.0.3+: 15
 #   * Android 'Jellybean' 4.3: 18 ('4.3' slaves)
 
 ##########
 # os_version strings
 #   https://msdn.microsoft.com/en-us/library/windows/desktop/ms724832%28v=vs.85%29.aspx
 #   * Windows 7: 6.1
@@ -84,17 +82,16 @@ fail-if = (os != 'win')
 fail-if = (os != 'win')
 [generated/test_2_conformance2__rendering__element-index-uint.html]
 fail-if = (os != 'win')
 
 ########################################################################
 # Complicated
 
 [generated/test_conformance__context__context-attributes-alpha-depth-stencil-antialias.html]
-fail-if = (os == 'mac' && os_version == '10.6')
 # Asserts on 'B2G ICS Emulator Debug' and linux debug. Crashes on Android.
 skip-if = (os == 'b2g') || (os == 'linux') || (os == 'android')
 
 [generated/test_conformance__extensions__webgl-draw-buffers.html]
 fail-if = (os == 'mac') || (os == 'win')
 # Crashes
 skip-if = (os == 'linux')
 
@@ -110,36 +107,32 @@ skip-if = (os == 'linux') || (os == 'mac
 # application crashed [@ ParseOperand::GetLogicalSize() const + 0x4]
 # application crashed [@ jemalloc_crash] on Android
 skip-if = (os == 'linux') || (os == 'mac') || (os == 'android')
 [generated/test_conformance__glsl__constructors__glsl-construct-ivec4.html]
 # Assume crashes like ivec3
 skip-if = (os == 'linux') || (os == 'mac')
 
 [generated/test_conformance__glsl__constructors__glsl-construct-mat2.html]
-fail-if = (os == 'mac' && os_version == '10.6')
 # Crashes on Linux ASAN
 skip-if = ((os == 'linux') && asan)
 
 [generated/test_conformance__misc__type-conversion-test.html]
 fail-if = (os == 'linux')
 # Resets device on Android 2.3.
 # Crashes on B2G ICS Emulator, desktop Linux, and Mulet Linux x64.
 skip-if = (os == 'android') || (os == 'b2g') || (os == 'linux')
 
 [generated/test_conformance__misc__object-deletion-behaviour.html]
 fail-if = (os == 'android')
 # void mozilla::gl::GLContext::fDetachShader(GLuint, GLuint): Generated unexpected GL_INVALID_VALUE error. (0x0501)
 skip-if = (os == 'android' && debug)
 
 [generated/test_conformance__extensions__oes-vertex-array-object.html]
 fail-if = (os == 'mac') || (os == 'linux') || (os == 'win')
-# 10.6 crash:
-# PROCESS-CRASH | dom/canvas/test/webgl-conf/generated/test_conformance__extensions__oes-vertex-array-object.html | application crashed [@ gleRunVertexSubmitImmediate + 0xf24]
-skip-if = (os == 'mac' && os_version == '10.6')
 [generated/test_conformance__textures__misc__texture-size.html]
 # application crashed [@ mozilla::gl::GLContext::AfterGLCall]
 skip-if = (os == 'android') || (os == 'win')
 
 [generated/test_2_conformance__textures__misc__tex-image-with-format-and-type.html]
 fail-if = (os == 'mac')
 [generated/test_2_conformance2__vertex_arrays__vertex-array-object.html]
 fail-if = (os == 'mac') || (os == 'win')
@@ -405,21 +398,16 @@ fail-if = (os == 'android')
 fail-if = (os == 'android')
 [generated/test_conformance__extensions__oes-texture-half-float-with-image.html]
 fail-if = (os == 'android')
 [generated/test_conformance__extensions__oes-texture-half-float-with-image-data.html]
 fail-if = (os == 'android')
 # Frequent but intermittent timeout on win7
 skip-if = (os == 'win' && os_version == '6.1')
 
-[generated/test_conformance__canvas__buffer-offscreen-test.html]
-# Causes frequent *blues*: "DMError: Remote Device Error: unable to
-# connect to 127.0.0.1 after 5 attempts" on 'Android 2.3 Opt'.
-skip-if = (os == 'android' && android_version == '10')
-
 [generated/test_conformance__canvas__rapid-resizing.html]
 # Frequent orange crash.
 skip-if = (os == 'android')
 
 [generated/test_conformance__glsl__bugs__long-expressions-should-not-crash.html]
 # Crashes sometimes
 skip-if = (os == 'android')
 [generated/test_conformance__canvas__drawingbuffer-hd-dpi-test.html]
@@ -450,17 +438,17 @@ skip-if = (os == 'android')
 # Crashes on Android
 # Times-out on DEBUG builds
 skip-if = (os == 'android') || debug
 [generated/test_2_conformance__rendering__many-draw-calls.html]
 # Appears to just take too long on debug, most of the time.
 skip-if = debug
 [generated/test_conformance__uniforms__out-of-bounds-uniform-array-access.html]
 # Crashes
-skip-if = (os == 'android') || (os == 'mac' && os_version == '10.6')
+skip-if = (os == 'android')
 [generated/test_conformance__glsl__samplers__glsl-function-texture2dproj.html]
 # Crashes
 skip-if = (os == 'android')
 [generated/test_conformance__rendering__framebuffer-switch.html]
 # Crashes
 skip-if = (os == 'android')
 [generated/test_conformance__glsl__bugs__modulo-arithmetic-accuracy.html]
 # Crashes
@@ -531,22 +519,16 @@ skip-if = (os == 'android')
 # application crashed [@ jemalloc_crash]
 skip-if = (os == 'android')
 [generated/test_conformance__glsl__bugs__qualcomm-crash.html]
 # application crashed [@ jemalloc_crash]
 skip-if = (os == 'android')
 [generated/test_conformance__glsl__bugs__uniforms-should-not-lose-values.html]
 # application crashed [@ jemalloc_crash]
 skip-if = (os == 'android')
-####################
-# 2.3 failures
-[generated/test_conformance__glsl__misc__re-compile-re-link.html]
-fail-if = (os == 'android' && android_version == '10')
-[generated/test_conformance__programs__program-test.html]
-fail-if = (os == 'android' && android_version == '10')
 [generated/test_conformance__textures__misc__tex-image-with-invalid-data.html]
 skip-if = (os == 'android')
 ####################
 # Timeouts
 [generated/test_conformance__context__context-release-upon-reload.html]
 skip-if = (os == 'android')
 [generated/test_conformance__context__context-release-with-workers.html]
 skip-if = (os == 'android')
@@ -556,39 +538,16 @@ skip-if = (os == 'android')
 skip-if = (os == 'android')
 
 [generated/test_conformance__glsl__misc__shader-with-non-reserved-words.html]
 fail-if = (os == 'android')
 # (TODO) Generates results after calling finish()
 skip-if = 1
 
 ####################
-# Timeout on 2.3
-[generated/test_conformance__misc__delayed-drawing.html]
-skip-if = (os == 'android' && android_version == '10')
-[generated/test_conformance__more__conformance__webGLArrays.html]
-skip-if = (os == 'android' && android_version == '10')
-[generated/test_conformance__more__functions__bufferData.html]
-skip-if = (os == 'android' && android_version == '10')
-[generated/test_conformance__more__functions__bufferDataBadArgs.html]
-skip-if = (os == 'android' && android_version == '10')
-[generated/test_conformance__more__functions__bufferSubData.html]
-skip-if = (os == 'android' && android_version == '10')
-[generated/test_conformance__more__functions__bufferSubDataBadArgs.html]
-skip-if = (os == 'android' && android_version == '10')
-[generated/test_conformance__more__functions__drawArrays.html]
-skip-if = (os == 'android' && android_version == '10')
-[generated/test_conformance__more__functions__drawArraysOutOfBounds.html]
-skip-if = (os == 'android' && android_version == '10')
-[generated/test_conformance__more__functions__drawElements.html]
-skip-if = (os == 'android' && android_version == '10')
-[generated/test_conformance__more__functions__drawElementsBadArgs.html]
-skip-if = (os == 'android' && android_version == '10')
-
-####################
 
 [generated/test_conformance__attribs__gl-bindAttribLocation-aliasing.html]
 # OOM crash
 skip-if = (os == 'android')
 [generated/test_conformance__attribs__gl-bindAttribLocation-matrix.html]
 # OOM crash
 skip-if = (os == 'android')
 [generated/test_conformance__misc__uninitialized-test.html]
@@ -653,42 +612,16 @@ skip-if = (os == 'mac')
 [generated/test_conformance__rendering__multisample-corruption.html]
 # application crashed [@ gldAttachDrawable + 0x9e0]. Also crash on Android.
 skip-if = (os == 'mac') || (os == 'android') || (os == 'win')
 [generated/test_2_conformance__textures__misc__copy-tex-image-2d-formats.html]
 # Assertion: ""GFX: We should have caught all other errors"" in WebGLTextureUpload.cpp
 skip-if = (os == 'mac')
 
 ####################
-# 10.6
-[generated/test_conformance__glsl__constructors__glsl-construct-mat3.html]
-fail-if = (os == 'mac' && os_version == '10.6')
-[generated/test_conformance__glsl__constructors__glsl-construct-mat4.html]
-fail-if = (os == 'mac' && os_version == '10.6')
-[generated/test_conformance__glsl__matrices__glsl-mat4-to-mat3.html]
-fail-if = (os == 'mac' && os_version == '10.6')
-[generated/test_conformance__glsl__misc__glsl-function-nodes.html]
-fail-if = (os == 'mac' && os_version == '10.6')
-[generated/test_conformance__ogles__GL__struct__struct_033_to_040.html]
-fail-if = (os == 'mac' && os_version == '10.6')
-[generated/test_conformance__ogles__GL__struct__struct_041_to_048.html]
-fail-if = (os == 'mac' && os_version == '10.6')
-[generated/test_conformance__ogles__GL__struct__struct_049_to_056.html]
-fail-if = (os == 'mac' && os_version == '10.6')
-
-####################
-# 10.8
-[generated/test_conformance__glsl__functions__glsl-function-smoothstep-gentype.html]
-fail-if = (os == 'mac' && os_version == '10.8')
-[generated/test_conformance__glsl__variables__gl-pointcoord.html]
-fail-if = (os == 'mac' && os_version == '10.8')
-[generated/test_conformance__limits__gl-max-texture-dimensions.html]
-fail-if = (os == 'mac' && os_version == '10.8')
-
-####################
 # failure on OSX
 [generated/test_conformance__extensions__angle-instanced-arrays.html]
 fail-if = (os == 'mac')
 [generated/test_conformance__glsl__misc__shaders-with-invariance.html]
 fail-if = (os == 'mac')
 [generated/test_2_conformance2__textures__misc__tex-unpack-params.html]
 skip-if = (os == 'mac' && debug)
 fail-if = (os == 'mac')
--- a/dom/canvas/test/webgl-mochitest/mochitest.ini
+++ b/dom/canvas/test/webgl-mochitest/mochitest.ini
@@ -3,27 +3,27 @@ subsuite = webgl
 
 support-files =
   ensure-exts/ensure-ext.js
   driver-info.js
   es3-data.js
   webgl-util.js
 
 [ensure-exts/test_ANGLE_instanced_arrays.html]
-fail-if = (os == 'android') || (os == 'mac' && os_version == '10.6')
+fail-if = (os == 'android')
 [ensure-exts/test_EXT_blend_minmax.html]
 fail-if = (os == 'android')
 [ensure-exts/test_EXT_color_buffer_half_float.html]
 fail-if = (os == 'android')
 [ensure-exts/test_EXT_disjoint_timer_query.html]
-fail-if = (os == 'android') || (os == 'mac') || (os == 'win' && os_version == '5.1')
+fail-if = (os == 'android') || (os == 'mac')
 [ensure-exts/test_EXT_frag_depth.html]
 fail-if = (os == 'android')
 [ensure-exts/test_EXT_sRGB.html]
-fail-if = (os == 'android') || (os == 'mac' && os_version == '10.6') || (os == 'win')
+fail-if = (os == 'android') || (os == 'win')
 [ensure-exts/test_EXT_shader_texture_lod.html]
 fail-if = (os == 'android')
 [ensure-exts/test_EXT_texture_filter_anisotropic.html]
 fail-if = (os == 'android') || (os == 'linux')
 [ensure-exts/test_OES_standard_derivatives.html]
 fail-if = (os == 'android')
 [ensure-exts/test_WEBGL_color_buffer_float.html]
 fail-if = (os == 'android')
@@ -33,19 +33,18 @@ fail-if = (os == 'android') || (os == 'l
 fail-if = (os == 'android') || (os == 'mac') || (os == 'win')
 [ensure-exts/test_WEBGL_compressed_texture_etc1.html]
 fail-if = (os == 'linux') || (os == 'mac') || (os == 'win')
 [ensure-exts/test_WEBGL_compressed_texture_pvrtc.html]
 fail-if = (os == 'android') || (os == 'linux') || (os == 'mac') || (os == 'win')
 [ensure-exts/test_WEBGL_compressed_texture_s3tc.html]
 fail-if = (os == 'android') || (os == 'linux')
 [ensure-exts/test_WEBGL_depth_texture.html]
-fail-if = (os == 'mac' && os_version == '10.6')
 [ensure-exts/test_WEBGL_draw_buffers.html]
-fail-if = (os == 'android') || (os == 'win' && os_version == '5.1')
+fail-if = (os == 'android')
 
 [ensure-exts/test_common.html]
 
 
 [regress/test_bug_1268096.html]
 
 
 [test_backends.html]
@@ -58,17 +57,16 @@ support-files = ../captureStream_common.
 # paths are fine, but they locate the file and dump it in the current directory.
 [test_cubemap_must_be_square.html]
 [test_depth_tex_lazy_clear.html]
 [test_draw.html]
 [test_fb_param.html]
 [test_fb_param_crash.html]
 [test_hidden_alpha.html]
 [test_hidden_depth_stencil.html]
-fail-if = (os == 'win' && os_version == '5.1')
 [test_implicit_color_buffer_float.html]
 [test_highp_fs.html]
 [test_no_arr_points.html]
 skip-if = android_version == '18' #Android 4.3 aws only; bug 1030942
 [test_noprog_draw.html]
 [test_pixel_pack_buffer.html]
 [test_privileged_exts.html]
 [test_renderer_strings.html]
--- a/dom/media/mediasource/test/mochitest.ini
+++ b/dom/media/mediasource/test/mochitest.ini
@@ -39,100 +39,100 @@ support-files =
   aac51-48000-128000-init.mp4 aac51-48000-128000-init.mp4^headers^
   aac51-48000-128000-1.m4s aac51-48000-128000-1.m4s^headers^
   aac51-48000-128000-2.m4s aac51-48000-128000-2.m4s^headers^
   bipbop/bipbop_480_624kbps-videoinit.mp4 bipbop/bipbop_480_624kbps-videoinit.mp4^headers^
   bipbop/bipbop_480_624kbps-video1.m4s bipbop/bipbop_480_624kbps-video1.m4s^headers^
   bipbop/bipbop_480_624kbps-video2.m4s bipbop/bipbop_480_624kbps-video2.m4s^headers^
 
 [test_AudioChange_mp4.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 [test_AutoRevocation.html]
 tags = firstpartyisolation
 [test_BufferedSeek.html]
 [test_BufferedSeek_mp4.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 [test_BufferingWait.html]
 skip-if = toolkit == 'android' #timeout android bug 1199531
 [test_BufferingWait_mp4.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 [test_DrainOnMissingData_mp4.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 [test_DurationChange.html]
 [test_DurationUpdated.html]
 [test_DurationUpdated_mp4.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 [test_EndedEvent.html]
 [test_EndOfStream.html]
 [test_EndOfStream_mp4.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 [test_Eviction_mp4.html]
 skip-if = (os == "win" && os_version == "5.1") # Not supported on xp.
 [test_FrameSelection.html]
 [test_FrameSelection_mp4.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 [test_HaveMetadataUnbufferedSeek.html]
 [test_HaveMetadataUnbufferedSeek_mp4.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 [test_LiveSeekable.html]
 [test_LoadedDataFired_mp4.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 [test_LoadedMetadataFired.html]
 [test_LoadedMetadataFired_mp4.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 [test_MediaSource.html]
 [test_MediaSource_memory_reporting.html]
 [test_MediaSource_mp4.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 [test_MediaSource_disabled.html]
 [test_MultipleInitSegments.html]
 [test_MultipleInitSegments_mp4.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 [test_OnEvents.html]
 [test_PlayEvents.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 [test_ResumeAfterClearing_mp4.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 [test_SeekableAfterEndOfStream.html]
 [test_SeekableAfterEndOfStream_mp4.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 [test_SeekableAfterEndOfStreamSplit.html]
 [test_SeekableAfterEndOfStreamSplit_mp4.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 [test_SeekableBeforeEndOfStream.html]
 [test_SeekableBeforeEndOfStream_mp4.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 [test_SeekableBeforeEndOfStreamSplit.html]
 [test_SeekableBeforeEndOfStreamSplit_mp4.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 [test_SeekNoData_mp4.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 [test_SeekedEvent_mp4.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 [test_SeekToEnd_mp4.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 [test_SeekTwice_mp4.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 [test_Sequence_mp4.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 [test_SetModeThrows.html]
 [test_SplitAppendDelay.html]
 [test_SplitAppendDelay_mp4.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 [test_SplitAppend.html]
 [test_SplitAppend_mp4.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 [test_Threshold_mp4.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 [test_TimestampOffset_mp4.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 [test_TruncatedDuration.html]
 [test_TruncatedDuration_mp4.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 [test_WaitingOnMissingData.html]
-skip-if = (toolkit == 'android') #timeout android only bug 1101187
+skip-if = toolkit == 'android' #timeout android only bug 1101187
 [test_WaitingOnMissingData_mp4.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 [test_WaitingOnMissingDataEnded_mp4.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 [test_WaitingToEndedTransition_mp4.html]
-skip-if = ((os == "win" && os_version == "5.1") || (toolkit == 'android')) # Not supported on xp and android 2.3
+skip-if = toolkit == 'android' # Not supported on android 2.3
 
--- a/dom/media/test/mochitest.ini
+++ b/dom/media/test/mochitest.ini
@@ -642,17 +642,16 @@ support-files =
 skip-if = true # bug 475110 - disabled since we don't play Wave files standalone
 [test_autoplay.html]
 [test_autoplay_contentEditable.html]
 [test_buffered.html]
 [test_bug448534.html]
 [test_bug463162.xhtml]
 [test_bug465498.html]
 [test_bug495145.html]
-skip-if = (os == 'mac' && os_version == '10.6') # bug 1021174
 [test_bug495300.html]
 [test_bug654550.html]
 [test_bug686942.html]
 [test_bug726904.html]
 [test_bug874897.html]
 [test_bug879717.html]
 tags=capturestream
 [test_bug883173.html]
--- a/dom/media/test/test_eme_request_notifications.html
+++ b/dom/media/test/test_eme_request_notifications.html
@@ -36,37 +36,35 @@ function Test(test) {
   });
 
   p.then(() => navigator.requestMediaKeySystemAccess(test.keySystem, gCencMediaKeySystemConfig))
    .then((keySystemAccess) => keySystemAccess.createMediaKeys());
 
   return res;
 }
 
-const isWinXP = navigator.userAgent.indexOf("Windows NT 5.1") != -1;
-
 var tests = [
   {
     keySystem: CLEARKEY_KEYSYSTEM,
     expectedStatus: 'cdm-created',
     prefs: [["media.eme.enabled", false]]
   },
   {
     keySystem: "com.widevine.alpha",
     expectedStatus: 'api-disabled',
     prefs: [["media.eme.enabled", false]]
   },
   {
     keySystem: "com.widevine.alpha",
-    expectedStatus: (isWinXP ? 'cdm-not-supported' : 'cdm-disabled'),
+    expectedStatus: 'cdm-disabled',
     prefs: [["media.eme.enabled", true], ["media.gmp-widevinecdm.enabled", false]]
   },
   {
     keySystem: "com.widevine.alpha",
-    expectedStatus: (isWinXP ? 'cdm-not-supported' : 'cdm-not-installed'),
+    expectedStatus: 'cdm-not-installed',
     prefs: [["media.eme.enabled", true], , ["media.gmp-widevinecdm.enabled", true]]
   },
   {
     keySystem: CLEARKEY_KEYSYSTEM,
     expectedStatus: 'cdm-created',
     prefs: [["media.eme.enabled", true]]
   }
 ];
--- a/dom/media/tests/mochitest/head.js
+++ b/dom/media/tests/mochitest/head.js
@@ -953,32 +953,18 @@ VideoStreamHelper.prototype = {
   },
 
   verifyNoFrames: function(canvas) {
     return this.waitForFrames(canvas).then(
       () => ok(false, "Color should not change"),
       () => ok(true, "Color should not change")
     );
   }
-}
-
-
-function IsMacOSX10_6orOlder() {
-  if (navigator.platform.indexOf("Mac") !== 0) {
-    return false;
-  }
+};
 
-  var version = Cc["@mozilla.org/system-info;1"]
-      .getService(Ci.nsIPropertyBag2)
-      .getProperty("version");
-  // the next line is correct: Mac OS 10.6 corresponds to Darwin version 10.x !
-  // Mac OS 10.7 is Darwin version 11.x. the |version| string we've got here
-  // is the Darwin version.
-  return (parseFloat(version) < 11.0);
-}
 
 (function(){
   var el = document.createElement("link");
   el.rel = "stylesheet";
   el.type = "text/css";
   el.href= "/tests/SimpleTest/test.css";
   document.head.appendChild(el);
 }());
--- a/dom/media/tests/mochitest/pc.js
+++ b/dom/media/tests/mochitest/pc.js
@@ -1582,29 +1582,24 @@ PeerConnectionWrapper.prototype = {
 
   /**
    * Checks that we are getting the media streams we expect.
    *
    * @param {object} stats
    *        The stats to check from this PeerConnectionWrapper
    */
   checkStats : function(stats, twoMachines) {
-    const isWinXP = navigator.userAgent.indexOf("Windows NT 5.1") != -1;
-
     // Use spec way of enumerating stats
     var counters = {};
     for (let [key, res] of stats) {
       // validate stats
       ok(res.id == key, "Coherent stats id");
       var nowish = Date.now() + 1000;        // TODO: clock drift observed
       var minimum = this.whenCreated - 1000; // on Windows XP (Bug 979649)
-      if (isWinXP) {
-        todo(false, "Can't reliably test rtcp timestamps on WinXP (Bug 979649)");
-
-      } else if (false) { // Bug 1325430 - timestamps aren't working properly in update 49
+      if (false) { // Bug 1325430 - timestamps aren't working properly in update 49
 	// else if (!twoMachines) {
         // Bug 1225729: On android, sometimes the first RTCP of the first
         // test run gets this value, likely because no RTP has been sent yet.
         if (res.timestamp != 2085978496000) {
           ok(res.timestamp >= minimum,
              "Valid " + (res.isRemote? "rtcp" : "rtp") + " timestamp " +
                  res.timestamp + " >= " + minimum + " (" +
                  (res.timestamp - minimum) + " ms)");
--- a/dom/media/tests/mochitest/test_getUserMedia_basicScreenshare.html
+++ b/dom/media/tests/mochitest/test_getUserMedia_basicScreenshare.html
@@ -13,21 +13,16 @@
 
   var pushPrefs = (...p) => SpecialPowers.pushPrefEnv({set: p});
 
   /**
    * Run a test to verify that we can complete a start and stop media playback
    * cycle for a screenshare LocalMediaStream on a video HTMLMediaElement.
    */
   runTest(function () {
-    const isWinXP = navigator.userAgent.indexOf("Windows NT 5.1") != -1;
-    if (IsMacOSX10_6orOlder() || isWinXP) {
-        ok(true, "Screensharing disabled for OSX10.6 and WinXP");
-        return;
-    }
     var testVideo = createMediaElement('video', 'testVideo');
 
     var constraints = {
       video: {
          mozMediaSource: "screen",
          mediaSource: "screen"
       },
       fake: false
--- a/dom/media/tests/mochitest/test_getUserMedia_basicTabshare.html
+++ b/dom/media/tests/mochitest/test_getUserMedia_basicTabshare.html
@@ -12,21 +12,16 @@
   });
   /**
    * Run a test to verify that we can complete a start and stop media playback
    * cycle for a tabshare LocalMediaStream on a video HTMLMediaElement.
    *
    * Additionally, exercise applyConstraints code for tabshare viewport offset.
    */
   runTest(function () {
-    const isWinXP = navigator.userAgent.indexOf("Windows NT 5.1") != -1;
-    if (IsMacOSX10_6orOlder() || isWinXP) {
-        ok(true, "Screensharing disabled for OSX10.6 and WinXP");
-        return;
-    }
     var testVideo = createMediaElement('video', 'testVideo');
     var pushPrefs = (...p) => SpecialPowers.pushPrefEnv({set: p});
 
     return Promise.resolve()
       .then(() => pushPrefs(["media.getusermedia.browser.enabled", true]))
       .then(() => getUserMedia({
         video: { mediaSource: "browser",
                  scrollWithPage: true },
--- a/dom/media/tests/mochitest/test_getUserMedia_basicWindowshare.html
+++ b/dom/media/tests/mochitest/test_getUserMedia_basicWindowshare.html
@@ -10,21 +10,16 @@
     title: "getUserMedia Basic Windowshare Test",
     bug: "1038926"
   });
   /**
    * Run a test to verify that we can complete a start and stop media playback
    * cycle for an screenshare LocalMediaStream on a video HTMLMediaElement.
    */
   runTest(function () {
-    const isWinXP = navigator.userAgent.indexOf("Windows NT 5.1") != -1;
-    if (IsMacOSX10_6orOlder() || isWinXP) {
-        ok(true, "Screensharing disabled for OSX10.6 and WinXP");
-        return;
-    }
     var testVideo = createMediaElement('video', 'testVideo');
     var constraints = {
       video: {
          mozMediaSource: "window",
          mediaSource: "window"
       },
       fake: false
     };
--- a/dom/media/tests/mochitest/test_getUserMedia_scarySources.html
+++ b/dom/media/tests/mochitest/test_getUserMedia_scarySources.html
@@ -25,22 +25,16 @@ let getDevices = async constraints => {
   let window = Services.wm.getOuterWindowWithId(windowID);
   let devices = await new Promise((resolve, reject) =>
       window.navigator.mozGetUserMediaDevices({}, resolve, reject,
                                               innerWindowID, callID));
   return devices.map(SpecialPowers.wrapCallback(d => d.QueryInterface(Ci.nsIMediaDevice)));
 };
 
 runTest(async () => {
-  const isWinXP = navigator.userAgent.indexOf("Windows NT 5.1") != -1;
-  if (IsMacOSX10_6orOlder() || isWinXP) {
-    ok(true, "Screensharing disabled for OSX10.6 and WinXP");
-    return;
-  }
-
   await pushPrefs(["media.navigator.permission.disabled", true],
                   ["media.navigator.permission.fake", true],
                   ["media.navigator.permission.force", true]);
   let devices = await getDevices({video: { mediaSource: "window" }});
   ok(devices.length, "Found one or more windows.");
   devices = devices.filter(d => d.scary);
   ok(devices.length, "Found one or more scary windows (our own counts).");
   devices.filter(d => d.name.includes("MochiTest"));
--- a/dom/media/tests/mochitest/test_peerConnection_basicScreenshare.html
+++ b/dom/media/tests/mochitest/test_peerConnection_basicScreenshare.html
@@ -8,22 +8,16 @@
 <script type="application/javascript">
   createHTML({
     bug: "1039666",
     title: "Basic screenshare-only peer connection"
   });
 
   var test;
   runNetworkTest(function (options) {
-    const isWinXP = navigator.userAgent.indexOf("Windows NT 5.1") != -1;
-    if (IsMacOSX10_6orOlder() || isWinXP) {
-        ok(true, "Screensharing disabled for OSX10.6 and WinXP");
-        SimpleTest.finish();
-        return;
-    }
     test = new PeerConnectionTest(options);
     var constraints = {
       video: {
          mozMediaSource: "screen",
          mediaSource: "screen"
       },
       fake: false
     };
--- a/dom/media/tests/mochitest/test_peerConnection_basicWindowshare.html
+++ b/dom/media/tests/mochitest/test_peerConnection_basicWindowshare.html
@@ -8,22 +8,16 @@
 <script type="application/javascript">
   createHTML({
     bug: "1038926",
     title: "Basic windowshare-only peer connection"
   });
 
   var test;
   runNetworkTest(function (options) {
-    const isWinXP = navigator.userAgent.indexOf("Windows NT 5.1") != -1;
-    if (IsMacOSX10_6orOlder() || isWinXP) {
-        ok(true, "Screensharing disabled for OSX10.6 and WinXP");
-        SimpleTest.finish();
-        return;
-    }
     test = new PeerConnectionTest(options);
     var constraints = {
       video: {
          mozMediaSource: "window",
          mediaSource: "window"
       },
       fake: false
     };
--- a/dom/media/webaudio/test/mochitest.ini
+++ b/dom/media/webaudio/test/mochitest.ini
@@ -162,18 +162,17 @@ skip-if = toolkit == 'android' # bug 114
 tags=capturestream
 [test_mediaStreamAudioSourceNodeNoGC.html]
 [test_mediaStreamAudioSourceNodePassThrough.html]
 [test_mediaStreamAudioSourceNodeResampling.html]
 tags=capturestream
 [test_mixingRules.html]
 skip-if = toolkit == 'android' # bug 1091965
 [test_mozaudiochannel.html]
-# Android: bug 1061675; OSX 10.6: bug 1097721
-skip-if = (toolkit == 'android') || (os == 'mac' && os_version == '10.6')
+skip-if = toolkit == 'android' # bug 1061675
 [test_nodeToParamConnection.html]
 [test_OfflineAudioContext.html]
 [test_offlineDestinationChannelCountLess.html]
 [test_offlineDestinationChannelCountMore.html]
 [test_oscillatorNode.html]
 [test_oscillatorNode2.html]
 [test_oscillatorNodeNegativeFrequency.html]
 [test_oscillatorNodePassThrough.html]
--- a/dom/performance/tests/test_worker_performance_now.js
+++ b/dom/performance/tests/test_worker_performance_now.js
@@ -22,55 +22,42 @@ function workerTestGetOSCPU(cb) {
 
 ok(self.performance, "Performance object should exist.");
 ok(typeof self.performance.now == 'function', "Performance object should have a 'now' method.");
 var n = self.performance.now(), d = Date.now();
 ok(n >= 0, "The value of now() should be equal to or greater than 0.");
 ok(self.performance.now() >= n, "The value of now() should monotonically increase.");
 
 // The spec says performance.now() should have micro-second resolution, but allows 1ms if the platform doesn't support it.
-// Our implementation does provide micro-second resolution, except for windows XP combined with some HW properties
-// where we can't use QueryPerformanceCounters (see comments at mozilla-central/xpcom/ds/TimeStamp_windows.cpp).
-// This XP-low-res case results in about 15ms resolutions, and can be identified when perf.now() returns only integers.
+// Our implementation does provide micro-second resolution.
 //
-// Since setTimeout might return too early/late, our goal is that perf.now() changed within 2ms
-// (or 25ms for XP-low-res), rather than specific number of setTimeout(N) invocations.
+// Since setTimeout might return too early/late, our goal is that perf.now() changed within 2ms,
+// rather than specific number of setTimeout(N) invocations.
 // See bug 749894 (intermittent failures of this test)
-var platformPossiblyLowRes;
 workerTestGetOSCPU(function(oscpu) {
-    platformPossiblyLowRes = oscpu.indexOf("Windows NT 5.1") == 0; // XP only
     setTimeout(checkAfterTimeout, 1);
 });
-var allInts = (n % 1) == 0; // Indicator of limited HW resolution.
 var checks = 0;
 
 function checkAfterTimeout() {
   checks++;
   var d2 = Date.now();
   var n2 = self.performance.now();
 
-  allInts = allInts && (n2 % 1) == 0;
-  var lowResCounter = platformPossiblyLowRes && allInts;
-
-  if ( n2 == n && checks < 50 && // 50 is just a failsafe. Our real goals are 2ms or 25ms.
-       ( (d2 - d) < 2 // The spec allows 1ms resolution. We allow up to measured 2ms to ellapse.
-         ||
-         lowResCounter &&
-         (d2 - d) < 25
-       )
+  if ( n2 == n && checks < 50 && // 50 is just a failsafe. Our real goals are 2ms.
+       (d2 - d) < 2 // The spec allows 1ms resolution. We allow up to measured 2ms to ellapse.
      ) {
     setTimeout(checkAfterTimeout, 1);
     return;
   }
 
-  // Loose spec: 1ms resolution, or 15ms resolution for the XP-low-res case.
-  // We shouldn't test that dt is actually within 2/25ms since the iterations break if it isn't, and timeout could be late.
-  ok(n2 > n, "Loose - the value of now() should increase within 2ms (or 25ms if low-res counter) (delta now(): " + (n2 - n) + " ms).");
+  // Loose spec: 1ms resolution.
+  // We shouldn't test that dt is actually within 2ms since the iterations break if it isn't, and timeout could be late.
+  ok(n2 > n, "Loose - the value of now() should increase within 2ms (delta now(): " + (n2 - n) + " ms).");
 
-  // Strict spec: if it's not the XP-low-res case, while the spec allows 1ms resolution, it prefers microseconds, which we provide.
-  // Since the fastest setTimeout return which I observed was ~500 microseconds, a microseconds counter should change in 1 iteretion.
-  ok(n2 > n && (lowResCounter || checks == 1),
-     "Strict - [if high-res counter] the value of now() should increase after one setTimeout (hi-res: " + (!lowResCounter) +
-                                                                                              ", iters: " + checks +
-                                                                                              ", dt: " + (d2 - d) +
-                                                                                              ", now(): " + n2 + ").");
+  // Strict spec: while the spec allows 1ms resolution, it prefers microseconds, which we provide.
+  // Since the fastest setTimeout return which I observed was ~500 microseconds, a microseconds counter should change in 1 iteration.
+  ok(n2 > n && checks == 1,
+     "Strict - the value of now() should increase after one setTimeout (iters: " + checks +
+                                                                        ", dt: " + (d2 - d) +
+                                                                        ", now(): " + n2 + ").");
   workerTestDone();
 };
--- a/dom/tests/mochitest/chrome/chrome.ini
+++ b/dom/tests/mochitest/chrome/chrome.ini
@@ -38,22 +38,20 @@ support-files =
 [test_activation.xul]
 tags = fullscreen
 [test_bug799299.xul]
 [test_bug800817.xul]
 [test_bug830396.xul]
 [test_bug830858.xul]
 [test_bug1224790-1.xul]
 tags = openwindow
-# synthesizeNativeOSXClick does not work on 10.6
-skip-if = os != 'mac' || os_version == '10.6'
+skip-if = os != 'mac'
 [test_bug1224790-2.xul]
 tags = openwindow
-# synthesizeNativeOSXClick does not work on 10.6
-skip-if = os != 'mac' || os_version == '10.6'
+skip-if = os != 'mac'
 [test_callback_wrapping.xul]
 [test_clonewrapper.xul]
 [test_cyclecollector.xul]
 [test_docshell_swap.xul]
 [test_focus.xul]
 [test_focus_docnav.xul]
 [test_focus_switchbinding.xul]
 [test_focused_link_scroll.xul]
--- a/dom/tests/mochitest/general/test_performance_now.html
+++ b/dom/tests/mochitest/general/test_performance_now.html
@@ -12,55 +12,44 @@
     ok(typeof window.performance.now == 'function', "Performance object should have a 'now' method.");
     var n = window.performance.now(), d = Date.now();
     ok(n >= 0, "The value of now() should be equal to or greater than 0.");
     ok(window.performance.now() >= n, "The value of now() should monotonically increase.");
     SimpleTest.waitForExplicitFinish();
     SimpleTest.requestFlakyTimeout("untriaged");
 
     // The spec says performance.now() should have micro-second resolution, but allows 1ms if the platform doesn't support it.
-    // Our implementation does provide micro-second resolution, except for windows XP combined with some HW properties
-    // where we can't use QueryPerformanceCounters (see comments at mozilla-central/xpcom/ds/TimeStamp_windows.cpp).
-    // This XP-low-res case results in about 15ms resolutions, and can be identified when perf.now() returns only integers.
+    // Our implementation does provide micro-second resolution.
     //
-    // Since setTimeout might return too early/late, our goal is that perf.now() changed within 2ms
-    // (or 25ms for XP-low-res), rather than specific number of setTimeout(N) invocations.
+    // Since setTimeout might return too early/late, our goal is that perf.now() changed within 2ms,
+    // rather than specific number of setTimeout(N) invocations.
     // See bug 749894 (intermittent failures of this test)
-    var platformPossiblyLowRes = navigator.oscpu.indexOf("Windows NT 5.1") == 0; // XP only
-    var allInts = (n % 1) == 0; // Indicator of limited HW resolution.
     var checks = 0;
 
     function checkAfterTimeout() {
       checks++;
       var d2 = Date.now();
       var n2 = window.performance.now();
 
-      allInts = allInts && (n2 % 1) == 0;
-      var lowResCounter = platformPossiblyLowRes && allInts;
 
-      if ( n2 == n && checks < 50 && // 50 is just a failsafe. Our real goals are 2ms or 25ms.
-           ( (d2 - d) < 2 // The spec allows 1ms resolution. We allow up to measured 2ms to ellapse.
-             ||
-             lowResCounter &&
-             (d2 - d) < 25
-           )
+      if ( n2 == n && checks < 50 && // 50 is just a failsafe. Our real goals are 2ms.
+           (d2 - d) < 2 // The spec allows 1ms resolution. We allow up to measured 2ms to ellapse.
          ) {
         setTimeout(checkAfterTimeout, 1);
         return;
       }
 
-      // Loose spec: 1ms resolution, or 15ms resolution for the XP-low-res case.
-      // We shouldn't test that dt is actually within 2/25ms since the iterations break if it isn't, and timeout could be late.
-      ok(n2 > n, "Loose - the value of now() should increase within 2ms (or 25ms if low-res counter) (delta now(): " + (n2 - n) + " ms).");
+      // Loose spec: 1ms resolution.
+      // We shouldn't test that dt is actually within 2ms since the iterations break if it isn't, and timeout could be late.
+      ok(n2 > n, "Loose - the value of now() should increase within 2ms (delta now(): " + (n2 - n) + " ms).");
 
-      // Strict spec: if it's not the XP-low-res case, while the spec allows 1ms resolution, it prefers microseconds, which we provide.
-      // Since the fastest setTimeout return which I observed was ~500 microseconds, a microseconds counter should change in 1 iteretion.
-      ok(n2 > n && (lowResCounter || checks == 1),
-         "Strict - [if high-res counter] the value of now() should increase after one setTimeout (hi-res: " + (!lowResCounter) +
-                                                                                                  ", iters: " + checks +
-                                                                                                  ", dt: " + (d2 - d) +
-                                                                                                  ", now(): " + n2 + ").");
+      // Strict spec: while the spec allows 1ms resolution, it prefers microseconds, which we provide.
+      // Since the fastest setTimeout return which I observed was ~500 microseconds, a microseconds counter should change in 1 iteration.
+      ok(n2 > n && checks == 1,
+         "Strict - the value of now() should increase after one setTimeout (iters: " + checks +
+                                                                            ", dt: " + (d2 - d) +
+                                                                            ", now(): " + n2 + ").");
       SimpleTest.finish();
     };
     setTimeout(checkAfterTimeout, 1);
   </script>
 </body>
 </html>