00001
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034 #ifndef MOCKPP_RETURNSTUB_H
00035 #define MOCKPP_RETURNSTUB_H
00036
00037 #include <mockpp/mockpp.h>
00038
00039 #include <mockpp/compat/Formatter.h>
00040 #include <mockpp/compat/Asserter.h>
00041 #include <mockpp/stub/TypelessStub.h>
00042
00043
00044 MOCKPP_NS_START
00045
00050 template <typename R>
00051 class ReturnStub : public TypelessStub<R>
00052 {
00053 public:
00054
00058 ReturnStub( const R &in_result )
00059 : result(in_result)
00060 {}
00061
00065 virtual R typelessInvoke()
00066 {
00067 return result;
00068 }
00069
00074 virtual String describeTo( String &buffer ) const
00075 {
00076 String fmt = MOCKPP_PCHAR("returns <%1>");
00077 fmt << result;
00078 buffer += fmt;
00079 return buffer;
00080 }
00081
00082 private:
00083
00084 R result;
00085 };
00086
00087
00088 MOCKPP_NS_END
00089
00090
00091 #endif // MOCKPP_RETURNSTUB_H
00092
00093