Add tests for `Object.groupBy` and `Map.groupBy` with string items

This commit is contained in:
Sosuke Suzuki 2024-04-01 13:26:03 +09:00 committed by Philip Chimento
parent e0a0c27796
commit 112cf25567
2 changed files with 44 additions and 0 deletions

View File

@ -0,0 +1,22 @@
// Copyright (c) 2023 Ecma International. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-map.groupby
description: Map.groupBy works for string items
info: |
Map.groupBy ( items, callbackfn )
...
includes: [compareArray.js]
features: [array-grouping, Map]
---*/
const string = 'abcd';
const map = Map.groupBy(string, function (char) {
return char < 'c' ? 'before' : 'after';
});
assert.compareArray(Array.from(map.keys()), ['before', 'after']);
assert.compareArray(map.get('before'), ['a', 'b']);
assert.compareArray(map.get('odd'), ['c', 'd']);

View File

@ -0,0 +1,22 @@
// Copyright (c) 2023 Ecma International. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-object.groupby
description: Object.groupBy works for string items
info: |
Object.groupBy ( items, callbackfn )
...
includes: [compareArray.js]
features: [array-grouping]
---*/
const string = 'abcd';
const obj = Object.groupBy(string, function (char) {
return char < 'c' ? 'before' : 'after';
});
assert.compareArray(Object.keys(obj), ['before', 'after']);
assert.compareArray(obj['before'], ['a', 'b']);
assert.compareArray(obj['after'], ['c', 'd']);