mirror of
https://github.com/denoland/deno.git
synced 2024-12-30 11:16:38 -05:00
f5e46c9bf2
This looks like a massive PR, but it's only a move from cli/tests -> tests, and updates of relative paths for files. This is the first step towards aggregate all of the integration test files under tests/, which will lead to a set of integration tests that can run without the CLI binary being built. While we could leave these tests under `cli`, it would require us to keep a more complex directory structure for the various test runners. In addition, we have a lot of complexity to ignore various test files in the `cli` project itself (cargo publish exclusion rules, autotests = false, etc). And finally, the `tests/` folder will eventually house the `test_ffi`, `test_napi` and other testing code, reducing the size of the root repo directory. For easier review, the extremely large and noisy "move" is in the first commit (with no changes -- just a move), while the remainder of the changes to actual files is in the second commit.
38 lines
922 B
JavaScript
38 lines
922 B
JavaScript
const mixed = new TextEncoder().encode("@Ā๐😀");
|
|
|
|
function generateRandom(bytes) {
|
|
const result = new Uint8Array(bytes);
|
|
let i = 0;
|
|
while (i < bytes) {
|
|
const toAdd = Math.floor(Math.random() * Math.min(4, bytes - i));
|
|
switch (toAdd) {
|
|
case 0:
|
|
result[i] = mixed[0];
|
|
i++;
|
|
break;
|
|
case 1:
|
|
result[i] = mixed[1];
|
|
result[i + 1] = mixed[2];
|
|
i += 2;
|
|
break;
|
|
case 2:
|
|
result[i] = mixed[3];
|
|
result[i + 1] = mixed[4];
|
|
result[i + 2] = mixed[5];
|
|
i += 3;
|
|
break;
|
|
case 3:
|
|
result[i] = mixed[6];
|
|
result[i + 1] = mixed[7];
|
|
result[i + 2] = mixed[8];
|
|
result[i + 3] = mixed[9];
|
|
i += 4;
|
|
break;
|
|
}
|
|
}
|
|
return result;
|
|
}
|
|
|
|
const randomData = generateRandom(1024);
|
|
const decoder = new TextDecoder();
|
|
for (let i = 0; i < 10_000; i++) decoder.decode(randomData);
|