@@ -9,6 +9,7 @@ describe("peekstack.health", function()
99 local original_health_info
1010 local original_executable
1111 local original_has
12+ local original_get_parser
1213
1314 --- @type string[]
1415 local messages
@@ -22,6 +23,7 @@ describe("peekstack.health", function()
2223 original_health_info = vim .health .info
2324 original_executable = vim .fn .executable
2425 original_has = vim .fn .has
26+ original_get_parser = vim .treesitter .get_parser
2527
2628 vim .health .start = function () end
2729 vim .health .ok = function (msg )
@@ -46,6 +48,7 @@ describe("peekstack.health", function()
4648 vim .health .info = original_health_info
4749 vim .fn .executable = original_executable
4850 vim .fn .has = original_has
51+ vim .treesitter .get_parser = original_get_parser
4952 config .setup ({})
5053 end )
5154
@@ -60,7 +63,7 @@ describe("peekstack.health", function()
6063
6164 health .check ()
6265
63- assert .is_true (vim .list_contains (messages , " ok:nvim >= 0.10 " ))
66+ assert .is_true (vim .list_contains (messages , " ok:nvim >= 0.12 " ))
6467 assert .is_true (vim .list_contains (messages , " ok:rg available" ))
6568 end )
6669
@@ -123,4 +126,31 @@ describe("peekstack.health", function()
123126 end
124127 assert .is_true (found_persist )
125128 end )
129+
130+ it (" reports tree-sitter info when context is enabled without a parser" , function ()
131+ vim .fn .has = function ()
132+ return 1
133+ end
134+ vim .fn .executable = function ()
135+ return 1
136+ end
137+ vim .treesitter .get_parser = function ()
138+ return nil
139+ end
140+ config .setup ({
141+ ui = {
142+ title = {
143+ context = {
144+ enabled = true ,
145+ },
146+ },
147+ },
148+ })
149+
150+ health .check ()
151+
152+ assert .is_true (
153+ vim .list_contains (messages , " info:tree-sitter context enabled but no parser for the current buffer filetype" )
154+ )
155+ end )
126156end )
0 commit comments