aboutsummaryrefslogtreecommitdiff
path: root/bench/snippets/string-decoder.mjs
blob: 8f7cb31fb0769dd0d457375b8eb8de305c0b61c6 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
import { bench, run } from "mitata";
import { StringDecoder } from "string_decoder";

var short = Buffer.from("Hello World!");
var shortUTF16 = Buffer.from("Hello World 💕💕💕");
var long = Buffer.from("Hello World!".repeat(1024));
var longUTF16 = Buffer.from("Hello World 💕💕💕".repeat(1024));
bench(`${short.length} ascii`, () => {
  var decoder = new StringDecoder();
  decoder.write(short);
});

bench(`${short.length} utf8`, () => {
  var decoder = new StringDecoder();
  decoder.write(shortUTF16);
});

bench(`${long.length} ascii`, () => {
  var decoder = new StringDecoder();
  decoder.write(long);
});

bench(`${longUTF16.length} utf8`, () => {
  var decoder = new StringDecoder();
  decoder.write(longUTF16);
});

await run();