[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/javaimp 2c871eb5c8 2/2: Add test for javaimp-parse--dec
From: |
Filipp Gunbin |
Subject: |
[elpa] externals/javaimp 2c871eb5c8 2/2: Add test for javaimp-parse--decl-prefix |
Date: |
Fri, 13 May 2022 19:06:10 -0400 (EDT) |
branch: externals/javaimp
commit 2c871eb5c84da984a9ce03879ecb85a8c1e4a444
Author: Filipp Gunbin <fgunbin@fastmail.fm>
Commit: Filipp Gunbin <fgunbin@fastmail.fm>
Add test for javaimp-parse--decl-prefix
---
tests/parse.el | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 50 insertions(+)
diff --git a/tests/parse.el b/tests/parse.el
index b4c0b99121..86f8820c0f 100644
--- a/tests/parse.el
+++ b/tests/parse.el
@@ -61,6 +61,56 @@ Exception4<? super Exception5>>")
(should (equal (javaimp-parse--arglist (point-min) (point-max) t)
(cdr data))))))
+(ert-deftest javaimp-parse-decl-prefix ()
+ (dolist (data '(;; simple
+ (" void " . 2)
+ (" public static void " . 2)
+
+ ;; no sexps
+ (" ")
+ ;; incomplete sexps
+ ("var)")
+ (") ")
+
+ ;; don't go over / into braces
+ ("{ } void" . 6)
+ ("} void" . 3)
+ ;; don't go into parens
+ (") void" . 3)
+
+ ;; comments
+ ("\
+ /**
+ * javadoc1
+ */
+ public
+ // line comment
+ /**
+ * javadoc2
+ */
+ void " . 29)
+
+ ;; annotations
+ ("\
+ @Annotation1
+ @Annotation2(value = \"foo\")
+ @Annotation3({@Ann4(value = \"bar\"), @Ann4})
+ void " . 3)
+
+ ;; generics
+ ("public <T extends S> T " . 1)
+ ("<T extends S> T " . 1)
+ ;; don't go into incomplete generic
+ ("S> T " . 4)
+
+ ;; don't go over semicolon
+ ("foo(); void " . 8)))
+ (javaimp-with-temp-buffer nil
+ (insert (car data))
+ (should (equal (cdr data)
+ (javaimp-parse--decl-prefix))))))
+
+
;; Tests for scope parsers