From 3fa10f6e54d0ba3b08c18d99b0c857f08986e37a Mon Sep 17 00:00:00 2001 From: Yuan Fu Date: Fri, 13 Jan 2023 23:42:44 -0800 Subject: [PATCH] ; Add more c-ts-mode indent and filling tests * test/lisp/progmodes/c-ts-mode-resources/filling.erts: New file. * test/lisp/progmodes/c-ts-mode-resources/indent.erts: More tests. * test/lisp/progmodes/c-ts-mode-tests.el: (c-ts-mode-test-filling): new test. --- .../c-ts-mode-resources/filling.erts | 198 ++++++++++++++++++ .../progmodes/c-ts-mode-resources/indent.erts | 121 ++++++++++- test/lisp/progmodes/c-ts-mode-tests.el | 4 + 3 files changed, 322 insertions(+), 1 deletion(-) create mode 100644 test/lisp/progmodes/c-ts-mode-resources/filling.erts diff --git a/test/lisp/progmodes/c-ts-mode-resources/filling.erts b/test/lisp/progmodes/c-ts-mode-resources/filling.erts new file mode 100644 index 00000000000..e51e3658c83 --- /dev/null +++ b/test/lisp/progmodes/c-ts-mode-resources/filling.erts @@ -0,0 +1,198 @@ +Code: + (lambda () + (c-ts-mode) + (setq-local indent-tabs-mode nil) + (fill-paragraph)) + +Point-Char: | + +Name: Type 1 + +=-= +/* woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + * woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + * woooomy woooomy woooomy woooomy woooomy woooomy woooomy + */ +=-= +/* woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + * woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + * woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + */ +=-=-= + +Name: Type 2 + +=-= +/* woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + * woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + woooomy woooomy woooomy woooomy woooomy woooomy woooomy + */ +=-= +/* woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + * woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + * woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + */ +=-=-= + +Name: Type 3 + +=-= +/*================================================================ + woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + woooomy woooomy woooomy woooomy woooomy woooomy woooomy + woooomy woooomy woooomy woooomy woooomy woooomy woooomy + ================================================================*/ +=-= +/*================================================================ + woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + woooomy woooomy woooomy woooomy woooomy woooomy woooomy + ================================================================*/ +=-=-= + +Name: Type 4 + +=-= +/*================================================================ + * woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + woooomy woooomy woooomy woooomy woooomy + * ================================================================*/ +=-= +/*================================================================ + * woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + * woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + * woooomy woooomy woooomy woooomy woooomy + * ================================================================*/ +=-=-= + +Name: Type 5 + +/* woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + * woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + * woooomy woooomy woooomy woooomy woooomy woooomy woooomy + */ +=-= +/* woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + * woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + * woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + */ +=-=-= + +Name: Type 6 + +=-= +/* woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + woooomy woooomy woooomy woooomy woooomy woooomy woooomy + */ +=-= +/* woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + */ +=-=-= + +Name: Type 6 + +=-= +/* woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + woooomy woooomy woooomy woooomy woooomy woooomy woooomy + */ +=-= +/* woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + */ +=-=-= + +Name: Type 7 + +=-= +// woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy +// woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy +// woooomy woooomy woooomy woooomy woooomy woooomy woooomy +=-= +// woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy +// woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy +// woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy +=-=-= + +Name: Type 8 + +=-= +// ================================================================ +// woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy +// woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy +// woooomy woooomy woooomy woooomy woooomy woooomy woooomy +// ================================================================ +=-= +// ================================================================ +// woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy +// woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy +// woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy +// ================================================================ +=-=-= + +Name: Type 9 + +=-= +/* woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + woooomy woooomy woooomy woooomy woooomy woooomy woooomyyy */ +=-= +/* woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + woooomy woooomy woooomy woooomy woooomy woooomy woooomy + woooomyyy */ +=-=-= + +Name: Not Over Fill 1 + +=-= +// woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy +// woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy +// woooomy woooomy woooomy woooomy woooomy woooomy woooomy + +// |woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy +// woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy +// woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy + +// woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy +// woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy +// woooomy woooomy woooomy woooomy woooomy woooomy woooomy +=-=-= + +Name: Not Over Fill 2 + +=-= +// woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy +return; // woooomy woooomy woooomy woooomy woooomy woooomy woooomy +//| woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy +// woooomy woooomy woooomy woooomy woooomy woooomy woooomy +return; // woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy +=-= +// woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy +return; // woooomy woooomy woooomy woooomy woooomy woooomy woooomy +// woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy +// woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy +return; // woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy +=-=-= + +Name: Not Over Fill 3 + +=-= +// woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy +return; //| woooomy woooomy woooomy woooomy woooomy woooomy woooomy +// woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy +// woooomy woooomy woooomy woooomy woooomy woooomy woooomy +return; // woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy +=-= +// woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy +return; // woooomy woooomy woooomy woooomy woooomy woooomy woooomy + // woooomy woooomy woooomy woooomy woooomy woooomy woooomy + // woooomy woooomy woooomy woooomy woooomy woooomy woooomy + // woooomy woooomy +return; // woooomy woooomy woooomy woooomy woooomy woooomy woooomy woooomy +=-=-= diff --git a/test/lisp/progmodes/c-ts-mode-resources/indent.erts b/test/lisp/progmodes/c-ts-mode-resources/indent.erts index 5defcbd3c83..71524e273f3 100644 --- a/test/lisp/progmodes/c-ts-mode-resources/indent.erts +++ b/test/lisp/progmodes/c-ts-mode-resources/indent.erts @@ -1,8 +1,13 @@ Code: (lambda () + (setq indent-tabs-mode nil) + (setq c-ts-mode-indent-offset 2) + (setq c-ts-mode-indent-style 'gnu) (c-ts-mode) (indent-region (point-min) (point-max))) +Point-Char: | + Name: Basic =-= @@ -25,6 +30,68 @@ main (void) } =-=-= +Name: Labels (GNU Style) + +=-= +int +main (void) +{ + label: + return 0; + if (true) + { + label: + return 0; + } + else + { + if (true) + { + label: + return 0; + } + } +} +=-=-= + +Name: For Loop with Multi-line Condition (GNU Style) + +=-= +int main() +{ + for (int i = 0; + i < b; + i++) + { + return 0; + } +} +=-=-= + +Name: If-Else (GNU Style) + +=-= +int main() +{ + if (true) + { + return 0; + } + else + { + return 1; + } +} +=-=-= + +Name: Empty Line +=-= +int main() +{ + | +} +=-=-= + Name: Multiline Parameter List (bug#60398) =-= @@ -34,7 +101,7 @@ int f2(int x, }; =-=-= -Name: Multiline Block Comments (bug#60270) +Name: Multiline Block Comments 1 (bug#60270) =-= /** @@ -42,3 +109,55 @@ Name: Multiline Block Comments (bug#60270) * @arg1: */ =-=-= + +Name: Multiline Block Comments 2 (bug#60270) + +=-= +/* + some comment + */ +=-=-= + +Name: Multiline Block Comments 3 (bug#60270) + +=-= +/* some comment + */ +=-=-= + +Name: Multiline Block Comments 4 (bug#60270) + +=-= +/* + * Some comment + */ +=-=-= + + +Code: + (lambda () + (setq indent-tabs-mode nil) + (setq c-ts-mode-indent-offset 8) + (setq c-ts-mode-indent-style 'linux) + (c-ts-mode) + (indent-region (point-min) (point-max))) + +Name: Labels (Linux Style) + +=-=-= +int main (void) +{ +label: + return 0; + if (true) { +label: + return 0; + } + else { + if (true) { +label: + return 0; + } + } +} +=-=-= diff --git a/test/lisp/progmodes/c-ts-mode-tests.el b/test/lisp/progmodes/c-ts-mode-tests.el index 8606faf9913..3d0902fe501 100644 --- a/test/lisp/progmodes/c-ts-mode-tests.el +++ b/test/lisp/progmodes/c-ts-mode-tests.el @@ -27,5 +27,9 @@ (skip-unless (treesit-ready-p 'c)) (ert-test-erts-file (ert-resource-file "indent.erts"))) +(ert-deftest c-ts-mode-test-filling () + (skip-unless (treesit-ready-p 'c)) + (ert-test-erts-file (ert-resource-file "filling.erts"))) + (provide 'c-ts-mode-tests) ;;; c-ts-mode-tests.el ends here -- 2.39.2