lang/java: refactor commands out into autoloads

This commit is contained in:
Henrik Lissner 2020-05-08 05:58:25 -04:00
parent b74abebffa
commit d1b3021304
No known key found for this signature in database
GPG key ID: 5F6C0EA160557395
3 changed files with 27 additions and 23 deletions

View file

@ -5,30 +5,14 @@
:after lsp-clients :after lsp-clients
:preface :preface
(setq lsp-java-workspace-dir (concat doom-etc-dir "java-workspace")) (setq lsp-java-workspace-dir (concat doom-etc-dir "java-workspace"))
(add-hook! java-mode-local-vars #'lsp!) (add-hook 'java-mode-local-vars-hook #'lsp!)
(when (featurep! :tools debugger +lsp) (when (featurep! :tools debugger +lsp)
(defun +java/run-test () (setq lsp-jt-root (concat lsp-java-server-install-dir "java-test/server/")
"Runs test at point. If in a method, runs the test method, otherwise runs the entire test class." dap-java-test-runner (concat lsp-java-server-install-dir "test-runner/junit-platform-console-standalone.jar"))
(interactive)
(condition-case nil
(dap-java-run-test-method)
(user-error (dap-java-run-test-class))))
(defun +java/debug-test ()
"Runs test at point in a debugger. If in a method, runs the test method, otherwise runs the entire test class."
(interactive)
(condition-case nil
(call-interactively #'dap-java-debug-test-method)
(user-error (call-interactively #'dap-java-debug-test-class))))
(map! :map java-mode-map (map! :map java-mode-map
:localleader :localleader
(:prefix ("t" . "Test") (:prefix ("t" . "Test")
:desc "Run test class or method" "t" #'+java/run-test :desc "Run test class or method" "t" #'+java/run-test
:desc "Run all tests in class" "a" #'dap-java-run-test-class :desc "Run all tests in class" "a" #'dap-java-run-test-class
:desc "Debug test class or method" "d" #'+java/debug-test :desc "Debug test class or method" "d" #'+java/debug-test
:desc "Debug all tests in class" "D" #'dap-java-debug-test-class))) :desc "Debug all tests in class" "D" #'dap-java-debug-test-class))))
:init
(when (featurep! :tools debugger +lsp)
(setq lsp-jt-root (concat lsp-java-server-install-dir "java-test/server/")
dap-java-test-runner (concat lsp-java-server-install-dir "test-runner/junit-platform-console-standalone.jar"))))

View file

@ -1,4 +1,4 @@
;;; lang/java/config.el -*- lexical-binding: t; -*- ;;; lang/java/autoload/java.el -*- lexical-binding: t; -*-
;; yasnippet defuns ;; yasnippet defuns
;;;###autoload ;;;###autoload

View file

@ -0,0 +1,20 @@
;;; lang/java/autoload/lsp.el -*- lexical-binding: t; -*-
;;;###if (featurep! :tools debugger +lsp)
;;;###autoload
(defun +java/run-test ()
"Runs test at point.
If in a method, runs the test method, otherwise runs the entire test class."
(interactive)
(condition-case nil
(dap-java-run-test-method)
(user-error (dap-java-run-test-class))))
;;;###autoload
(defun +java/debug-test ()
"Runs test at point in a debugger.
If in a method, runs the test method, otherwise runs the entire test class."
(interactive)
(condition-case nil
(call-interactively #'dap-java-debug-test-method)
(user-error (call-interactively #'dap-java-debug-test-class))))