#include <vector> #include <algorithm> #include <functional> #include "cppunit/cppunit_proxy.h" #if !defined (STLPORT) || defined(_STLP_USE_NAMESPACES) using namespace std; #endif // // TestCase class // class NeqTest : public CPPUNIT_NS::TestCase { CPPUNIT_TEST_SUITE(NeqTest); CPPUNIT_TEST(negate0); CPPUNIT_TEST(nequal0); CPPUNIT_TEST_SUITE_END(); protected: void negate0(); void nequal0(); }; CPPUNIT_TEST_SUITE_REGISTRATION(NeqTest); // // tests implementation // void NeqTest::negate0() { int input [3] = { 1, 2, 3 }; int output[3]; transform((int*)input, (int*)input + 3, (int*)output, negate<int>()); CPPUNIT_ASSERT(output[0]==-1); CPPUNIT_ASSERT(output[1]==-2); CPPUNIT_ASSERT(output[2]==-3); } void NeqTest::nequal0() { int input1 [4] = { 1, 7, 2, 2 }; int input2 [4] = { 1, 6, 2, 3 }; int output [4]; transform((int*)input1, (int*)input1 + 4, (int*)input2, (int*)output, not_equal_to<int>()); CPPUNIT_ASSERT(output[0]==0); CPPUNIT_ASSERT(output[1]==1); CPPUNIT_ASSERT(output[2]==0); CPPUNIT_ASSERT(output[3]==1); }