Function: ert-results-pop-to-backtrace-for-test-at-point

ert-results-pop-to-backtrace-for-test-at-point is an interactive and byte-compiled function defined in ert.el.gz.

Signature

(ert-results-pop-to-backtrace-for-test-at-point)

Documentation

Display the backtrace for the test at point.

To be used in the ERT results buffer.

Key Bindings

Source Code

;; Defined in /usr/src/emacs/lisp/emacs-lisp/ert.el.gz
(defun ert-results-pop-to-backtrace-for-test-at-point ()
  "Display the backtrace for the test at point.

To be used in the ERT results buffer."
  (interactive nil ert-results-mode)
  (let* ((test (ert--results-test-at-point-no-redefinition t))
         (stats ert--results-stats)
         (pos (ert--stats-test-pos stats test))
         (result (aref (ert--stats-test-results stats) pos)))
    (cl-etypecase result
      (ert-test-passed (error "Test passed, no backtrace available"))
      (ert-test-result-with-condition
       (let ((buffer (get-buffer-create "*ERT Backtrace*")))
         (pop-to-buffer buffer)
         (unless (derived-mode-p 'backtrace-mode)
           (backtrace-mode))
         (setq backtrace-insert-header-function
               (lambda () (ert--insert-backtrace-header (ert-test-name test)))
               backtrace-frames (ert-test-result-with-condition-backtrace result))
         (backtrace-print)
         (goto-char (point-min)))))))