Eric Ludlam [Sun, 31 Mar 2013 19:27:44 +0000 (15:27 -0400)]
Added cpproot tests
* test/manual/cedet/cit-cpproot.el: (cit-integ-cpproot-sys-subdir):
New. (cit-integ-cpproot-sys-srcdir):
New. (cit-src-cpproot-main-tags): Added 3 new
tags. (cit-cpproot-depfiles): New. (cit-ede-cpproot-test): Make copy
work in emacs 23&24. Add new include dirs Add more spp files. Check
all includes that they are found in the expected directories.
Eric Ludlam [Thu, 13 Sep 2012 01:38:12 +0000 (21:38 -0400)]
etc/srecode/c.srt: New file, contents from cpp.srt
etc/srecode/cpp.srt: Delete parts moved to c.srt
lisp/cedet/ede.el:
(ede-configuration-forms-menu): Make robust to cases where there is no
current project.
lisp/cedet/srecode/cpp.el:
(srecode-semantic-handle-:c): Renamed from the srecode-semantic-handle-:cpp.
(srecode-semantic-handle-:cpp): Calls above.
(c-mode::srecode-semantic-apply-tag-to-dict): Moved from a cpp-mode
function to a c-mode function. Note this in doc.
(srecode-c-apply-templates): Renamed from srecode-cpp-apply-templates
tests/cit-cpp.el:
(cit-plain-c-tags): New variable
(cit-srecode-fill-cpp): Insert above into a new file as part of a new program.
* test/manual/cedet/cit-cpp.el: (cit-header-cpp-tags): Add some code
to foo constructor. (cit-src-cpp-tags): Add stdio.h include. Add code
to the methods to call through the class and eventually print
MOOSE. (cit-main-cpp-tags): Remove stdio.h include. Replace print
code with call to the foo class to print
MOOSE. (cit-symref-operations): New variable.
(cit-remove-add-to-project-cpp): Delete .o files also.
(cit-remove-and-do-shared-lib): Specify the compiler to use.
zappo [Tue, 16 Mar 2010 03:05:27 +0000 (03:05 +0000)]
Improve compilation active detection
* test/manual/cedet/cit-cpp.el: (cit-remove-add-to-project-cpp)
(cit-remove-and-do-shared-lib): Use cit-wait-for-compilation and
cit-check-compilation-for-error.
zappo [Sat, 8 Aug 2009 21:51:27 +0000 (21:51 +0000)]
New make-type argument to control which include
variable is used
* test/manual/cedet/cit-cpp.el: (cit-srecode-fill-cpp): Accept
make-type argument. Control how projects are made based on what
include variable is used based on above.
Eric Ludlam [Mon, 30 Dec 2013 21:33:24 +0000 (16:33 -0500)]
Added more test data
* test/manual/cedet/cedet/semantic/tests/testvarnames.c:
(varorstruct): New struct and variable. (assigntovarorstruct): New
variable that doesn't start with 'var'. (test_1): Add test when
assigning into varorstruct that we get a match.
David Engster [Mon, 4 Nov 2013 22:15:03 +0000 (23:15 +0100)]
Make unit tests use randomized file names
* tests/cedet/semantic/stltest.el:
* tests/cedet/semantic/utest-parse.el:
* tests/cedet/srecode/fields-utest.el:
* tests/cedet/srecode/test-getset.el:
* tests/cedet/srecode/test.el:
* tests/eieio/eieio-test-persist.el: Make all those tests use
`make-temp-name' for their test files, so that tests can run in
parallel.
Eric Ludlam [Sat, 20 Aug 2011 17:11:28 +0000 (13:11 -0400)]
Force srecode repo location and add decorations to debug output
* test/manual/cedet/cedet/srecode/test.el: (cl, cedet-uutil): New
require (cedet-utests): Deleted require. (srecode-map-load-path):
Force the srecode repository location in. (srecode-utest-map-reset):
New test fcn. (srecode-utest-test): Add decorations to debug
output. (cedet/srecode/test): Fix require.
David Engster [Mon, 4 Nov 2013 22:15:03 +0000 (23:15 +0100)]
Make unit tests use randomized file names
* tests/cedet/semantic/stltest.el:
* tests/cedet/semantic/utest-parse.el:
* tests/cedet/srecode/fields-utest.el:
* tests/cedet/srecode/test-getset.el:
* tests/cedet/srecode/test.el:
* tests/eieio/eieio-test-persist.el: Make all those tests use
`make-temp-name' for their test files, so that tests can run in
parallel.
David Engster [Mon, 18 Nov 2013 22:11:17 +0000 (23:11 +0100)]
C++: Deal with 'using' statements when calculating scope
* semantic/bovine/c.el (semantic-ctxt-scoped-types): Go through all
tags around point and search them for using statements. Before, we
skipped the last one thinking that it would have to be function, but
it could also be a type.
* semantic/scope.el (semantic-completable-tags-from-type): When
creating the list of completable types, pull in types which are
referenced through 'using' statements.
* tests/cedet/semantic/test/manual/cedet/testusing.cpp:
* tests/cedet/semantic/test/manual/cedet/testusing.hh: Add tests for
the above.
David Engster [Mon, 18 Nov 2013 22:11:17 +0000 (23:11 +0100)]
C++: Deal with 'using' statements when calculating scope
* semantic/bovine/c.el (semantic-ctxt-scoped-types): Go through all
tags around point and search them for using statements. Before, we
skipped the last one thinking that it would have to be function, but
it could also be a type.
* semantic/scope.el (semantic-completable-tags-from-type): When
creating the list of completable types, pull in types which are
referenced through 'using' statements.
* tests/cedet/semantic/test/manual/cedet/testusing.cpp:
* tests/cedet/semantic/test/manual/cedet/testusing.hh: Add tests for
the above.
David Engster [Wed, 18 Sep 2013 19:44:03 +0000 (21:44 +0200)]
C/C++: Parse 'using' statements in the correct order.
(c++-mode:semantic-ctxt-scoped-types): In the case for using
statements outside of function scope, append them in the correct order
instead of using 'cons'. This is important since using statements may
depend on previous ones.
* tests/cedet/semantic/test/manual/cedet/testusing.cpp: Add test for
the above.
David Engster [Sun, 15 Sep 2013 09:19:30 +0000 (11:19 +0200)]
Another 'using namespace' fix
(semantic-analyze-scoped-types-default): If we cannot find a type in
the typecache, also look into the the types we already found. This is
necessary since in C++, a 'using namespace' can be dependend on a
previous one.
David Engster [Thu, 25 Oct 2012 18:38:27 +0000 (20:38 +0200)]
Simplify alias referencing and add tests.
* lisp/cedet/semantic/analyze.el (semantic-analyze-dereference-alias):
Only dereference first tag, since at least for C++ this is enough.
(semantic-analyze-current-context-default): Adapt comment.
* tests/cedet/semantic/test/manual/cedet/testusing.cpp: Add tests for
the above.
* Makefile (top-level): Remove eieio compilation and add compilation of
fallback eieio for Emacs 24.1 and 24.2. Throw error for Emacs 23.x.
* cedet-devel-load.el: Always require eieio at the top. Load
cedet-compat earlier. Remove advices for eieio helpers.
* cedet-remove-builtin.el: eieio must not be removed anymore.
* semantic/ede-grammar.el (semantic-ede-proj-target-grammar): Remove
cedet-compat from aux-packages initform, as it will be loaded by
cedet-devel-load anyway.
(ede-proj-makefile-insert-variables): Remove eieio from load-path.
* lisp/cedet/cedet-compat.el: Load fallback eieio for Emacs 24.1 and
24.2. Add new aliases for Emacs 24.3.
* Project.ede, Makefiles: Remove eieio and regenerate.
David Engster [Thu, 1 Dec 2011 19:13:55 +0000 (20:13 +0100)]
Fix unit testing for several tests and do better error checking.
* semantic/lex-spp-utests.el (semantic-lex-spp-write-utest):
* tests/cedet-utests.el (cedet-utest-eieio-classloader): Throw
error if we cannot locate test files.
* semantic/utest-c.el (semantic-utest-c-compare)
(semantic-utest-c-conditionals):
* semantic/lex-spp-utest.el (semantic-lex-spp-write-utest): Adapt
to new directory structure and do better error checking to avoid
silent failures in the future.
Eric Ludlam [Sat, 20 Aug 2011 17:03:04 +0000 (13:03 -0400)]
Refactor tests
* test/manual/cedet/cedet-utests.el: (cedet-uutil): New require, plus
all other unit test files. (cedet-utest-test-alist): eieio now has
loader test fcn (below) Re-order srecode
tests. (cedet-running-master-tests): Move to cedet-uutil.
(cedet-utest): Fix symbol names for initializing the test suite.
(cedet-utest-noninteractive): Move to
cedet-uutil. (cedet-utest-batch): Init semantic the new
way. (cedet-utest-frame, cedet-utest-last-log-item,
cedet-utest-log-timer) (cedet-utest-log-setup,
cedet-utest-elapsed-time) (cedet-utest-log-shutdown,
cedet=utest-log-shutdown-msg) (cedet-utest-show-log-end,
cedet-utest-post-command-hook) (cedet-utest-add-log-item-start,
cedet-utest-add-log-item-done) (cedet-utest-log-start,
cedet-utest-log): Moved to cedet-util.el
(cedet-utest-eieio-classloader): New loader for the EIEIO tests.
David Engster [Mon, 4 Nov 2013 22:15:03 +0000 (23:15 +0100)]
Make unit tests use randomized file names
* tests/cedet/semantic/stltest.el:
* tests/cedet/semantic/utest-parse.el:
* tests/cedet/srecode/fields-utest.el:
* tests/cedet/srecode/test-getset.el:
* tests/cedet/srecode/test.el:
* tests/eieio/eieio-test-persist.el: Make all those tests use
`make-temp-name' for their test files, so that tests can run in
parallel.
Eric Ludlam [Wed, 3 Aug 2011 01:41:26 +0000 (21:41 -0400)]
(Cit-Android): New Require. (Cedet-Integ-Test-Gnustep): Fix Typo. (Cedet-Integ-Test-Android): New Build Type Support For Android. (Cit-Make-Dir): Allow Making Trees Of Directories. (Cit-Compile-And-Wait): Only Regenerate The Project If That Project Type Can Be Regenerated. (Cit-Compile-And-Wait-Using-Ede-Command): New Way To Build That Uses Ede Commands Instead Of Hard-Coded Make Commands.
David Engster [Tue, 19 Oct 2010 15:01:44 +0000 (17:01 +0200)]
Ignore Members On Extra Tags
* Test/Manual/Cedet/Cedet-Integ-Test.El (Cit-Srecode-Verify-Tags):
Ignore Members Attribute For Extra Tags. Necessary Because Of The
Latest Changes To Semantic-Tag-Similar-P.
* test/manual/cedet/cedet-integ-test.el (cit-symref): New require.
(cedet-integ-test-proj): Disable auto add. Only do shared library
test with automake. (cit-run-target): Don't kill the buffer, wait
and show program output instead.
zappo [Tue, 16 Mar 2010 03:04:42 +0000 (03:04 +0000)]
Improve compilation error checking
* test/manual/cedet/cedet-integ-test.el (cit-compile-and-wait): Pull
out error checking. Add support for stripping erroneous
events. (cit-check-compilation-for-error): New, from above.
zappo [Sat, 26 Dec 2009 22:42:40 +0000 (22:42 +0000)]
Move compilation error handling to new function
* test/manual/cedet/cedet-integ-test.el (cit-dist): New require.
(cedet-integ-test-proj): Call new cit-dist tests.
(cit-compile-and-wait): Split part out to...
(cit-wait-for-compilation): New.
zappo [Thu, 15 Oct 2009 02:54:27 +0000 (02:54 +0000)]
Added lib dir and make-type argument
* test/manual/cedet/cedet-integ-test.el (cedet-integ-test-proj): Add a
lib dir. Add make-type arg to cit-remove-and-do-shared-lib call.
(cit-compile-and-wait): Accept an optional argument.
zappo [Sat, 8 Aug 2009 21:50:34 +0000 (21:50 +0000)]
(cedet-integ-test-Make,cedet-integ-test-Automake,cedet-integ-test-GNUStep): New (cedet-integ-test-proj): Take a make-type argumemt. Misc tests needed on new argument. Change how ede creates projects based on make-type. Remove spaces from the project name. (cit-finish-message): Ending message now includes the make type.
zappo [Sat, 30 May 2009 14:18:35 +0000 (14:18 +0000)]
Added cit uml
* test/manual/cedet/cedet-integ-test.el (cit-uml): New require
(cogre): New require (cedet-integ-test): Make a UML test dir. Call
`cit-fill-uml'. (cit-compile-and-wait): Kill Project.ede buffer
after compilation.
zappo [Thu, 12 Mar 2009 02:26:52 +0000 (02:26 +0000)]
Added new subdir and ensure that the base dir
is made first
* test/manual/cedet/cedet-integ-test.el (cedet-integ-base): New, using
old target value. (cedet-integ-target): Subdir under base
(cedet-integ-test): Make the base dir first.
(cit-srecode-verify-tags): Fix paren typos on error condition.
zappo [Thu, 12 Mar 2009 02:03:45 +0000 (02:03 +0000)]
(ede, ede-make): New require (cit-srecode-verify-tags): Fix debugging output on failure. Patch from David Engster (cit-compile-and-wait): Use ede-make-command
safanaj [Thu, 28 Aug 2008 23:17:26 +0000 (23:17 +0000)]
Added gnustep tests
* test/manual/cedet/cedet-integ-test.el Added stuff to test
ede-gnustep via `cit-ede-step-test' defined in cit-gnustep.el.
Something is not clear (ede-auto-add-method ???)
zappo [Sun, 24 Feb 2008 03:03:33 +0000 (03:03 +0000)]
Restructure and improve output
* test/manual/cedet/cedet-integ-test.el (cit-cpp,-el,-texi): Added
requires. (cedet-integ-test): Add in new calls to test support
files. (cit-header-tags, cit-src-tags, cit-main-tags,
cit-srecode-fill): Moved to cit-cpp.el (cit-srecode-fill-with-stuff):
Add empty-dict-entries argument. Add pauses for visual
effect. (cit-srecode-verify-tags): Fix to work, and actually throw an
error if things don't match up. (cit-tag-verify-error-debug): New
support class. (cit-compile-and-wait): New fcn. Error if compilation
fails.
Eric Ludlam [Mon, 24 Nov 2014 17:38:04 +0000 (12:38 -0500)]
Test typedef which has the keyword "class" included
* test/manual/cedet/cedet/semantic/tests/testtypedefs.cpp:
(NS2::Myclass, MyClassHandle, dixon): New test w/ a typedef that has
keyword "class" included, instead of omitted as with other tests.
David Engster [Fri, 20 Sep 2013 19:54:31 +0000 (21:54 +0200)]
Fix parsing of default values and display them in default formatter
* semantic/bovine/c.by (variablearg, varnamelist): Add default values
so that it can be later expanded into the tag.
(opt-stuff-after-symbol): Rename to 'brackets-after-symbol' and
remove empty match.
(multi-stage-dereference): Adapt to above rename.
(unaryexpression): Use 'symbol' instead of 'namespace-symbol', since
the latter also leads to an empty match at the end which would make
this too greedy.
* semantic/format.el (semantic-format-tag-prototype-default):
Display default values if available.
Parsing of default values for variables and function arguments was
broken with the refactoring done in rev. 7622. While fixing this, it
turned out that our parser for expressions like
char *foo = NULL;
was too greedy and also covered the semicolon because of empty matches
in rules 'opt-stuff-after-symbol' and 'opt-template-specifier',
leading to a variable with a default-value of "NULL;". This was fixed
by removing the empty match in 'opt-stuff-after-symbol' and using
'symbol' instead of 'namespace-symbol'.
Eric Ludlam [Sun, 24 Aug 2014 14:02:42 +0000 (10:02 -0400)]
detect-utest.el: (ede-detect-utest-configdir): New fcn (ede-detect-utest-arduino-install): New faux install dir (ede-detect-utest-init-dirmatch): Point at fake intalldir to get fake board.