diff options
| author | Daniel Gavin <danielgavin5@hotmail.com> | 2022-03-12 15:07:50 +0100 |
|---|---|---|
| committer | Daniel Gavin <danielgavin5@hotmail.com> | 2022-03-12 15:07:50 +0100 |
| commit | 5a95f96a9a96536e247c64af56f4a756c68b6bb3 (patch) | |
| tree | b4f15cd90d90788cfea2d6b201d28942d57a0eaf /src/testing | |
| parent | 09555a532c59b8116db09c747280461a1134b424 (diff) | |
Fix memory leak.
Diffstat (limited to 'src/testing')
| -rw-r--r-- | src/testing/testing.odin | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/testing/testing.odin b/src/testing/testing.odin index d6c01c8..4f5e704 100644 --- a/src/testing/testing.odin +++ b/src/testing/testing.odin @@ -118,8 +118,14 @@ setup :: proc(src: ^Source) { } } +@private +teardown :: proc(src: ^Source) { + index.free_static_index() +} + expect_signature_labels :: proc(t: ^testing.T, src: ^Source, expect_labels: []string) { setup(src); + defer teardown(src); help, ok := server.get_signature_information(src.document, src.position); @@ -151,6 +157,7 @@ expect_signature_labels :: proc(t: ^testing.T, src: ^Source, expect_labels: []st expect_signature_parameter_position :: proc(t: ^testing.T, src: ^Source, position: int) { setup(src); + defer teardown(src); help, ok := server.get_signature_information(src.document, src.position); @@ -161,6 +168,7 @@ expect_signature_parameter_position :: proc(t: ^testing.T, src: ^Source, positio expect_completion_labels :: proc(t: ^testing.T, src: ^Source, trigger_character: string, expect_labels: []string) { setup(src); + defer teardown(src); completion_context := server.CompletionContext { triggerCharacter = trigger_character, @@ -196,6 +204,7 @@ expect_completion_labels :: proc(t: ^testing.T, src: ^Source, trigger_character: expect_completion_details :: proc(t: ^testing.T, src: ^Source, trigger_character: string, expect_details: []string) { setup(src); + defer teardown(src); completion_context := server.CompletionContext { triggerCharacter = trigger_character, @@ -231,6 +240,7 @@ expect_completion_details :: proc(t: ^testing.T, src: ^Source, trigger_character expect_hover :: proc(t: ^testing.T, src: ^Source, expect_hover_string: string) { setup(src); + defer teardown(src); hover, ok := server.get_hover_information(src.document, src.position); @@ -250,6 +260,7 @@ expect_hover :: proc(t: ^testing.T, src: ^Source, expect_hover_string: string) { expect_definition_locations :: proc(t: ^testing.T, src: ^Source, expect_locations: []common.Location) { setup(src); + defer teardown(src); locations, ok := server.get_definition_location(src.document, src.position); |