emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master b63c353 3/4: Convert manual indent test for ruby-mode into unit t


From: Stefan Kangas
Subject: master b63c353 3/4: Convert manual indent test for ruby-mode into unit test
Date: Mon, 21 Sep 2020 12:48:40 -0400 (EDT)

branch: master
commit b63c3535b0cd45544b5af854f88984af5125dd0b
Author: Stefan Kangas <stefan@marxist.se>
Commit: Stefan Kangas <stefan@marxist.se>

    Convert manual indent test for ruby-mode into unit test
    
    * test/manual/indent/ruby.rb: Move from here...
    * test/lisp/progmodes/ruby-mode-resources/ruby.rb: ...to here.
    
    * test/lisp/progmodes/ruby-mode-tests.el
    (ruby-mode-tests-data-dir): New variable.
    (ruby--indent/converted-from-manual-test): New test.
---
 .../progmodes/ruby-mode-resources}/ruby.rb            |  0
 test/lisp/progmodes/ruby-mode-tests.el                | 19 +++++++++++++++++++
 2 files changed, 19 insertions(+)

diff --git a/test/manual/indent/ruby.rb 
b/test/lisp/progmodes/ruby-mode-resources/ruby.rb
similarity index 100%
rename from test/manual/indent/ruby.rb
rename to test/lisp/progmodes/ruby-mode-resources/ruby.rb
diff --git a/test/lisp/progmodes/ruby-mode-tests.el 
b/test/lisp/progmodes/ruby-mode-tests.el
index 9d677a2..fb3b42b 100644
--- a/test/lisp/progmodes/ruby-mode-tests.el
+++ b/test/lisp/progmodes/ruby-mode-tests.el
@@ -24,6 +24,12 @@
 (require 'ert)
 (require 'ruby-mode)
 
+(defvar ruby-mode-tests-data-dir
+  (file-truename
+   (expand-file-name "ruby-mode-resources/"
+                     (file-name-directory (or load-file-name
+                                              buffer-file-name)))))
+
 (defmacro ruby-with-temp-buffer (contents &rest body)
   (declare (indent 1) (debug t))
   `(with-temp-buffer
@@ -842,6 +848,19 @@ VALUES-PLIST is a list with alternating index and value 
elements."
       (ruby--insert-coding-comment "utf-8")
       (should (string= "# encoding: utf-8\n\n" (buffer-string))))))
 
+;; TODO: Convert these into unit proper tests instead of using an
+;;       external file.
+(ert-deftest ruby--indent/converted-from-manual-test ()
+  :tags '(:expensive-test)
+  ;; Converted from manual test.
+  (let ((buf (find-file-noselect (expand-file-name "ruby.rb"
+                                                   ruby-mode-tests-data-dir))))
+    (unwind-protect
+        (with-current-buffer buf
+          (let ((orig (buffer-string)))
+            (indent-region (point-min) (point-max))
+            (should (equal (buffer-string) orig))))
+      (kill-buffer buf))))
 
 (provide 'ruby-mode-tests)
 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]