[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] scratch/merge-cedet-tests da4dd24 253/316: New test for te
From: |
Edward John Steere |
Subject: |
[Emacs-diffs] scratch/merge-cedet-tests da4dd24 253/316: New test for testing ede/cpp-root projects. |
Date: |
Fri, 27 Jan 2017 20:03:44 +0000 (UTC) |
branch: scratch/merge-cedet-tests
commit da4dd241ab21f74a57f24e6315e63c45807244e6
Author: Eric Ludlam <address@hidden>
Commit: Edward John Steere <address@hidden>
New test for testing ede/cpp-root projects.
---
test/manual/cedet/cit-cpproot.el | 102 ++++++++++++++++++++++++++++++++++++++
1 file changed, 102 insertions(+)
diff --git a/test/manual/cedet/cit-cpproot.el b/test/manual/cedet/cit-cpproot.el
new file mode 100644
index 0000000..074dfbd
--- /dev/null
+++ b/test/manual/cedet/cit-cpproot.el
@@ -0,0 +1,102 @@
+;;; cit-cpproot.el --- Test ede/cpp-root project features
+;;
+;; Copyright (C) 2012 Eric M. Ludlam
+;;
+;; Author: Eric M. Ludlam <address@hidden>
+;;
+;; This program 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 2, or (at
+;; your option) any later version.
+
+;; This program 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 this program; see the file COPYING. If not, write to
+;; the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
+
+;;; Commentary:
+;;
+;; The ede/cpp-root project type has features designed to overlay on top
+;; of any project that is built out of a significant portion of C++
+;; code.
+;;
+;; In particular, ede/cpp-root projects support preprocessor symbols,
+;; and files of preprocessor symbols whos features need to be tested.
+
+;;; Code:
+(require 'cedet-android)
+(require 'ede/android)
+
+;;; Setup
+(defvar cit-integ-target-cpproot
+ (expand-file-name "edeproj_ede_cpproot" cedet-integ-base)
+ "Root of the EDE project integration tests for the ede/cpp-root project.")
+
+(defvar cit-integ-cpproot-subdir "integ_src/cpproot/"
+ "Directory of files to copy into the tmp project dir.")
+
+(defvar cit-integ-cpproot-srcdir
+ (expand-file-name
+ cit-integ-cpproot-subdir
+ (file-name-directory (locate-library "cit-cpproot")))
+ "The source directory dor the CPP root sources.")
+
+(defvar cit-src-cpproot-main-tags
+ (list
+ (semantic-tag-new-include "sppmacros.h" nil)
+ (semantic-tag-new-include "test.h" nil)
+ (semantic-tag-new-function
+ "main" "int"
+ (list (semantic-tag-new-variable "argc" "int")
+ (semantic-tag-new-variable "argv" "char"
+ nil
+ :pointer 1
+ :dereference 1)))
+ (semantic-tag-new-function "feature1" "int" nil)
+ (semantic-tag-new-function "feature2" "int" nil)
+ (semantic-tag-new-function "feature3" "int" nil)
+ (semantic-tag-new-function "generic_feature" "int" nil)
+ )
+ "List of tags we need to be able to to find in main.cpp")
+
+
+(defun cit-ede-cpproot-test ()
+ "Test EDE cpproot based Project."
+
+ ;; Create directory for the project
+ (cit-make-dir cit-integ-target-cpproot)
+
+ ;; Copy source files into the cpproot directory
+ (copy-directory cit-integ-cpproot-srcdir cit-integ-target-cpproot t t)
+
+ ;; Create the ede-cpp-root-project class directly.
+ (ede-cpp-root-project
+ "TESTCPPROOT"
+ :file (expand-file-name "main.cpp" cit-integ-target-cpproot)
+ :spp-table '( ("FEATURE3" . "1")
+ ("RANDOM" . "random") )
+ :spp-files '( "sppmacros.h" ))
+
+ ;; Load up main
+ (find-file (cit-file-cpproot "main.cpp"))
+
+ ;; Validate found tags based on project provided macros.
+ (cit-srecode-verify-tags (semantic-fetch-tags)
+ cit-src-cpproot-main-tags)
+
+ )
+
+
+(defun cit-file-cpproot (filename)
+ "Return a testing filename.
+Append FILENAME to the target directory."
+ (expand-file-name filename cit-integ-target-cpproot))
+
+(provide 'cit-cpproot)
+
+;;; cit-android.el ends here
- [Emacs-diffs] scratch/merge-cedet-tests e54714f 227/316: Add header comments and provide., (continued)
- [Emacs-diffs] scratch/merge-cedet-tests e54714f 227/316: Add header comments and provide., Edward John Steere, 2017/01/27
- [Emacs-diffs] scratch/merge-cedet-tests dfddc2d 262/316: (cit-make-dist): Use cit-check-compilation-for-error., Edward John Steere, 2017/01/27
- [Emacs-diffs] scratch/merge-cedet-tests 6d5a631 277/316: Add header comments and provide., Edward John Steere, 2017/01/27
- [Emacs-diffs] scratch/merge-cedet-tests 9b917c5 152/316: Major test restructure, Edward John Steere, 2017/01/27
- [Emacs-diffs] scratch/merge-cedet-tests c672504 249/316: etc/srecode/c.srt: New file, contents from cpp.srt, Edward John Steere, 2017/01/27
- [Emacs-diffs] scratch/merge-cedet-tests ecb61db 211/316: New test files combining macros and EDE, Edward John Steere, 2017/01/27
- [Emacs-diffs] scratch/merge-cedet-tests e4d6b74 280/316: Use new create functions for db tools, Edward John Steere, 2017/01/27
- [Emacs-diffs] scratch/merge-cedet-tests 0041d52 314/316: Add header comments and provide., Edward John Steere, 2017/01/27
- [Emacs-diffs] scratch/merge-cedet-tests 0141378 247/316: Remove obsolete cvs-auto-updated 'X-RCS' line., Edward John Steere, 2017/01/27
- [Emacs-diffs] scratch/merge-cedet-tests ede9f83 214/316: Simplify alias referencing and add tests., Edward John Steere, 2017/01/27
- [Emacs-diffs] scratch/merge-cedet-tests da4dd24 253/316: New test for testing ede/cpp-root projects.,
Edward John Steere <=
- [Emacs-diffs] scratch/merge-cedet-tests b0da906 144/316: New unit test for EDE project detection., Edward John Steere, 2017/01/27
- [Emacs-diffs] scratch/merge-cedet-tests ef840da 159/316: compdb: add project detection tests, Edward John Steere, 2017/01/27
- [Emacs-diffs] scratch/merge-cedet-tests fba6409 297/316: Add test for parsing local variables, Edward John Steere, 2017/01/27
- [Emacs-diffs] scratch/merge-cedet-tests 658ff90 205/316: (cedet-utest): Add EDE sanity check to the end., Edward John Steere, 2017/01/27
- [Emacs-diffs] scratch/merge-cedet-tests 99ad7b6 206/316: Added security test, Edward John Steere, 2017/01/27
- [Emacs-diffs] scratch/merge-cedet-tests 8989dc6 313/316: New Tests for ede-java-root-project type., Edward John Steere, 2017/01/27
- [Emacs-diffs] scratch/merge-cedet-tests e145e4d 088/316: ("Lisp"): Add cit-cpp, cit-el, cit-texi, cit-load, Edward John Steere, 2017/01/27
- [Emacs-diffs] scratch/merge-cedet-tests aa72e43 200/316: Fix unit testing for several tests and do better error checking., Edward John Steere, 2017/01/27
- [Emacs-diffs] scratch/merge-cedet-tests b85662e 218/316: New file, derived from logging functions in cedet-utest.el, Edward John Steere, 2017/01/27
- [Emacs-diffs] scratch/merge-cedet-tests 9cac087 281/316: Remove obsolete cvs-auto-updated 'X-RCS' line., Edward John Steere, 2017/01/27