diff options
| author | Jakub Konka <kubkon@jakubkonka.com> | 2022-01-17 12:26:48 +0100 |
|---|---|---|
| committer | Jakub Konka <kubkon@jakubkonka.com> | 2022-01-17 12:26:48 +0100 |
| commit | 90343d1868df01899b5cceea96f680e7bca38767 (patch) | |
| tree | 378382b93462a2cbb400b306841473ecfccd3e09 /lib/std/multi_array_list.zig | |
| parent | 144e36770ed7d7e1ddbcae61742cf76bfb8b0e41 (diff) | |
| download | zig-90343d1868df01899b5cceea96f680e7bca38767.tar.gz zig-90343d1868df01899b5cceea96f680e7bca38767.zip | |
libstd: add smoke test for insert methods in MultiArrayList
Diffstat (limited to 'lib/std/multi_array_list.zig')
| -rw-r--r-- | lib/std/multi_array_list.zig | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/lib/std/multi_array_list.zig b/lib/std/multi_array_list.zig index 7195aef55a..47d12884df 100644 --- a/lib/std/multi_array_list.zig +++ b/lib/std/multi_array_list.zig @@ -602,3 +602,22 @@ test "ensure capacity on empty list" { try testing.expectEqualSlices(u32, &[_]u32{ 9, 11 }, list.items(.a)); try testing.expectEqualSlices(u8, &[_]u8{ 10, 12 }, list.items(.b)); } + +test "insert elements" { + const ally = testing.allocator; + + const Foo = struct { + a: u8, + b: u32, + }; + + var list = MultiArrayList(Foo){}; + defer list.deinit(ally); + + try list.insert(ally, 0, .{ .a = 1, .b = 2 }); + try list.ensureUnusedCapacity(ally, 1); + list.insertAssumeCapacity(1, .{ .a = 2, .b = 3 }); + + try testing.expectEqualSlices(u8, &[_]u8{ 1, 2 }, list.items(.a)); + try testing.expectEqualSlices(u32, &[_]u32{ 2, 3 }, list.items(.b)); +} |
