diff options
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/core/mem/test_core_mem.odin | 17 | ||||
| -rw-r--r-- | tests/core/runtime/test_core_runtime.odin | 15 |
2 files changed, 31 insertions, 1 deletions
diff --git a/tests/core/mem/test_core_mem.odin b/tests/core/mem/test_core_mem.odin index d282ae1fd..4f2095fca 100644 --- a/tests/core/mem/test_core_mem.odin +++ b/tests/core/mem/test_core_mem.odin @@ -1,6 +1,7 @@ package test_core_mem import "core:mem/tlsf" +import "core:mem/virtual" import "core:testing" @test @@ -38,4 +39,18 @@ test_tlsf_bitscan :: proc(t: ^testing.T) { testing.expectf(t, res == test.exp, "Expected tlsf.fls_uint(0x%16x) == %v, got %v", test.v, test.exp, res) } } -}
\ No newline at end of file +} + +@(test) +test_align_bumping_block_limit :: proc(t: ^testing.T) { + a: virtual.Arena + defer virtual.arena_destroy(&a) + + data, err := virtual.arena_alloc(&a, 4193371, 1) + testing.expect_value(t, err, nil) + testing.expect(t, len(data) == 4193371) + + data, err = virtual.arena_alloc(&a, 896, 64) + testing.expect_value(t, err, nil) + testing.expect(t, len(data) == 896) +} diff --git a/tests/core/runtime/test_core_runtime.odin b/tests/core/runtime/test_core_runtime.odin index be6c24c72..472a5527d 100644 --- a/tests/core/runtime/test_core_runtime.odin +++ b/tests/core/runtime/test_core_runtime.odin @@ -32,6 +32,21 @@ test_temp_allocator_big_alloc_and_alignment :: proc(t: ^testing.T) { } @(test) +test_align_bumping_block_limit :: proc(t: ^testing.T) { + a: runtime.Arena + a.minimum_block_size = 8*mem.Megabyte + defer runtime.arena_destroy(&a) + + data, err := runtime.arena_alloc(&a, 4193371, 1) + testing.expect_value(t, err, nil) + testing.expect(t, len(data) == 4193371) + + data, err = runtime.arena_alloc(&a, 896, 64) + testing.expect_value(t, err, nil) + testing.expect(t, len(data) == 896) +} + +@(test) test_temp_allocator_returns_correct_size :: proc(t: ^testing.T) { arena: runtime.Arena context.allocator = runtime.arena_allocator(&arena) |