• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /***********************************************************************************
2   test_assign_op.h
3 
4     SUMMARY: Test functor template for assignment operators.
5 
6  * Copyright (c) 1997
7  * Mark of the Unicorn, Inc.
8  *
9  * Permission to use, copy, modify, distribute and sell this software
10  * and its documentation for any purpose is hereby granted without fee,
11  * provided that the above copyright notice appear in all copies and
12  * that both that copyright notice and this permission notice appear
13  * in supporting documentation.  Mark of the Unicorn makes no
14  * representations about the suitability of this software for any
15  * purpose.  It is provided "as is" without express or implied warranty.
16 
17 ***********************************************************************************/
18 #ifndef test_assign_op_H_
19 #define test_assign_op_H_
20 
21 #include "Prefix.h"
22 #ifdef EH_NEW_HEADERS
23 #  include <cassert>
24 #else
25 #  include <assert.h>
26 #endif
27 #include "nc_alloc.h"
28 
29 template <class T>
30 struct test_assign_op {
test_assign_optest_assign_op31   test_assign_op( const T& src )
32     : source(src) {
33     gTestController.SetCurrentTestName("assignment operator");
34   }
35 
operatortest_assign_op36   void operator()( T& t ) const {
37     t = source;
38 
39     // Prevent simulated failures during verification
40     gTestController.CancelFailureCountdown();
41     //EH_ASSERT( source == t );
42   }
43 private:
44   const T& source;
45 };
46 
47 #endif // test_assign_op_H_
48