X-Git-Url: http://cgit.sxemacs.org/?p=riece;a=blobdiff_plain;f=lisp%2Ftest%2Flunit.el;h=f4060325a80752b2cbc0926fdbbb1e8c20968f0b;hp=de29e87afb23e88244c7926dfd1628065e2128f0;hb=7ab83bc3940d98081b652f82cdc15581f87148fd;hpb=763c7d78847928b4b4e8d7b8bcf0524058936a3e diff --git a/lisp/test/lunit.el b/lisp/test/lunit.el index de29e87..f406032 100644 --- a/lisp/test/lunit.el +++ b/lisp/test/lunit.el @@ -292,134 +292,6 @@ signal an error if not." (length failures) (length errors)))))) -;; stolen (and renamed) from time-date.el. -(defun lunit-time-since (time) - "Return the time elapsed since TIME." - (let* ((current (current-time)) - (rest (when (< (nth 1 current) (nth 1 time)) - (expt 2 16)))) - (list (- (+ (car current) (if rest -1 0)) (car time)) - (- (+ (or rest 0) (nth 1 current)) (nth 1 time)) - (- (nth 2 current) (nth 2 time))))) - -(eval-and-compile - (luna-define-class lunit-test-reporter (lunit-test-listener) - (buffer - start-time)) - - (luna-define-internal-accessors 'lunit-test-reporter)) - -(defun lunit-escape-quote (string) - (let ((index 0)) - (while (string-match "\"" string index) - (setq string (replace-match """ nil t string) - index (+ 5 index))) - string)) - -(luna-define-method lunit-test-listener-error ((reporter lunit-test-reporter) - case error) - (save-excursion - (set-buffer (lunit-test-reporter-buffer-internal reporter)) - (insert (format "\ - -" - (lunit-escape-quote (pp-to-string error)))))) - -(luna-define-method lunit-test-listener-failure ((reporter lunit-test-reporter) - case failure) - (save-excursion - (set-buffer (lunit-test-reporter-buffer-internal reporter)) - (insert (format "\ - -" - (lunit-escape-quote (pp-to-string failure)))))) - -(luna-define-method lunit-test-listener-start ((reporter lunit-test-reporter) - case) - (save-excursion - (set-buffer (lunit-test-reporter-buffer-internal reporter)) - (goto-char (point-max)) - (narrow-to-region (point) (point)) - (insert (format "\ - -" - (lunit-test-name-internal case) - (luna-class-name case))) - (lunit-test-reporter-set-start-time-internal reporter (current-time)))) - -(luna-define-method lunit-test-listener-end ((reporter lunit-test-reporter) - case) - (let ((elapsed - (lunit-time-since - (lunit-test-reporter-start-time-internal reporter)))) - (save-excursion - (set-buffer (lunit-test-reporter-buffer-internal reporter)) - - (insert "\ - -") - (goto-char (point-min)) - (looking-at " *") - (goto-char (match-end 0)) - (insert (format " time=\"%.03f\" " - (+ (nth 1 elapsed) - (/ (nth 2 elapsed) 1000000.0)))) - (widen)))) - -(defun lunit-report (test) - "Run TEST and output result as XML." - (let* ((printer - (luna-make-entity 'lunit-test-printer)) - (result - (lunit-make-test-result printer)) - (buffer (find-file-noselect "lunit-report.xml")) - start-time) - (save-excursion - (set-buffer buffer) - (erase-buffer)) - (lunit-test-result-add-listener - result - (luna-make-entity 'lunit-test-reporter :buffer buffer)) - (setq start-time (current-time)) - (lunit-test-run test result) - (let ((assert-count - (lunit-test-result-assert-count-internal result)) - (failures - (lunit-test-result-failures-internal result)) - (errors - (lunit-test-result-errors-internal result)) - - (elapsed (lunit-time-since start-time))) - (princ (format "%d runs, %d assertions, %d failures, %d errors\n" - (lunit-test-number-of-tests test) - assert-count - (length failures) - (length errors))) - (save-excursion - (set-buffer buffer) - (goto-char (point-min)) - (insert (format "\ - - - - - - -" - (lunit-test-number-of-tests test) - (length failures) - (length errors) - (+ (nth 1 elapsed) - (/ (nth 2 elapsed) 1000000.0)) - (lunit-escape-quote (emacs-version)))) - (goto-char (point-max)) - (insert "\ - -") - (save-buffer) - )))) - (defvar imenu-create-index-function) (defun lunit-create-index-function () (require 'imenu)