diff options
| author | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2009-02-08 11:27:22 +0000 |
|---|---|---|
| committer | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2009-02-08 11:27:22 +0000 |
| commit | b8d177dd5d442b7bf9cc6731828602ca2e3f4ab1 (patch) | |
| tree | f5e6910890b757a604303c178804da4dcbaebd6b /test/array_funTest.cc | |
| parent | 9a7eee5cfa1d18149323e37be997dbae15dac6d3 (diff) | |
2009-02-08 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added tests for array_ptr.
* test/array_funTest.cc
Diffstat (limited to 'test/array_funTest.cc')
| -rw-r--r-- | test/array_funTest.cc | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/test/array_funTest.cc b/test/array_funTest.cc index 560d72a7..19cf2bfc 100644 --- a/test/array_funTest.cc +++ b/test/array_funTest.cc @@ -11,13 +11,21 @@ class array_funTest:public CppUnit::TestFixture { CPPUNIT_TEST(testArray_negate); CPPUNIT_TEST(testArray_and); CPPUNIT_TEST(testArrayLength); + CPPUNIT_TEST(testArrayPtr); CPPUNIT_TEST_SUITE_END(); + public: void testBit_negate(); void testBit_and(); void testArray_negate(); void testArray_and(); void testArrayLength(); + void testArrayPtr(); + + struct X{ + int m; + }; + }; @@ -77,4 +85,21 @@ void array_funTest::testArrayLength() CPPUNIT_ASSERT_EQUAL((size_t)0, arrayLength(zeroLengthArray)); } +// Check operator[] in const context. +static void arrayPtrConst(const array_ptr<struct array_funTest::X>& ax) +{ + CPPUNIT_ASSERT_EQUAL(100, ax[3].m); + CPPUNIT_ASSERT_EQUAL(99, ax[2].m); +} + +void array_funTest::testArrayPtr() +{ + array_ptr<struct X> ax(new struct X[10]); + ax[3].m = 100; + ax[2].m = 99; + CPPUNIT_ASSERT_EQUAL(100, ax[3].m); + CPPUNIT_ASSERT_EQUAL(99, ax[2].m); + arrayPtrConst(ax); +} + } // namespace aria2 |
