1 /* ///////////////////////////////////////////////////////////////////////
2 * File: basic_vmatrix_test.h
10 * Copyright (c) 2008-2020, Waruqi All rights reserved.
11 * //////////////////////////////////////////////////////////////////// */
12 #ifndef EXTL_MATH_BASIC_VMATRIX_TEST_H
13 #define EXTL_MATH_BASIC_VMATRIX_TEST_H
15 /* ///////////////////////////////////////////////////////////////////////
16 * ::unit_test namespace
19 EXTL_TEST_NAME_BEGIN_NAMESPACE(basic_vmatrix_test
)
21 /* ///////////////////////////////////////////////////////////////////////
24 static int basic_vmatrix_test()
26 typedef buffer_selector
<int>::buffer_type buffer_type
;
27 typedef basic_vmatrix
<int, buffer_type
> vmatrix_type
;
29 int buf1
[] = { 1, 2, 3, 4 ,
32 vmatrix_type
ma1(buf1
, 3, 4);
34 EXTL_ASSERT(ma1
.find_min() == 1);
35 EXTL_ASSERT(ma1
.find_max() == 12);
36 EXTL_ASSERT(ma1
.sum() == 78);
39 EXTL_ASSERT(ma1
.dim0() == 3);
40 EXTL_ASSERT(ma1
.dim1() == 4);
41 EXTL_ASSERT(ma1
[0].dim0() == 4);
42 EXTL_ASSERT(ma1
.size() == 12);
44 EXTL_ASSERT(ma1
[1][0] == 5);
45 EXTL_ASSERT(ma1
.front() == 1);
46 EXTL_ASSERT(ma1
.back() == 12);
48 vmatrix_type
ma2(1, 3, 4);
52 EXTL_ASSERT(ma2
.at(1, 0) == 5);
53 EXTL_ASSERT(ma2
.front() == 1);
54 EXTL_ASSERT(ma2
.back() == 12);
58 EXTL_ASSERT(ma2
[1][0] == 6);
59 EXTL_ASSERT(ma2
.front() == 2);
60 EXTL_ASSERT(ma2
.back() == 13);
64 EXTL_ASSERT(ma2
[1][0] == 5);
65 EXTL_ASSERT(ma2
.front() == 1);
66 EXTL_ASSERT(ma2
.back() == 12);
70 EXTL_ASSERT(ma2
[1][0] == 2);
71 EXTL_ASSERT(ma2
.front() == 2);
72 EXTL_ASSERT(ma2
.back() == 2);
76 EXTL_ASSERT(ma2
[1][0] == -1);
77 EXTL_ASSERT(ma2
.front() == -1);
78 EXTL_ASSERT(ma2
.back() == -1);
82 EXTL_ASSERT(ma2
[1][0] == 0);
83 EXTL_ASSERT(ma2
.front() == 0);
84 EXTL_ASSERT(ma2
.back() == 0);
88 EXTL_ASSERT(ma2
[1][0] == 1);
89 EXTL_ASSERT(ma2
.front() == 1);
90 EXTL_ASSERT(ma2
.back() == 1);
92 /*for (vmatrix_type::const_iterator p = ma2.begin(); p != ma2.end(); ++p)
97 for (vmatrix_type::const_reverse_iterator rp = ma2.rbegin(); rp != ma2.rend(); ++rp)
102 /*int p1[] = { 1, 2, 3};
103 int p2[] = { 4, 5, 5};
104 basic_vvector<int> v1(p1, 3, false);
105 basic_vvector<int> v2(p2, 3);
106 basic_vmatrix<int> vm;
109 printf("%d\n", vm[0][0]);
110 printf("%d\n", vm[0][1]);
111 printf("%d\n", vm[1][0]);
112 printf("%d\n", vm[1][1]);
113 printf("%d\n", vm[2][0]);
114 printf("%d\n", vm[2][1]);*/
117 int basic_vmatrix_test_ret
= basic_vmatrix_test();
119 /* ///////////////////////////////////////////////////////////////////////
120 * ::unit_test namespace
122 EXTL_TEST_NAME_END_NAMESPACE(basic_vmatrix_test
)
125 /* //////////////////////////////////////////////////////////////////// */
126 #endif /* EXTL_MATH_BASIC_VMATRIX_TEST_H */
127 /* //////////////////////////////////////////////////////////////////// */