From: Darren Hoo Date: Thu, 6 Oct 2011 17:13:59 +0000 (+0200) Subject: Don't set :filename if it's already set X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=9b72617d81a87cfbd30c2cf2f1abb34e3b5139f0;p=emacs.git Don't set :filename if it's already set * test/manual/cedet/cit-externaldb.el: (semanticdb-strip-find-results): Check if there already is a :filename attribute set, so that file information from GNU Global will not be lost. * tests/cit-externaldb.el: New test for :filename property. Make doc-string and comments generic, since this is not specific to GNU global. --- diff --git a/test/manual/cedet/cit-externaldb.el b/test/manual/cedet/cit-externaldb.el index 89897c407f5..cbc35047f8b 100644 --- a/test/manual/cedet/cit-externaldb.el +++ b/test/manual/cedet/cit-externaldb.el @@ -105,7 +105,7 @@ semanticdbenablefcn semanticdbclass cleanupfiles) - "Test GNU Global tooling integration if it is available." + "Test external database tooling integration if it is available." (let ((bufftokill (find-file (cit-file "Project.ede")))) ;; 1) Create @@ -113,7 +113,7 @@ ;; database. (funcall createfcn default-directory) - ;; 2) force ede's find file to use gnu global + ;; 2) force ede's find file to use external tool (require 'ede-locate) (let* ((ede-locate-setup-options (list edelocatesym)) (base default-directory) @@ -140,7 +140,7 @@ ;; After removing the old locate system, restore the old one. (ede-enable-locate-on-project) - ;; 3) Look up tags with a GNU Global database + ;; 3) Look up tags with a external database (if semanticdbenablefcn (save-excursion (let ((killme (find-file (cit-file "src/main.cpp")))) @@ -158,6 +158,11 @@ symrefsym (semanticdb-find-result-length res))) + (dolist (tag (semanticdb-strip-find-results res 'name)) + (if (not (semantic--tag-get-property tag :filename)) + (error "Tag %s does not point to a specific file." + (semantic-tag-name tag)))) + (kill-buffer killme)))) ;; else, message (message "Skipping %s database test : Nothing to test." symrefsym)) @@ -170,7 +175,7 @@ ;; Do the tests again. (cit-symref-quick-find-test) - ;; Delete the GTAGS and other files. + ;; Delete the files created by external tool. (dolist (F cleanupfiles) (when (file-exists-p F) (delete-file F)))