forked from libfann/fann
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Added unittests (for now only a few tests and only for VS2010)
Made error messages better, when calling non-array create methods
- Loading branch information
1 parent
014ce4a
commit e7880e5
Showing
190 changed files
with
135,450 additions
and
22 deletions.
There are no files selected for viewing
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
<?xml version="1.0"?> | ||
<configuration> | ||
<appSettings> | ||
<add key="gtest" value="C:\DEV\fann\bin\tests_floatd.exe" /> | ||
<add key="gtest-params" value="" /> | ||
<add key="gtest-filters" value="" /> | ||
<add key="maxHistory" value="5" /> | ||
</appSettings> | ||
<startup/> | ||
</configuration> |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,130 @@ | ||
Changes for 1.6.0: | ||
|
||
* New feature: ADD_FAILURE_AT() for reporting a test failure at the | ||
given source location -- useful for writing testing utilities. | ||
* New feature: the universal value printer is moved from Google Mock | ||
to Google Test. | ||
* New feature: type parameters and value parameters are reported in | ||
the XML report now. | ||
* A gtest_disable_pthreads CMake option. | ||
* Colored output works in GNU Screen sessions now. | ||
* Parameters of value-parameterized tests are now printed in the | ||
textual output. | ||
* Failures from ad hoc test assertions run before RUN_ALL_TESTS() are | ||
now correctly reported. | ||
* Arguments of ASSERT_XY and EXPECT_XY no longer need to support << to | ||
ostream. | ||
* More complete handling of exceptions. | ||
* GTEST_ASSERT_XY can be used instead of ASSERT_XY in case the latter | ||
name is already used by another library. | ||
* --gtest_catch_exceptions is now true by default, allowing a test | ||
program to continue after an exception is thrown. | ||
* Value-parameterized test fixtures can now derive from Test and | ||
WithParamInterface<T> separately, easing conversion of legacy tests. | ||
* Death test messages are clearly marked to make them more | ||
distinguishable from other messages. | ||
* Compatibility fixes for Android, Google Native Client, MinGW, HP UX, | ||
PowerPC, Lucid autotools, libCStd, Sun C++, Borland C++ Builder (Code Gear), | ||
IBM XL C++ (Visual Age C++), and C++0x. | ||
* Bug fixes and implementation clean-ups. | ||
* Potentially incompatible changes: disables the harmful 'make install' | ||
command in autotools. | ||
|
||
Changes for 1.5.0: | ||
|
||
* New feature: assertions can be safely called in multiple threads | ||
where the pthreads library is available. | ||
* New feature: predicates used inside EXPECT_TRUE() and friends | ||
can now generate custom failure messages. | ||
* New feature: Google Test can now be compiled as a DLL. | ||
* New feature: fused source files are included. | ||
* New feature: prints help when encountering unrecognized Google Test flags. | ||
* Experimental feature: CMake build script (requires CMake 2.6.4+). | ||
* Experimental feature: the Pump script for meta programming. | ||
* double values streamed to an assertion are printed with enough precision | ||
to differentiate any two different values. | ||
* Google Test now works on Solaris and AIX. | ||
* Build and test script improvements. | ||
* Bug fixes and implementation clean-ups. | ||
|
||
Potentially breaking changes: | ||
|
||
* Stopped supporting VC++ 7.1 with exceptions disabled. | ||
* Dropped support for 'make install'. | ||
|
||
Changes for 1.4.0: | ||
|
||
* New feature: the event listener API | ||
* New feature: test shuffling | ||
* New feature: the XML report format is closer to junitreport and can | ||
be parsed by Hudson now. | ||
* New feature: when a test runs under Visual Studio, its failures are | ||
integrated in the IDE. | ||
* New feature: /MD(d) versions of VC++ projects. | ||
* New feature: elapsed time for the tests is printed by default. | ||
* New feature: comes with a TR1 tuple implementation such that Boost | ||
is no longer needed for Combine(). | ||
* New feature: EXPECT_DEATH_IF_SUPPORTED macro and friends. | ||
* New feature: the Xcode project can now produce static gtest | ||
libraries in addition to a framework. | ||
* Compatibility fixes for Solaris, Cygwin, minGW, Windows Mobile, | ||
Symbian, gcc, and C++Builder. | ||
* Bug fixes and implementation clean-ups. | ||
|
||
Changes for 1.3.0: | ||
|
||
* New feature: death tests on Windows, Cygwin, and Mac. | ||
* New feature: ability to use Google Test assertions in other testing | ||
frameworks. | ||
* New feature: ability to run disabled test via | ||
--gtest_also_run_disabled_tests. | ||
* New feature: the --help flag for printing the usage. | ||
* New feature: access to Google Test flag values in user code. | ||
* New feature: a script that packs Google Test into one .h and one | ||
.cc file for easy deployment. | ||
* New feature: support for distributing test functions to multiple | ||
machines (requires support from the test runner). | ||
* Bug fixes and implementation clean-ups. | ||
|
||
Changes for 1.2.1: | ||
|
||
* Compatibility fixes for Linux IA-64 and IBM z/OS. | ||
* Added support for using Boost and other TR1 implementations. | ||
* Changes to the build scripts to support upcoming release of Google C++ | ||
Mocking Framework. | ||
* Added Makefile to the distribution package. | ||
* Improved build instructions in README. | ||
|
||
Changes for 1.2.0: | ||
|
||
* New feature: value-parameterized tests. | ||
* New feature: the ASSERT/EXPECT_(NON)FATAL_FAILURE(_ON_ALL_THREADS) | ||
macros. | ||
* Changed the XML report format to match JUnit/Ant's. | ||
* Added tests to the Xcode project. | ||
* Added scons/SConscript for building with SCons. | ||
* Added src/gtest-all.cc for building Google Test from a single file. | ||
* Fixed compatibility with Solaris and z/OS. | ||
* Enabled running Python tests on systems with python 2.3 installed, | ||
e.g. Mac OS X 10.4. | ||
* Bug fixes. | ||
|
||
Changes for 1.1.0: | ||
|
||
* New feature: type-parameterized tests. | ||
* New feature: exception assertions. | ||
* New feature: printing elapsed time of tests. | ||
* Improved the robustness of death tests. | ||
* Added an Xcode project and samples. | ||
* Adjusted the output format on Windows to be understandable by Visual Studio. | ||
* Minor bug fixes. | ||
|
||
Changes for 1.0.1: | ||
|
||
* Added project files for Visual Studio 7.1. | ||
* Fixed issues with compiling on Mac OS X. | ||
* Fixed issues with compiling on Cygwin. | ||
|
||
Changes for 1.0.0: | ||
|
||
* Initial Open Source release of Google Test |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,240 @@ | ||
######################################################################## | ||
# CMake build script for Google Test. | ||
# | ||
# To run the tests for Google Test itself on Linux, use 'make test' or | ||
# ctest. You can select which tests to run using 'ctest -R regex'. | ||
# For more options, run 'ctest --help'. | ||
|
||
# BUILD_SHARED_LIBS is a standard CMake variable, but we declare it here to | ||
# make it prominent in the GUI. | ||
option(BUILD_SHARED_LIBS "Build shared libraries (DLLs)." OFF) | ||
|
||
# When other libraries are using a shared version of runtime libraries, | ||
# Google Test also has to use one. | ||
option( | ||
gtest_force_shared_crt | ||
"Use shared (DLL) run-time lib even when Google Test is built as static lib." | ||
OFF) | ||
|
||
option(gtest_build_tests "Build all of gtest's own tests." OFF) | ||
|
||
option(gtest_build_samples "Build gtest's sample programs." OFF) | ||
|
||
option(gtest_disable_pthreads "Disable uses of pthreads in gtest." OFF) | ||
|
||
# Defines pre_project_set_up_hermetic_build() and set_up_hermetic_build(). | ||
include(cmake/hermetic_build.cmake OPTIONAL) | ||
|
||
if (COMMAND pre_project_set_up_hermetic_build) | ||
pre_project_set_up_hermetic_build() | ||
endif() | ||
|
||
######################################################################## | ||
# | ||
# Project-wide settings | ||
|
||
# Name of the project. | ||
# | ||
# CMake files in this project can refer to the root source directory | ||
# as ${gtest_SOURCE_DIR} and to the root binary directory as | ||
# ${gtest_BINARY_DIR}. | ||
# Language "C" is required for find_package(Threads). | ||
project(gtest CXX C) | ||
cmake_minimum_required(VERSION 2.6.2) | ||
|
||
if (COMMAND set_up_hermetic_build) | ||
set_up_hermetic_build() | ||
endif() | ||
|
||
# Define helper functions and macros used by Google Test. | ||
include(cmake/internal_utils.cmake) | ||
|
||
config_compiler_and_linker() # Defined in internal_utils.cmake. | ||
|
||
# Where Google Test's .h files can be found. | ||
include_directories( | ||
${gtest_SOURCE_DIR}/include | ||
${gtest_SOURCE_DIR}) | ||
|
||
# Where Google Test's libraries can be found. | ||
link_directories(${gtest_BINARY_DIR}/src) | ||
|
||
######################################################################## | ||
# | ||
# Defines the gtest & gtest_main libraries. User tests should link | ||
# with one of them. | ||
|
||
# Google Test libraries. We build them using more strict warnings than what | ||
# are used for other targets, to ensure that gtest can be compiled by a user | ||
# aggressive about warnings. | ||
cxx_library(gtest "${cxx_strict}" src/gtest-all.cc) | ||
cxx_library(gtest_main "${cxx_strict}" src/gtest_main.cc) | ||
target_link_libraries(gtest_main gtest) | ||
|
||
######################################################################## | ||
# | ||
# Samples on how to link user tests with gtest or gtest_main. | ||
# | ||
# They are not built by default. To build them, set the | ||
# gtest_build_samples option to ON. You can do it by running ccmake | ||
# or specifying the -Dbuild_gtest_samples=ON flag when running cmake. | ||
|
||
if (gtest_build_samples) | ||
cxx_executable(sample1_unittest samples gtest_main samples/sample1.cc) | ||
cxx_executable(sample2_unittest samples gtest_main samples/sample2.cc) | ||
cxx_executable(sample3_unittest samples gtest_main) | ||
cxx_executable(sample4_unittest samples gtest_main samples/sample4.cc) | ||
cxx_executable(sample5_unittest samples gtest_main samples/sample1.cc) | ||
cxx_executable(sample6_unittest samples gtest_main) | ||
cxx_executable(sample7_unittest samples gtest_main) | ||
cxx_executable(sample8_unittest samples gtest_main) | ||
cxx_executable(sample9_unittest samples gtest) | ||
cxx_executable(sample10_unittest samples gtest) | ||
endif() | ||
|
||
######################################################################## | ||
# | ||
# Google Test's own tests. | ||
# | ||
# You can skip this section if you aren't interested in testing | ||
# Google Test itself. | ||
# | ||
# The tests are not built by default. To build them, set the | ||
# gtest_build_tests option to ON. You can do it by running ccmake | ||
# or specifying the -Dgtest_build_tests=ON flag when running cmake. | ||
|
||
if (gtest_build_tests) | ||
# This must be set in the root directory for the tests to be run by | ||
# 'make test' or ctest. | ||
enable_testing() | ||
|
||
############################################################ | ||
# C++ tests built with standard compiler flags. | ||
|
||
cxx_test(gtest-death-test_test gtest_main) | ||
cxx_test(gtest_environment_test gtest) | ||
cxx_test(gtest-filepath_test gtest_main) | ||
cxx_test(gtest-linked_ptr_test gtest_main) | ||
cxx_test(gtest-listener_test gtest_main) | ||
cxx_test(gtest_main_unittest gtest_main) | ||
cxx_test(gtest-message_test gtest_main) | ||
cxx_test(gtest_no_test_unittest gtest) | ||
cxx_test(gtest-options_test gtest_main) | ||
cxx_test(gtest-param-test_test gtest | ||
test/gtest-param-test2_test.cc) | ||
cxx_test(gtest-port_test gtest_main) | ||
cxx_test(gtest_pred_impl_unittest gtest_main) | ||
cxx_test(gtest-printers_test gtest_main) | ||
cxx_test(gtest_prod_test gtest_main | ||
test/production.cc) | ||
cxx_test(gtest_repeat_test gtest) | ||
cxx_test(gtest_sole_header_test gtest_main) | ||
cxx_test(gtest_stress_test gtest) | ||
cxx_test(gtest-test-part_test gtest_main) | ||
cxx_test(gtest_throw_on_failure_ex_test gtest) | ||
cxx_test(gtest-typed-test_test gtest_main | ||
test/gtest-typed-test2_test.cc) | ||
cxx_test(gtest_unittest gtest_main) | ||
cxx_test(gtest-unittest-api_test gtest) | ||
|
||
############################################################ | ||
# C++ tests built with non-standard compiler flags. | ||
|
||
cxx_library(gtest_no_exception "${cxx_no_exception}" | ||
src/gtest-all.cc) | ||
cxx_library(gtest_main_no_exception "${cxx_no_exception}" | ||
src/gtest-all.cc src/gtest_main.cc) | ||
cxx_library(gtest_main_no_rtti "${cxx_no_rtti}" | ||
src/gtest-all.cc src/gtest_main.cc) | ||
|
||
cxx_test_with_flags(gtest-death-test_ex_nocatch_test | ||
"${cxx_exception} -DGTEST_ENABLE_CATCH_EXCEPTIONS_=0" | ||
gtest test/gtest-death-test_ex_test.cc) | ||
cxx_test_with_flags(gtest-death-test_ex_catch_test | ||
"${cxx_exception} -DGTEST_ENABLE_CATCH_EXCEPTIONS_=1" | ||
gtest test/gtest-death-test_ex_test.cc) | ||
|
||
cxx_test_with_flags(gtest_no_rtti_unittest "${cxx_no_rtti}" | ||
gtest_main_no_rtti test/gtest_unittest.cc) | ||
|
||
cxx_shared_library(gtest_dll "${cxx_default}" | ||
src/gtest-all.cc src/gtest_main.cc) | ||
|
||
cxx_executable_with_flags(gtest_dll_test_ "${cxx_default}" | ||
gtest_dll test/gtest_all_test.cc) | ||
set_target_properties(gtest_dll_test_ | ||
PROPERTIES | ||
COMPILE_DEFINITIONS "GTEST_LINKED_AS_SHARED_LIBRARY=1") | ||
|
||
if (NOT MSVC OR NOT MSVC_VERSION EQUAL 1600) | ||
# The C++ Standard specifies tuple_element<int, class>. | ||
# Yet MSVC 10's <utility> declares tuple_element<size_t, class>. | ||
# That declaration conflicts with our own standard-conforming | ||
# tuple implementation. Therefore using our own tuple with | ||
# MSVC 10 doesn't compile. | ||
cxx_library(gtest_main_use_own_tuple "${cxx_use_own_tuple}" | ||
src/gtest-all.cc src/gtest_main.cc) | ||
|
||
cxx_test_with_flags(gtest-tuple_test "${cxx_use_own_tuple}" | ||
gtest_main_use_own_tuple test/gtest-tuple_test.cc) | ||
|
||
cxx_test_with_flags(gtest_use_own_tuple_test "${cxx_use_own_tuple}" | ||
gtest_main_use_own_tuple | ||
test/gtest-param-test_test.cc test/gtest-param-test2_test.cc) | ||
endif() | ||
|
||
############################################################ | ||
# Python tests. | ||
|
||
cxx_executable(gtest_break_on_failure_unittest_ test gtest) | ||
py_test(gtest_break_on_failure_unittest) | ||
|
||
cxx_executable_with_flags( | ||
gtest_catch_exceptions_no_ex_test_ | ||
"${cxx_no_exception}" | ||
gtest_main_no_exception | ||
test/gtest_catch_exceptions_test_.cc) | ||
cxx_executable_with_flags( | ||
gtest_catch_exceptions_ex_test_ | ||
"${cxx_exception}" | ||
gtest_main | ||
test/gtest_catch_exceptions_test_.cc) | ||
py_test(gtest_catch_exceptions_test) | ||
|
||
cxx_executable(gtest_color_test_ test gtest) | ||
py_test(gtest_color_test) | ||
|
||
cxx_executable(gtest_env_var_test_ test gtest) | ||
py_test(gtest_env_var_test) | ||
|
||
cxx_executable(gtest_filter_unittest_ test gtest) | ||
py_test(gtest_filter_unittest) | ||
|
||
cxx_executable(gtest_help_test_ test gtest_main) | ||
py_test(gtest_help_test) | ||
|
||
cxx_executable(gtest_list_tests_unittest_ test gtest) | ||
py_test(gtest_list_tests_unittest) | ||
|
||
cxx_executable(gtest_output_test_ test gtest) | ||
py_test(gtest_output_test) | ||
|
||
cxx_executable(gtest_shuffle_test_ test gtest) | ||
py_test(gtest_shuffle_test) | ||
|
||
cxx_executable(gtest_throw_on_failure_test_ test gtest_no_exception) | ||
set_target_properties(gtest_throw_on_failure_test_ | ||
PROPERTIES | ||
COMPILE_FLAGS "${cxx_no_exception}") | ||
py_test(gtest_throw_on_failure_test) | ||
|
||
cxx_executable(gtest_uninitialized_test_ test gtest) | ||
py_test(gtest_uninitialized_test) | ||
|
||
cxx_executable(gtest_xml_outfile1_test_ test gtest_main) | ||
cxx_executable(gtest_xml_outfile2_test_ test gtest_main) | ||
py_test(gtest_xml_outfiles_test) | ||
|
||
cxx_executable(gtest_xml_output_unittest_ test gtest) | ||
py_test(gtest_xml_output_unittest) | ||
endif() |
Oops, something went wrong.