From 6e0a9be7c9c550760245a7d4908ae28f1402a1b5 Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Wed, 19 Oct 2011 20:39:45 -0700 Subject: [PATCH] * test/automated/vc-bzr.el: New file. --- test/ChangeLog | 4 +++ test/automated/vc-bzr.el | 64 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 68 insertions(+) create mode 100644 test/automated/vc-bzr.el diff --git a/test/ChangeLog b/test/ChangeLog index ea6d90b534c..366ad44c712 100644 --- a/test/ChangeLog +++ b/test/ChangeLog @@ -1,3 +1,7 @@ +2011-10-20 Glenn Morris + + * automated/vc-bzr.el: New file. + 2011-10-15 Glenn Morris * automated/f90.el: New file. diff --git a/test/automated/vc-bzr.el b/test/automated/vc-bzr.el new file mode 100644 index 00000000000..8a80fe280f2 --- /dev/null +++ b/test/automated/vc-bzr.el @@ -0,0 +1,64 @@ +;;; vc-bzr.el --- tests for vc/vc-bzr.el + +;; Copyright (C) 2011 Free Software Foundation, Inc. + +;; Author: Glenn Morris + +;; This file is part of GNU Emacs. + +;; GNU Emacs is free software: you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation, either version 3 of the License, or +;; (at your option) any later version. + +;; GNU Emacs is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with GNU Emacs. If not, see . + +;;; Commentary: + +;;; Code: + +(require 'ert) +(require 'vc-bzr) +(require 'vc-dir) + +;; FIXME it would be better to skip all these tests if there is no +;; bzr installed. We could just put everything inside an IF +;; statement, but it would be nice if ERT had a "skipped" facility (?). + +(ert-deftest vc-bzr-test-bug9726 () + "Test for http://debbugs.gnu.org/9726 ." + :expected-result (if (executable-find vc-bzr-program) :passed :failed) + (should (executable-find vc-bzr-program)) + (let* ((tempdir (make-temp-file "vc-bzr-test" t)) + (ignored-dir (expand-file-name "ignored-dir" tempdir)) + (default-directory (file-name-as-directory tempdir))) + (unwind-protect + (progn + (make-directory ignored-dir) + (with-temp-buffer + (insert (file-name-nondirectory ignored-dir)) + (write-region nil nil (expand-file-name ".bzrignore" tempdir) + nil 'silent)) + (call-process vc-bzr-program nil nil nil "init") + (call-process vc-bzr-program nil nil nil "add") + (call-process vc-bzr-program nil nil nil "commit" "-m" "Commit 1") + (with-temp-buffer + (insert "unregistered file") + (write-region nil nil (expand-file-name "testfile2" ignored-dir) + nil 'silent)) + (vc-dir ignored-dir) + (while (vc-dir-busy) + (sit-for 0.1)) + ;; FIXME better to explicitly test for error from process sentinel. + (with-current-buffer "*vc-dir*" + (goto-char (point-min)) + (should (search-forward "unregistered" nil t)))) + (delete-directory tempdir t)))) + +;;; vc-bzr.el ends here -- 2.39.2