コード例 #1
0
void check_raw_values_column_indices(const fixture<T,NA>& fix,
                                     const crs_matrix<T,NA>& m)
{
    if(fix.expected_items().empty()) return;

    if(m.size() != fix.expected_items().size()) {
        throw std::logic_error{"crs_matrix, value storage: wrong size"};
    }

    int i = 0;
    for(const auto& x : fix.expected_items()) {
        if(m[i] != x.val)
            throw std::logic_error{"crs_matrix, value storage"};

        if(m.begin_col_indices()[i] != x.col)
            throw std::logic_error{"crs_matrix, column indices"};
        ++i;
    }
}