diff src/testdir/test_vim9_class.vim @ 32898:cbb5a593c92a v9.0.1758

patch 9.0.1758: vim9 no class identifiers in stack dumps Commit: https://github.com/vim/vim/commit/0ffc17aa479867f6f3ee14a46cf71352f126b5ba Author: LemonBoy <thatlemon@gmail.com> Date: Sun Aug 20 18:09:11 2023 +0200 patch 9.0.1758: vim9 no class identifiers in stack dumps Problem: vim9 no class identifiers in stack dumps Solution: Prefix class members in stack traces with the class name followed by a dot. closes: #12866 closes: #12078 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: LemonBoy <thatlemon@gmail.com>
author Christian Brabandt <cb@256bit.org>
date Sun, 20 Aug 2023 18:15:03 +0200
parents a39314fa9495
children 54c01bb98b8e
line wrap: on
line diff
--- a/src/testdir/test_vim9_class.vim
+++ b/src/testdir/test_vim9_class.vim
@@ -2492,4 +2492,27 @@ def Test_multi_level_member_access()
   v9.CheckScriptSuccess(lines)
 enddef
 
+" Test expansion of <stack> with class methods.
+def Test_stack_expansion_with_methods()
+  var lines =<< trim END
+    vim9script
+
+    class C
+        def M1()
+            F0()
+        enddef
+    endclass
+
+    def F0()
+      assert_match('<SNR>\d\+_F\[1\]\.\.C\.M1\[1\]\.\.<SNR>\d\+_F0\[1\]$', expand('<stack>'))
+    enddef
+
+    def F()
+        C.new().M1()
+    enddef
+
+    F()
+  END
+  v9.CheckScriptSuccess(lines)
+enddef
 " vim: ts=8 sw=2 sts=2 expandtab tw=80 fdm=marker