diff options
| author | 2022-03-16 05:50:52 -0700 | |
|---|---|---|
| committer | 2022-03-16 05:50:52 -0700 | |
| commit | 09a7b01ee7cc2af440c0a2a4cb685b9c7b0d1672 (patch) | |
| tree | 9f70bd95847be6462c3a0a13aee9305ee099e598 /integration/bunjs-only-snippets | |
| parent | fe89fc8a643635a4ecd1432dbebf9efc2779c7f0 (diff) | |
| download | bun-09a7b01ee7cc2af440c0a2a4cb685b9c7b0d1672.tar.gz bun-09a7b01ee7cc2af440c0a2a4cb685b9c7b0d1672.tar.zst bun-09a7b01ee7cc2af440c0a2a4cb685b9c7b0d1672.zip | |
cleanup error printing
Diffstat (limited to 'integration/bunjs-only-snippets')
| -rw-r--r-- | integration/bunjs-only-snippets/microtask.js | 76 | ||||
| -rw-r--r-- | integration/bunjs-only-snippets/microtask.test.js | 80 | ||||
| -rw-r--r-- | integration/bunjs-only-snippets/process-nexttick.test.js | 93 | 
3 files changed, 173 insertions, 76 deletions
| diff --git a/integration/bunjs-only-snippets/microtask.js b/integration/bunjs-only-snippets/microtask.js deleted file mode 100644 index c5acfd578..000000000 --- a/integration/bunjs-only-snippets/microtask.js +++ /dev/null @@ -1,76 +0,0 @@ -// You can verify this test is correct by copy pasting this into a browser's console and checking it doesn't throw an error. -var run = 0; - -await new Promise((resolve, reject) => { -  queueMicrotask(() => { -    if (run++ != 0) { -      reject(new Error("Microtask execution order is wrong: " + run)); -    } -    queueMicrotask(() => { -      if (run++ != 3) { -        reject(new Error("Microtask execution order is wrong: " + run)); -      } -    }); -  }); -  queueMicrotask(() => { -    if (run++ != 1) { -      reject(new Error("Microtask execution order is wrong: " + run)); -    } -    queueMicrotask(() => { -      if (run++ != 4) { -        reject(new Error("Microtask execution order is wrong: " + run)); -      } - -      queueMicrotask(() => { -        if (run++ != 6) { -          reject(new Error("Microtask execution order is wrong: " + run)); -        } -      }); -    }); -  }); -  queueMicrotask(() => { -    if (run++ != 2) { -      reject(new Error("Microtask execution order is wrong: " + run)); -    } -    queueMicrotask(() => { -      if (run++ != 5) { -        reject(new Error("Microtask execution order is wrong: " + run)); -      } - -      queueMicrotask(() => { -        if (run++ != 7) { -          reject(new Error("Microtask execution order is wrong: " + run)); -        } -        resolve(true); -      }); -    }); -  }); -}); - -{ -  var passed = false; -  try { -    queueMicrotask(1234); -  } catch (exception) { -    passed = exception instanceof TypeError; -  } - -  if (!passed) -    throw new Error( -      "queueMicrotask should throw a TypeError if the argument is not a function" -    ); -} - -{ -  var passed = false; -  try { -    queueMicrotask(); -  } catch (exception) { -    passed = exception instanceof TypeError; -  } - -  if (!passed) -    throw new Error( -      "queueMicrotask should throw a TypeError if the argument is empty" -    ); -} diff --git a/integration/bunjs-only-snippets/microtask.test.js b/integration/bunjs-only-snippets/microtask.test.js new file mode 100644 index 000000000..18956b1e5 --- /dev/null +++ b/integration/bunjs-only-snippets/microtask.test.js @@ -0,0 +1,80 @@ +import { it } from "bun:test"; + +it("queueMicrotask", async () => { +  // You can verify this test is correct by copy pasting this into a browser's console and checking it doesn't throw an error. +  var run = 0; + +  await new Promise((resolve, reject) => { +    queueMicrotask(() => { +      if (run++ != 0) { +        reject(new Error("Microtask execution order is wrong: " + run)); +      } +      queueMicrotask(() => { +        if (run++ != 3) { +          reject(new Error("Microtask execution order is wrong: " + run)); +        } +      }); +    }); +    queueMicrotask(() => { +      if (run++ != 1) { +        reject(new Error("Microtask execution order is wrong: " + run)); +      } +      queueMicrotask(() => { +        if (run++ != 4) { +          reject(new Error("Microtask execution order is wrong: " + run)); +        } + +        queueMicrotask(() => { +          if (run++ != 6) { +            reject(new Error("Microtask execution order is wrong: " + run)); +          } +        }); +      }); +    }); +    queueMicrotask(() => { +      if (run++ != 2) { +        reject(new Error("Microtask execution order is wrong: " + run)); +      } +      queueMicrotask(() => { +        if (run++ != 5) { +          reject(new Error("Microtask execution order is wrong: " + run)); +        } + +        queueMicrotask(() => { +          if (run++ != 7) { +            reject(new Error("Microtask execution order is wrong: " + run)); +          } +          resolve(true); +        }); +      }); +    }); +  }); + +  { +    var passed = false; +    try { +      queueMicrotask(1234); +    } catch (exception) { +      passed = exception instanceof TypeError; +    } + +    if (!passed) +      throw new Error( +        "queueMicrotask should throw a TypeError if the argument is not a function" +      ); +  } + +  { +    var passed = false; +    try { +      queueMicrotask(); +    } catch (exception) { +      passed = exception instanceof TypeError; +    } + +    if (!passed) +      throw new Error( +        "queueMicrotask should throw a TypeError if the argument is empty" +      ); +  } +}); diff --git a/integration/bunjs-only-snippets/process-nexttick.test.js b/integration/bunjs-only-snippets/process-nexttick.test.js new file mode 100644 index 000000000..ac53399c0 --- /dev/null +++ b/integration/bunjs-only-snippets/process-nexttick.test.js @@ -0,0 +1,93 @@ +import { it } from "bun:test"; + +it("process.nextTick", async () => { +  // You can verify this test is correct by copy pasting this into a browser's console and checking it doesn't throw an error. +  var run = 0; +  var queueMicrotask = process.nextTick; + +  await new Promise((resolve, reject) => { +    queueMicrotask(() => { +      if (run++ != 0) { +        reject(new Error("Microtask execution order is wrong: " + run)); +      } +      queueMicrotask(() => { +        if (run++ != 3) { +          reject(new Error("Microtask execution order is wrong: " + run)); +        } +      }); +    }); +    queueMicrotask(() => { +      if (run++ != 1) { +        reject(new Error("Microtask execution order is wrong: " + run)); +      } +      queueMicrotask(() => { +        if (run++ != 4) { +          reject(new Error("Microtask execution order is wrong: " + run)); +        } + +        queueMicrotask(() => { +          if (run++ != 6) { +            reject(new Error("Microtask execution order is wrong: " + run)); +          } +        }); +      }); +    }); +    queueMicrotask(() => { +      if (run++ != 2) { +        reject(new Error("Microtask execution order is wrong: " + run)); +      } +      queueMicrotask(() => { +        if (run++ != 5) { +          reject(new Error("Microtask execution order is wrong: " + run)); +        } + +        queueMicrotask(() => { +          if (run++ != 7) { +            reject(new Error("Microtask execution order is wrong: " + run)); +          } +          resolve(true); +        }); +      }); +    }); +  }); + +  { +    var passed = false; +    try { +      queueMicrotask(1234); +    } catch (exception) { +      passed = exception instanceof TypeError; +    } + +    if (!passed) +      throw new Error( +        "queueMicrotask should throw a TypeError if the argument is not a function" +      ); +  } + +  { +    var passed = false; +    try { +      queueMicrotask(); +    } catch (exception) { +      passed = exception instanceof TypeError; +    } + +    if (!passed) +      throw new Error( +        "queueMicrotask should throw a TypeError if the argument is empty" +      ); +  } + +  await new Promise((resolve, reject) => { +    process.nextTick( +      (first, second) => { +        if (first !== 12345 || second !== "hello") +          reject(new Error("process.nextTick called with wrong arguments")); +        resolve(true); +      }, +      12345, +      "hello" +    ); +  }); +}); | 
