Как в gtest проверить элементы матрицы?
Пишу класс матрицу
template<class Ty, size_t N, size_t M>
class matrix {
public:
using value_type = Ty;
using size_type = size_t;
using row_type = STD array<value_type, M>;
using data_type = STD array<row_type, N>;
using iterator = typename data_type::iterator;
using const_iterator = typename data_type::const_iterator;
using reverse_iterator = typename data_type::reverse_iterator;
using const_reverse_iterator = typename data_type::const_reverse_iterator;
public:
const_iterator begin() const {
return _m_data.begin();
}
iterator begin() {
return _m_data.begin();
}
const_iterator end() const {
return _m_data.end();
}
iterator end() {
return _m_data.end();
}
private:
STD array<row_type, N> _m_data;
};
Теперь пишу тест к этому классу
#include <gmock/gmock.h>
#include <gtest/gtest.h>
#include "Container/MI.Matrix.h"
TEST(Matrix, DefaultConstructor) {
using matrix_type = MI matrix<int, 3, 3>;
using row_type = matrix_type::row_type;
matrix_type m;
ASSERT_THAT(m, testing::ElementsAre(row_type{0, 0, 0}, row_type{0, 0, 0}, row_type{0, 0, 0}));
}
Но получаю ошибку. Как тогда правильно сравнивать элементы матрицы?