Skip to content

Commit

Permalink
test: updated tests programs
Browse files Browse the repository at this point in the history
  • Loading branch information
mrdcvlsc committed Aug 1, 2023
1 parent 25a44ac commit b84d8fa
Show file tree
Hide file tree
Showing 4 changed files with 68 additions and 173 deletions.
36 changes: 12 additions & 24 deletions test/init_mat.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,7 @@ int main() {

for (size_t i = 0; i < ROWS; ++i) {
for (size_t j = 0; j < COLS; ++j) {
mat_faxis_x_rmo(i, j) = mat_daxis_x_rmo(i, j) = mat_faxis_x_cmo(i, j) =
mat_daxis_x_cmo(i, j) = rng(rng_engine);
mat_faxis_x_rmo(i, j) = mat_daxis_x_rmo(i, j) = mat_faxis_x_cmo(i, j) = mat_daxis_x_cmo(i, j) = rng(rng_engine);
}
}

Expand Down Expand Up @@ -63,8 +62,7 @@ int main() {

for (size_t i = 0; i < COLS; ++i) {
for (size_t j = 0; j < ROWS; ++j) {
mat_faxis_y_rmo(i, j) = mat_daxis_y_rmo(i, j) = mat_faxis_y_cmo(i, j) =
mat_daxis_y_cmo(i, j) = rng(rng_engine);
mat_faxis_y_rmo(i, j) = mat_daxis_y_rmo(i, j) = mat_faxis_y_cmo(i, j) = mat_daxis_y_cmo(i, j) = rng(rng_engine);
}
}

Expand Down Expand Up @@ -111,8 +109,7 @@ int main() {

for (size_t i = 0; i < ROWS; ++i) {
for (size_t j = 0; j < COLS; ++j) {
mat_faxis_x_rmo(i, j) = mat_daxis_x_rmo(i, j) = mat_faxis_x_cmo(i, j) =
mat_daxis_x_cmo(i, j) = rng(rng_engine);
mat_faxis_x_rmo(i, j) = mat_daxis_x_rmo(i, j) = mat_faxis_x_cmo(i, j) = mat_daxis_x_cmo(i, j) = rng(rng_engine);
}
}

Expand Down Expand Up @@ -151,8 +148,7 @@ int main() {

for (size_t i = 0; i < COLS; ++i) {
for (size_t j = 0; j < ROWS; ++j) {
mat_faxis_y_rmo(i, j) = mat_daxis_y_rmo(i, j) = mat_faxis_y_cmo(i, j) =
mat_daxis_y_cmo(i, j) = rng(rng_engine);
mat_faxis_y_rmo(i, j) = mat_daxis_y_rmo(i, j) = mat_faxis_y_cmo(i, j) = mat_daxis_y_cmo(i, j) = rng(rng_engine);
}
}

Expand Down Expand Up @@ -199,8 +195,7 @@ int main() {

for (size_t i = 0; i < ROWS; ++i) {
for (size_t j = 0; j < COLS; ++j) {
mat_faxis_x_rmo(i, j) = mat_daxis_x_rmo(i, j) = mat_faxis_x_cmo(i, j) =
mat_daxis_x_cmo(i, j) = rng(rng_engine);
mat_faxis_x_rmo(i, j) = mat_daxis_x_rmo(i, j) = mat_faxis_x_cmo(i, j) = mat_daxis_x_cmo(i, j) = rng(rng_engine);
}
}

Expand Down Expand Up @@ -239,8 +234,7 @@ int main() {

for (size_t i = 0; i < COLS; ++i) {
for (size_t j = 0; j < ROWS; ++j) {
mat_faxis_y_rmo(i, j) = mat_daxis_y_rmo(i, j) = mat_faxis_y_cmo(i, j) =
mat_daxis_y_cmo(i, j) = rng(rng_engine);
mat_faxis_y_rmo(i, j) = mat_daxis_y_rmo(i, j) = mat_faxis_y_cmo(i, j) = mat_daxis_y_cmo(i, j) = rng(rng_engine);
}
}

Expand Down Expand Up @@ -287,8 +281,7 @@ int main() {

for (size_t i = 0; i < ROWS; ++i) {
for (size_t j = 0; j < COLS; ++j) {
mat_faxis_x_rmo(i, j) = mat_daxis_x_rmo(i, j) = mat_faxis_x_cmo(i, j) =
mat_daxis_x_cmo(i, j) = rng(rng_engine);
mat_faxis_x_rmo(i, j) = mat_daxis_x_rmo(i, j) = mat_faxis_x_cmo(i, j) = mat_daxis_x_cmo(i, j) = rng(rng_engine);
}
}

Expand Down Expand Up @@ -327,8 +320,7 @@ int main() {

for (size_t i = 0; i < COLS; ++i) {
for (size_t j = 0; j < ROWS; ++j) {
mat_faxis_y_rmo(i, j) = mat_daxis_y_rmo(i, j) = mat_faxis_y_cmo(i, j) =
mat_daxis_y_cmo(i, j) = rng(rng_engine);
mat_faxis_y_rmo(i, j) = mat_daxis_y_rmo(i, j) = mat_faxis_y_cmo(i, j) = mat_daxis_y_cmo(i, j) = rng(rng_engine);
}
}

Expand Down Expand Up @@ -375,8 +367,7 @@ int main() {

for (size_t i = 0; i < ROWS; ++i) {
for (size_t j = 0; j < COLS; ++j) {
mat_faxis_x_rmo(i, j) = mat_daxis_x_rmo(i, j) = mat_faxis_x_cmo(i, j) =
mat_daxis_x_cmo(i, j) = rng(rng_engine);
mat_faxis_x_rmo(i, j) = mat_daxis_x_rmo(i, j) = mat_faxis_x_cmo(i, j) = mat_daxis_x_cmo(i, j) = rng(rng_engine);
}
}

Expand Down Expand Up @@ -415,8 +406,7 @@ int main() {

for (size_t i = 0; i < COLS; ++i) {
for (size_t j = 0; j < ROWS; ++j) {
mat_faxis_y_rmo(i, j) = mat_daxis_y_rmo(i, j) = mat_faxis_y_cmo(i, j) =
mat_daxis_y_cmo(i, j) = rng(rng_engine);
mat_faxis_y_rmo(i, j) = mat_daxis_y_rmo(i, j) = mat_faxis_y_cmo(i, j) = mat_daxis_y_cmo(i, j) = rng(rng_engine);
}
}

Expand Down Expand Up @@ -463,8 +453,7 @@ int main() {

for (size_t i = 0; i < ROWS; ++i) {
for (size_t j = 0; j < COLS; ++j) {
mat_faxis_x_rmo(i, j) = mat_daxis_x_rmo(i, j) = mat_faxis_x_cmo(i, j) =
mat_daxis_x_cmo(i, j) = rng(rng_engine);
mat_faxis_x_rmo(i, j) = mat_daxis_x_rmo(i, j) = mat_faxis_x_cmo(i, j) = mat_daxis_x_cmo(i, j) = rng(rng_engine);
}
}

Expand Down Expand Up @@ -503,8 +492,7 @@ int main() {

for (size_t i = 0; i < COLS; ++i) {
for (size_t j = 0; j < ROWS; ++j) {
mat_faxis_y_rmo(i, j) = mat_daxis_y_rmo(i, j) = mat_faxis_y_cmo(i, j) =
mat_daxis_y_cmo(i, j) = rng(rng_engine);
mat_faxis_y_rmo(i, j) = mat_daxis_y_rmo(i, j) = mat_faxis_y_cmo(i, j) = mat_daxis_y_cmo(i, j) = rng(rng_engine);
}
}

Expand Down
154 changes: 5 additions & 149 deletions test/init_vec.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -158,154 +158,10 @@ int main() {
std::uniform_int_distribution<int> rng(0, std::numeric_limits<int>::max());

constexpr static size_t ROWS = 1;
constexpr static size_t COLS = 3;

vec<int, fixed<COLS>, axis_t::x> vec_faxis_x;
vec<int, dynamic, axis_t::x> vec_daxis_x(COLS);
mat<int, fixed<ROWS, COLS>, order_t::row_major> mat_faxis_x_rmo;
mat<int, dynamic, order_t::row_major> mat_daxis_x_rmo(ROWS, COLS);
mat<int, fixed<ROWS, COLS>, order_t::col_major> mat_faxis_x_cmo;
mat<int, dynamic, order_t::col_major> mat_daxis_x_cmo(ROWS, COLS);

for (size_t i = 0; i < ROWS; ++i) {
for (size_t j = 0; j < COLS; ++j) {
vec_faxis_x(i, j) = vec_daxis_x(i, j) = mat_faxis_x_rmo(i, j) = mat_daxis_x_rmo(i, j) = mat_faxis_x_cmo(i, j) =
mat_daxis_x_cmo(i, j) = rng(rng_engine);
}
}

assert(vec_faxis_x == vec_faxis_x);
assert(vec_faxis_x == vec_daxis_x);
assert(vec_faxis_x == mat_faxis_x_rmo);
assert(vec_faxis_x == mat_daxis_x_rmo);
assert(vec_faxis_x == mat_faxis_x_cmo);
assert(vec_faxis_x == mat_daxis_x_cmo);

assert(vec_daxis_x == vec_daxis_x);
assert(vec_daxis_x == mat_faxis_x_rmo);
assert(vec_daxis_x == mat_daxis_x_rmo);
assert(vec_daxis_x == mat_faxis_x_cmo);
assert(vec_daxis_x == mat_daxis_x_cmo);

assert(mat_faxis_x_rmo == mat_faxis_x_rmo);
assert(mat_faxis_x_rmo == mat_daxis_x_rmo);
assert(mat_faxis_x_rmo == mat_faxis_x_cmo);
assert(mat_faxis_x_rmo == mat_daxis_x_cmo);

assert(mat_daxis_x_rmo == mat_daxis_x_rmo);
assert(mat_daxis_x_rmo == mat_faxis_x_cmo);
assert(mat_daxis_x_rmo == mat_daxis_x_cmo);

assert(mat_faxis_x_cmo == mat_faxis_x_cmo);
assert(mat_faxis_x_cmo == mat_daxis_x_cmo);

assert(mat_daxis_x_cmo == mat_daxis_x_cmo);

assert(vec_faxis_x == vec_faxis_x);
assert(vec_daxis_x == vec_faxis_x);
assert(mat_faxis_x_rmo == vec_faxis_x);
assert(mat_daxis_x_rmo == vec_faxis_x);
assert(mat_faxis_x_cmo == vec_faxis_x);
assert(mat_daxis_x_cmo == vec_faxis_x);

assert(vec_daxis_x == vec_daxis_x);
assert(mat_faxis_x_rmo == vec_daxis_x);
assert(mat_daxis_x_rmo == vec_daxis_x);
assert(mat_faxis_x_cmo == vec_daxis_x);
assert(mat_daxis_x_cmo == vec_daxis_x);

assert(mat_faxis_x_rmo == mat_faxis_x_rmo);
assert(mat_daxis_x_rmo == mat_faxis_x_rmo);
assert(mat_faxis_x_cmo == mat_faxis_x_rmo);
assert(mat_daxis_x_cmo == mat_faxis_x_rmo);

assert(mat_daxis_x_rmo == mat_daxis_x_rmo);
assert(mat_faxis_x_cmo == mat_daxis_x_rmo);
assert(mat_daxis_x_cmo == mat_daxis_x_rmo);

assert(mat_faxis_x_cmo == mat_faxis_x_cmo);
assert(mat_daxis_x_cmo == mat_faxis_x_cmo);

assert(mat_daxis_x_cmo == mat_daxis_x_cmo);

vec<int, fixed<COLS>, axis_t::y> vec_faxis_y;
vec<int, dynamic, axis_t::y> vec_daxis_y(COLS);
mat<int, fixed<COLS, ROWS>, order_t::row_major> mat_faxis_y_rmo;
mat<int, dynamic, order_t::row_major> mat_daxis_y_rmo(COLS, ROWS);
mat<int, fixed<COLS, ROWS>, order_t::col_major> mat_faxis_y_cmo;
mat<int, dynamic, order_t::col_major> mat_daxis_y_cmo(COLS, ROWS);

for (size_t i = 0; i < COLS; ++i) {
for (size_t j = 0; j < ROWS; ++j) {
vec_faxis_y(i, j) = vec_daxis_y(i, j) = mat_faxis_y_rmo(i, j) = mat_daxis_y_rmo(i, j) = mat_faxis_y_cmo(i, j) =
mat_daxis_y_cmo(i, j) = rng(rng_engine);
}
}

assert(vec_faxis_y == vec_faxis_y);
assert(vec_faxis_y == vec_daxis_y);
assert(vec_faxis_y == mat_faxis_y_rmo);
assert(vec_faxis_y == mat_daxis_y_rmo);
assert(vec_faxis_y == mat_faxis_y_cmo);
assert(vec_faxis_y == mat_daxis_y_cmo);

assert(vec_daxis_y == vec_daxis_y);
assert(vec_daxis_y == mat_faxis_y_rmo);
assert(vec_daxis_y == mat_daxis_y_rmo);
assert(vec_daxis_y == mat_faxis_y_cmo);
assert(vec_daxis_y == mat_daxis_y_cmo);

assert(mat_faxis_y_rmo == mat_faxis_y_rmo);
assert(mat_faxis_y_rmo == mat_daxis_y_rmo);
assert(mat_faxis_y_rmo == mat_faxis_y_cmo);
assert(mat_faxis_y_rmo == mat_daxis_y_cmo);

assert(mat_daxis_y_rmo == mat_daxis_y_rmo);
assert(mat_daxis_y_rmo == mat_faxis_y_cmo);
assert(mat_daxis_y_rmo == mat_daxis_y_cmo);

assert(mat_faxis_y_cmo == mat_faxis_y_cmo);
assert(mat_faxis_y_cmo == mat_daxis_y_cmo);

assert(mat_daxis_y_cmo == mat_daxis_y_cmo);

assert(vec_faxis_y == vec_faxis_y);
assert(vec_daxis_y == vec_faxis_y);
assert(mat_faxis_y_rmo == vec_faxis_y);
assert(mat_daxis_y_rmo == vec_faxis_y);
assert(mat_faxis_y_cmo == vec_faxis_y);
assert(mat_daxis_y_cmo == vec_faxis_y);

assert(vec_daxis_y == vec_daxis_y);
assert(mat_faxis_y_rmo == vec_daxis_y);
assert(mat_daxis_y_rmo == vec_daxis_y);
assert(mat_faxis_y_cmo == vec_daxis_y);
assert(mat_daxis_y_cmo == vec_daxis_y);

assert(mat_faxis_y_rmo == mat_faxis_y_rmo);
assert(mat_daxis_y_rmo == mat_faxis_y_rmo);
assert(mat_faxis_y_cmo == mat_faxis_y_rmo);
assert(mat_daxis_y_cmo == mat_faxis_y_rmo);

assert(mat_daxis_y_rmo == mat_daxis_y_rmo);
assert(mat_faxis_y_cmo == mat_daxis_y_rmo);
assert(mat_daxis_y_cmo == mat_daxis_y_rmo);

assert(mat_faxis_y_cmo == mat_faxis_y_cmo);
assert(mat_daxis_y_cmo == mat_faxis_y_cmo);

assert(mat_daxis_y_cmo == mat_daxis_y_cmo);
}

{
std::mt19937 rng_engine(std::chrono::steady_clock::now().time_since_epoch().count());
std::uniform_int_distribution<int> rng(0, std::numeric_limits<int>::max());

constexpr static size_t ROWS = 1;
constexpr static size_t COLS = 50;
constexpr static size_t COLS = 2;

vec<int, fixed<COLS>, axis_t::x> vec_faxis_x;
vec<int, dynamic, axis_t::x> vec_daxis_x(COLS);
vec<int, fixed<COLS>, axis_t::x, order_t::col_major> vec_faxis_x;
vec<int, dynamic, axis_t::x, order_t::col_major> vec_daxis_x(COLS);
mat<int, fixed<ROWS, COLS>, order_t::row_major> mat_faxis_x_rmo;
mat<int, dynamic, order_t::row_major> mat_daxis_x_rmo(ROWS, COLS);
mat<int, fixed<ROWS, COLS>, order_t::col_major> mat_faxis_x_cmo;
Expand Down Expand Up @@ -372,8 +228,8 @@ int main() {

assert(mat_daxis_x_cmo == mat_daxis_x_cmo);

vec<int, fixed<COLS>, axis_t::y> vec_faxis_y;
vec<int, dynamic, axis_t::y> vec_daxis_y(COLS);
vec<int, fixed<COLS>, axis_t::y, order_t::col_major> vec_faxis_y;
vec<int, dynamic, axis_t::y, order_t::col_major> vec_daxis_y(COLS);
mat<int, fixed<COLS, ROWS>, order_t::row_major> mat_faxis_y_rmo;
mat<int, dynamic, order_t::row_major> mat_daxis_y_rmo(COLS, ROWS);
mat<int, fixed<COLS, ROWS>, order_t::col_major> mat_faxis_y_cmo;
Expand Down
47 changes: 47 additions & 0 deletions test/lvl0.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
#include <cassert>
#include <iostream>
#include "../include/cyfre.hpp"

int main() {
constexpr size_t SIZE = 16;
cyfre::vec<int, cyfre::fixed<SIZE>, cyfre::axis_t::x> vec1;
cyfre::vec<int, cyfre::fixed<SIZE>, cyfre::axis_t::y> vec2;
cyfre::vec<int, cyfre::dynamic, cyfre::axis_t::x> vec3(SIZE);
cyfre::vec<int, cyfre::dynamic, cyfre::axis_t::y> vec4(SIZE);

cyfre::vec<int, cyfre::fixed<SIZE>, cyfre::axis_t::x> vec5;
cyfre::vec<int, cyfre::fixed<SIZE>, cyfre::axis_t::y> vec6;
cyfre::vec<int, cyfre::dynamic, cyfre::axis_t::x> vec7(SIZE);
cyfre::vec<int, cyfre::dynamic, cyfre::axis_t::y> vec8(SIZE);

for (size_t i = 0; i < SIZE; ++i) {
vec1[i] = vec2[i] = vec3[i] = vec4[i] = i + 1;
}

assert(vec1 == vec1);
assert(!(vec1 == vec2));
assert(vec1 == vec3);
assert(!(vec1 == vec4));

assert(vec2 == vec2);
assert(!(vec2 == vec3));
assert(vec2 == vec4);

assert(vec3 == vec3);
assert(!(vec3 == vec4));

assert(vec1 == vec1);
assert(!(vec2 == vec1));
assert(vec3 == vec1);
assert(!(vec4 == vec1));

assert(vec2 == vec2);
assert(!(vec3 == vec2));
assert(vec4 == vec2);

assert(vec3 == vec3);
assert(!(vec4 == vec3));

std::cout << "\nTests : PASSED - BLAS level 0\n";
return 0;
}
4 changes: 4 additions & 0 deletions test/type_assertions.cpp
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
#include <cassert>
#include <iostream>
#include <stdexcept>

#include "../include/cyfre.hpp"

Expand Down Expand Up @@ -125,6 +126,9 @@ int main() {
// problem with protected members if not accessed inside the mat class.
static_assert(concepts::matrices<MatrixType7>, "MatrixType6 - test");

static_assert(concepts::matrices<mat<int, fixed<4, 4>>>, "Matrix Test - test 1");
static_assert(concepts::matrices<mat<int, dynamic>>, "Matrix Test - test 2");

std::cout << "Tests : PASSED - Type Assertions\n";
return 0;
}

0 comments on commit b84d8fa

Please sign in to comment.