OLD | NEW |
(Empty) | |
| 1 var inWorker = false; |
| 2 var RESOURCES_DIR = "../resources/"; |
| 3 |
| 4 try { |
| 5 inWorker = !(self instanceof Window); |
| 6 } catch (e) { |
| 7 inWorker = true; |
| 8 } |
| 9 |
| 10 function dirname(path) { |
| 11 return path.replace(/\/[^\/]*$/, '/') |
| 12 } |
| 13 |
| 14 function checkRequest(request, ExpectedValuesDict) { |
| 15 for (var attribute in ExpectedValuesDict) { |
| 16 switch(attribute) { |
| 17 case "headers": |
| 18 for (var key in ExpectedValuesDict["headers"].keys()) { |
| 19 assert_equals(request["headers"].get(key), ExpectedValuesDict["headers
"].get(key), |
| 20 "Check headers attribute has " + key + ":" + ExpectedValuesDict["hea
ders"].get(key)); |
| 21 } |
| 22 break; |
| 23 |
| 24 case "body": |
| 25 //for checking body's content, a dedicated asyncronous/promise test shou
ld be used |
| 26 assert_true(request["headers"].has("Content-Type") , "Check request has
body using Content-Type header") |
| 27 break; |
| 28 |
| 29 case "method": |
| 30 case "referrer": |
| 31 case "referrerPolicy": |
| 32 case "credentials": |
| 33 case "cache": |
| 34 case "redirect": |
| 35 case "integrity": |
| 36 case "url": |
| 37 case "destination": |
| 38 assert_equals(request[attribute], ExpectedValuesDict[attribute], "Check
" + attribute + " attribute") |
| 39 break; |
| 40 |
| 41 default: |
| 42 break; |
| 43 } |
| 44 } |
| 45 } |
| 46 |
| 47 function stringToArray(str) { |
| 48 var array = new Uint8Array(str.length); |
| 49 for (var i=0, strLen = str.length; i < strLen; i++) |
| 50 array[i] = str.charCodeAt(i); |
| 51 return array; |
| 52 } |
| 53 |
| 54 function encode_utf8(str) |
| 55 { |
| 56 if (self.TextEncoder) |
| 57 return (new TextEncoder).encode(str); |
| 58 return stringToArray(unescape(encodeURIComponent(str))); |
| 59 } |
| 60 |
| 61 function validateBufferFromString(buffer, expectedValue, message) |
| 62 { |
| 63 return assert_array_equals(new Uint8Array(buffer !== undefined ? buffer : []),
stringToArray(expectedValue), message); |
| 64 } |
| 65 |
| 66 function validateStreamFromString(reader, expectedValue, retrievedArrayBuffer) { |
| 67 return reader.read().then(function(data) { |
| 68 if (!data.done) { |
| 69 assert_true(data.value instanceof Uint8Array, "Fetch ReadableStream chunks
should be Uint8Array"); |
| 70 var newBuffer; |
| 71 if (retrievedArrayBuffer) { |
| 72 newBuffer = new ArrayBuffer(data.value.length + retrievedArrayBuffer.le
ngth); |
| 73 newBuffer.set(retrievedArrayBuffer, 0); |
| 74 newBuffer.set(data.value, retrievedArrayBuffer.length); |
| 75 } else { |
| 76 newBuffer = data.value; |
| 77 } |
| 78 return validateStreamFromString(reader, expectedValue, newBuffer); |
| 79 } |
| 80 validateBufferFromString(retrievedArrayBuffer, expectedValue, "Retrieve and
verify stream"); |
| 81 }); |
| 82 } |
| 83 |
| 84 // From streams tests |
| 85 function delay(milliseconds) |
| 86 { |
| 87 return new Promise(function(resolve) { |
| 88 step_timeout(resolve, milliseconds); |
| 89 }); |
| 90 } |
OLD | NEW |