From b591d391306e13a3328482ba997a44711d1a0155 Mon Sep 17 00:00:00 2001 From: vyv03354 Date: Sun, 17 Feb 2013 14:30:08 +0900 Subject: [PATCH] Remove the test of experimental properties in workers --- src/worker.js | 10 ++++++++-- test/features/tests.js | 6 +++--- test/features/worker-stub.js | 9 +++++++-- 3 files changed, 18 insertions(+), 7 deletions(-) diff --git a/src/worker.js b/src/worker.js index 133af8850..0677f7c86 100644 --- a/src/worker.js +++ b/src/worker.js @@ -168,8 +168,14 @@ var WorkerMessageHandler = { } // check if the response property is supported by xhr var xhr = new XMLHttpRequest(); - if (!('response' in xhr || 'mozResponse' in xhr || - 'responseArrayBuffer' in xhr || 'mozResponseArrayBuffer' in xhr)) { + var responseExists = 'response' in xhr; + // check if the property is actually implemented + try { + var dummy = xhr.responseType; + } catch (e) { + responseExists = false; + } + if (!responseExists) { handler.send('test', false); return; } diff --git a/test/features/tests.js b/test/features/tests.js index c6f253a1f..528a0378c 100644 --- a/test/features/tests.js +++ b/test/features/tests.js @@ -514,7 +514,7 @@ var tests = [ promise.resolve({ output: 'Success', emulated: '' }); else promise.resolve({ output: 'Failed', emulated: 'Yes' }); - }); + }, false); worker.postMessage({action: 'test', data: new Uint8Array(60000000)}); // 60MB return promise; @@ -546,7 +546,7 @@ var tests = [ promise.resolve({ output: 'Success', emulated: '' }); else promise.resolve({ output: 'Failed', emulated: 'Yes' }); - }); + }, false); worker.postMessage({action: 'xhr'}); return promise; } catch (e) { @@ -586,7 +586,7 @@ var tests = [ promise.resolve({ output: 'Failed', emulated: emulatable ? 'Yes' : 'No' }); } - }); + }, false); worker.postMessage({action: 'TextDecoder'}); return promise; } catch (e) { diff --git a/test/features/worker-stub.js b/test/features/worker-stub.js index 3673790c2..c23f3d52d 100644 --- a/test/features/worker-stub.js +++ b/test/features/worker-stub.js @@ -23,8 +23,13 @@ onmessage = function (e) { break; case 'xhr': var xhr = new XMLHttpRequest(); - var responseExists = 'response' in xhr || 'mozResponse' in xhr || - 'responseArrayBuffer' in xhr || 'mozResponseArrayBuffer' in xhr; + var responseExists = 'response' in xhr; + // check if the property is actually implemented + try { + var dummy = xhr.responseType; + } catch (e) { + responseExists = false; + } postMessage({action: 'xhr', result: responseExists}); break; case 'TextDecoder':