35#include <boost/test/unit_test.hpp>
40#include <boost/test/tools/floating_point_comparison.hpp>
41#include <boost/test/unit_test.hpp>
45namespace LowerTriangularStoragePolicyUnitTests
55 unsigned int curRow = 0;
56 unsigned int curColumn = 0;
57 std::tie(curRow, curColumn) =
59 BOOST_CHECK_EQUAL(1, curRow);
60 BOOST_CHECK_EQUAL(0, curColumn);
62 std::tie(curRow, curColumn) =
64 BOOST_CHECK_EQUAL(2, curRow);
65 BOOST_CHECK_EQUAL(0, curColumn);
67 std::tie(curRow, curColumn) =
69 BOOST_CHECK_EQUAL(1, curRow);
70 BOOST_CHECK_EQUAL(1, curColumn);
72 std::tie(curRow, curColumn) =
74 BOOST_CHECK_EQUAL(2, curRow);
75 BOOST_CHECK_EQUAL(1, curColumn);
77 std::tie(curRow, curColumn) =
79 BOOST_CHECK_EQUAL(2, curRow);
80 BOOST_CHECK_EQUAL(2, curColumn);
82 std::tie(curRow, curColumn) =
84 BOOST_CHECK_EQUAL(std::numeric_limits<unsigned int>::max(), curRow);
85 BOOST_CHECK_EQUAL(std::numeric_limits<unsigned int>::max(), curColumn);
90 unsigned int curRow = 0;
91 unsigned int curColumn = 0;
92 std::tie(curRow, curColumn) =
94 BOOST_CHECK_EQUAL(std::numeric_limits<unsigned int>::max(), curRow);
95 BOOST_CHECK_EQUAL(std::numeric_limits<unsigned int>::max(), curColumn);
100 unsigned int curRow = 0;
101 unsigned int curColumn = 0;
102 std::tie(curRow, curColumn) =
104 BOOST_CHECK_EQUAL(1, curRow);
105 BOOST_CHECK_EQUAL(0, curColumn);
107 std::tie(curRow, curColumn) =
109 BOOST_CHECK_EQUAL(1, curRow);
110 BOOST_CHECK_EQUAL(1, curColumn);
112 std::tie(curRow, curColumn) =
114 BOOST_CHECK_EQUAL(std::numeric_limits<unsigned int>::max(), curRow);
115 BOOST_CHECK_EQUAL(std::numeric_limits<unsigned int>::max(), curColumn);
BOOST_AUTO_TEST_CASE(TestAdvanceLowerTriangular)
LowerTriangularMatrixFuncs 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, char transpose='N')