35#include <boost/test/unit_test.hpp>
40#include <boost/test/tools/floating_point_comparison.hpp>
41#include <boost/test/unit_test.hpp>
45namespace SymmetricMatrixStoragePolicyUnitTests
54 unsigned int curRow = 0;
55 unsigned int curColumn = 0;
57 BOOST_CHECK_EQUAL(1, curRow);
58 BOOST_CHECK_EQUAL(0, curColumn);
61 BOOST_CHECK_EQUAL(2, curRow);
62 BOOST_CHECK_EQUAL(0, curColumn);
65 BOOST_CHECK_EQUAL(0, curRow);
66 BOOST_CHECK_EQUAL(1, curColumn);
69 BOOST_CHECK_EQUAL(1, curRow);
70 BOOST_CHECK_EQUAL(1, curColumn);
73 BOOST_CHECK_EQUAL(2, curRow);
74 BOOST_CHECK_EQUAL(1, curColumn);
77 BOOST_CHECK_EQUAL(0, curRow);
78 BOOST_CHECK_EQUAL(2, curColumn);
81 BOOST_CHECK_EQUAL(1, curRow);
82 BOOST_CHECK_EQUAL(2, curColumn);
85 BOOST_CHECK_EQUAL(2, curRow);
86 BOOST_CHECK_EQUAL(2, curColumn);
89 BOOST_CHECK_EQUAL(std::numeric_limits<unsigned int>::max(), curRow);
90 BOOST_CHECK_EQUAL(std::numeric_limits<unsigned int>::max(), curColumn);
95 unsigned int curRow = 0;
96 unsigned int curColumn = 0;
98 BOOST_CHECK_EQUAL(std::numeric_limits<unsigned int>::max(), curRow);
99 BOOST_CHECK_EQUAL(std::numeric_limits<unsigned int>::max(), curColumn);
104 unsigned int curRow = 0;
105 unsigned int curColumn = 0;
106 std::tie(curRow, curColumn) =
Policy::Advance(2, 2, curRow, curColumn);
107 BOOST_CHECK_EQUAL(1, curRow);
108 BOOST_CHECK_EQUAL(0, curColumn);
110 std::tie(curRow, curColumn) =
Policy::Advance(2, 2, curRow, curColumn);
111 BOOST_CHECK_EQUAL(0, curRow);
112 BOOST_CHECK_EQUAL(1, curColumn);
114 std::tie(curRow, curColumn) =
Policy::Advance(2, 2, curRow, curColumn);
115 BOOST_CHECK_EQUAL(1, curRow);
116 BOOST_CHECK_EQUAL(1, curColumn);
118 std::tie(curRow, curColumn) =
Policy::Advance(2, 2, curRow, curColumn);
119 BOOST_CHECK_EQUAL(std::numeric_limits<unsigned int>::max(), curRow);
120 BOOST_CHECK_EQUAL(std::numeric_limits<unsigned int>::max(), curColumn);
BOOST_AUTO_TEST_CASE(TestAdvanceSymmetric)
SymmetricMatrixFuncs Policy
void RedirectCerrIfNeeded()
The above copyright notice and this permission notice shall be included.
static std::tuple< unsigned int, unsigned int > Advance(const unsigned int totalRows, const unsigned int totalColumns, const unsigned int curRow, const unsigned int curColumn)