From 7d28fc0d78a45af567348757cfe2d2abeef635b6 Mon Sep 17 00:00:00 2001 From: mat007 Date: Wed, 18 May 2011 21:15:18 +0000 Subject: [PATCH] More test traces to analyse git-svn-id: https://svn.code.sf.net/p/turtle/code/trunk@335 860be788-9bd5-4423-9f1e-828f051e677b --- ...sting_base_class_method_in_mock_method.cpp | 22 ++++++++++++++++ ...of_arguments_greater_than_max_constant.cpp | 25 +++++++++++++++++++ .../too_many_arguments_in_mock_method.cpp | 23 +++++++++++++++++ 3 files changed, 70 insertions(+) create mode 100644 src/tests/errors_test/non_existing_base_class_method_in_mock_method.cpp create mode 100644 src/tests/errors_test/number_of_arguments_greater_than_max_constant.cpp create mode 100644 src/tests/errors_test/too_many_arguments_in_mock_method.cpp diff --git a/src/tests/errors_test/non_existing_base_class_method_in_mock_method.cpp b/src/tests/errors_test/non_existing_base_class_method_in_mock_method.cpp new file mode 100644 index 0000000..79aa3dd --- /dev/null +++ b/src/tests/errors_test/non_existing_base_class_method_in_mock_method.cpp @@ -0,0 +1,22 @@ +// +// Copyright Mathieu Champlon 2011 +// +// Distributed under the Boost Software License, Version 1.0. (See +// accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) +// + +#include + +namespace +{ + struct my_base + { + virtual ~my_base() {} + }; + + MOCK_BASE_CLASS( my_class, my_base ) + { + MOCK_METHOD( my_method, 0 ) + }; +} diff --git a/src/tests/errors_test/number_of_arguments_greater_than_max_constant.cpp b/src/tests/errors_test/number_of_arguments_greater_than_max_constant.cpp new file mode 100644 index 0000000..248f7ea --- /dev/null +++ b/src/tests/errors_test/number_of_arguments_greater_than_max_constant.cpp @@ -0,0 +1,25 @@ +// +// Copyright Mathieu Champlon 2011 +// +// Distributed under the Boost Software License, Version 1.0. (See +// accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) +// + +#include + +BOOST_STATIC_ASSERT( MOCK_MAX_ARGS == 9 ); + +namespace +{ + struct my_base + { + virtual ~my_base() {} + virtual void my_method( int, int, int, int, int, int, int, int, int, int ) = 0; + }; + + MOCK_BASE_CLASS( my_class, my_base ) + { + MOCK_METHOD( my_method, 10 ) + }; +} diff --git a/src/tests/errors_test/too_many_arguments_in_mock_method.cpp b/src/tests/errors_test/too_many_arguments_in_mock_method.cpp new file mode 100644 index 0000000..6d9226a --- /dev/null +++ b/src/tests/errors_test/too_many_arguments_in_mock_method.cpp @@ -0,0 +1,23 @@ +// +// Copyright Mathieu Champlon 2011 +// +// Distributed under the Boost Software License, Version 1.0. (See +// accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) +// + +#include + +namespace +{ + struct my_base + { + virtual ~my_base() {} + virtual void my_method( int ) = 0; + }; + + MOCK_BASE_CLASS( my_class, my_base ) + { + MOCK_METHOD( my_method, 2 ) + }; +}