summaryrefslogtreecommitdiff
path: root/tests/node_compat/test/parallel/test-buffer-iterator.js
diff options
context:
space:
mode:
Diffstat (limited to 'tests/node_compat/test/parallel/test-buffer-iterator.js')
-rw-r--r--tests/node_compat/test/parallel/test-buffer-iterator.js69
1 files changed, 69 insertions, 0 deletions
diff --git a/tests/node_compat/test/parallel/test-buffer-iterator.js b/tests/node_compat/test/parallel/test-buffer-iterator.js
new file mode 100644
index 000000000..8ac97e259
--- /dev/null
+++ b/tests/node_compat/test/parallel/test-buffer-iterator.js
@@ -0,0 +1,69 @@
+// deno-fmt-ignore-file
+// deno-lint-ignore-file
+
+// Copyright Joyent and Node contributors. All rights reserved. MIT license.
+// Taken from Node 18.12.1
+// This file is automatically generated by `tools/node_compat/setup.ts`. Do not modify this file manually.
+
+'use strict';
+require('../common');
+const assert = require('assert');
+
+const buffer = Buffer.from([1, 2, 3, 4, 5]);
+let arr;
+let b;
+
+// Buffers should be iterable
+
+arr = [];
+
+for (b of buffer)
+ arr.push(b);
+
+assert.deepStrictEqual(arr, [1, 2, 3, 4, 5]);
+
+
+// Buffer iterators should be iterable
+
+arr = [];
+
+for (b of buffer[Symbol.iterator]())
+ arr.push(b);
+
+assert.deepStrictEqual(arr, [1, 2, 3, 4, 5]);
+
+
+// buffer#values() should return iterator for values
+
+arr = [];
+
+for (b of buffer.values())
+ arr.push(b);
+
+assert.deepStrictEqual(arr, [1, 2, 3, 4, 5]);
+
+
+// buffer#keys() should return iterator for keys
+
+arr = [];
+
+for (b of buffer.keys())
+ arr.push(b);
+
+assert.deepStrictEqual(arr, [0, 1, 2, 3, 4]);
+
+
+// buffer#entries() should return iterator for entries
+
+arr = [];
+
+for (b of buffer.entries())
+ arr.push(b);
+
+assert.deepStrictEqual(arr, [
+ [0, 1],
+ [1, 2],
+ [2, 3],
+ [3, 4],
+ [4, 5],
+]);