mirror of
https://github.com/mat007/turtle.git
synced 2026-06-22 12:13:43 +00:00
Changed project layout
git-svn-id: https://svn.code.sf.net/p/turtle/code/trunk@460 860be788-9bd5-4423-9f1e-828f051e677b
This commit is contained in:
parent
b22842eade
commit
3358ddda0e
55 changed files with 32 additions and 0 deletions
85
test/mock_error.hpp
Normal file
85
test/mock_error.hpp
Normal file
|
|
@ -0,0 +1,85 @@
|
|||
//
|
||||
// Copyright Mathieu Champlon 2008
|
||||
//
|
||||
// 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)
|
||||
//
|
||||
// See http://turtle.sf.net for documentation.
|
||||
|
||||
#ifndef MOCK_TEST_MOCK_ERROR_HPP_INCLUDED
|
||||
#define MOCK_TEST_MOCK_ERROR_HPP_INCLUDED
|
||||
|
||||
#define MOCK_ERROR_POLICY mock_error
|
||||
#include <boost/lexical_cast.hpp>
|
||||
#include <stdexcept>
|
||||
|
||||
namespace
|
||||
{
|
||||
int missing_action_count = 0;
|
||||
int expected_call_count = 0;
|
||||
int unexpected_call_count = 0;
|
||||
int sequence_failed_count = 0;
|
||||
int verification_failed_count = 0;
|
||||
int untriggered_expectation_count = 0;
|
||||
|
||||
std::string last_context;
|
||||
}
|
||||
namespace mock
|
||||
{
|
||||
template< typename Result >
|
||||
struct mock_error
|
||||
{
|
||||
static Result abort()
|
||||
{
|
||||
throw std::runtime_error( "aborted" );
|
||||
}
|
||||
|
||||
static void checkpoint( const char* /*file*/, int /*line*/ )
|
||||
{}
|
||||
|
||||
template< typename Context >
|
||||
static void missing_action( const Context& context,
|
||||
const char* /*file*/, int /*line*/ )
|
||||
{
|
||||
last_context = boost::lexical_cast< std::string >( context );
|
||||
++missing_action_count;
|
||||
}
|
||||
template< typename Context >
|
||||
static void expected_call( const Context& /*context*/,
|
||||
const char* /*file*/, int /*line*/ )
|
||||
{
|
||||
last_context.clear();
|
||||
++expected_call_count;
|
||||
}
|
||||
template< typename Context >
|
||||
static void unexpected_call( const Context& context )
|
||||
{
|
||||
last_context = boost::lexical_cast< std::string >( context );
|
||||
++unexpected_call_count;
|
||||
}
|
||||
template< typename Context >
|
||||
static void sequence_failed( const Context& context,
|
||||
const char* /*file*/, int /*line*/ )
|
||||
{
|
||||
last_context = boost::lexical_cast< std::string >( context );
|
||||
++sequence_failed_count;
|
||||
}
|
||||
template< typename Context >
|
||||
static void verification_failed( const Context& context,
|
||||
const char* /*file*/, int /*line*/ )
|
||||
{
|
||||
last_context = boost::lexical_cast< std::string >( context );
|
||||
++verification_failed_count;
|
||||
}
|
||||
template< typename Context >
|
||||
static void untriggered_expectation( const Context& context,
|
||||
const char* /*file*/, int /*line*/ )
|
||||
{
|
||||
last_context = boost::lexical_cast< std::string >( context );
|
||||
++untriggered_expectation_count;
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
#endif // MOCK_TEST_MOCK_ERROR_HPP_INCLUDED
|
||||
Loading…
Add table
Add a link
Reference in a new issue