Commit 8f4a46c1 authored by Rostyslav Geyyer's avatar Rostyslav Geyyer
Browse files

Add a deep copy testing

parent 70804498
...@@ -54,6 +54,8 @@ TEST(Custom_bool, TestAsType) ...@@ -54,6 +54,8 @@ TEST(Custom_bool, TestAsType)
vector_type<custom_bool_t, size> left_vec; vector_type<custom_bool_t, size> left_vec;
// check copy assignment op // check copy assignment op
left_vec = right_vec; left_vec = right_vec;
// overwrite right_vec with 0s
right_vec = vector_type<custom_bool_t, size>{};
// check if values were copied correctly // check if values were copied correctly
ck::static_for<0, size, 1>{}([&](auto i) { ck::static_for<0, size, 1>{}([&](auto i) {
ASSERT_EQ(left_vec.template AsType<custom_bool_t>()(Number<i>{}).data, test_vec.at(i)); ASSERT_EQ(left_vec.template AsType<custom_bool_t>()(Number<i>{}).data, test_vec.at(i));
...@@ -133,6 +135,8 @@ TEST(Custom_int8, TestAsType) ...@@ -133,6 +135,8 @@ TEST(Custom_int8, TestAsType)
vector_type<custom_int8_t, size> left_vec; vector_type<custom_int8_t, size> left_vec;
// check copy assignment op // check copy assignment op
left_vec = right_vec; left_vec = right_vec;
// overwrite right_vec with 0s
right_vec = vector_type<custom_int8_t, size>{};
// check if values were copied correctly // check if values were copied correctly
ck::static_for<0, size, 1>{}([&](auto i) { ck::static_for<0, size, 1>{}([&](auto i) {
ASSERT_EQ(left_vec.template AsType<custom_int8_t>()(Number<i>{}).data, test_vec.at(i)); ASSERT_EQ(left_vec.template AsType<custom_int8_t>()(Number<i>{}).data, test_vec.at(i));
...@@ -212,6 +216,8 @@ TEST(Custom_uint8, TestAsType) ...@@ -212,6 +216,8 @@ TEST(Custom_uint8, TestAsType)
vector_type<custom_uint8_t, size> left_vec; vector_type<custom_uint8_t, size> left_vec;
// check copy assignment op // check copy assignment op
left_vec = right_vec; left_vec = right_vec;
// overwrite right_vec with 0s
right_vec = vector_type<custom_uint8_t, size>{};
// check if values were copied correctly // check if values were copied correctly
ck::static_for<0, size, 1>{}([&](auto i) { ck::static_for<0, size, 1>{}([&](auto i) {
ASSERT_EQ(left_vec.template AsType<custom_uint8_t>()(Number<i>{}).data, test_vec.at(i)); ASSERT_EQ(left_vec.template AsType<custom_uint8_t>()(Number<i>{}).data, test_vec.at(i));
...@@ -293,6 +299,8 @@ TEST(Custom_f8, TestAsType) ...@@ -293,6 +299,8 @@ TEST(Custom_f8, TestAsType)
vector_type<custom_f8_t, size> left_vec; vector_type<custom_f8_t, size> left_vec;
// check copy assignment op // check copy assignment op
left_vec = right_vec; left_vec = right_vec;
// overwrite right_vec with 0s
right_vec = vector_type<custom_f8_t, size>{};
// check if values were copied correctly // check if values were copied correctly
ck::static_for<0, size, 1>{}([&](auto i) { ck::static_for<0, size, 1>{}([&](auto i) {
ASSERT_EQ(left_vec.template AsType<custom_f8_t>()(Number<i>{}).data, test_vec.at(i)); ASSERT_EQ(left_vec.template AsType<custom_f8_t>()(Number<i>{}).data, test_vec.at(i));
...@@ -376,6 +384,8 @@ TEST(Custom_bf8, TestAsType) ...@@ -376,6 +384,8 @@ TEST(Custom_bf8, TestAsType)
vector_type<custom_bf8_t, size> left_vec; vector_type<custom_bf8_t, size> left_vec;
// check copy assignment op // check copy assignment op
left_vec = right_vec; left_vec = right_vec;
// overwrite right_vec with 0s
right_vec = vector_type<custom_bf8_t, size>{};
// check if values were copied correctly // check if values were copied correctly
ck::static_for<0, size, 1>{}([&](auto i) { ck::static_for<0, size, 1>{}([&](auto i) {
ASSERT_EQ(left_vec.template AsType<custom_bf8_t>()(Number<i>{}).data, test_vec.at(i)); ASSERT_EQ(left_vec.template AsType<custom_bf8_t>()(Number<i>{}).data, test_vec.at(i));
...@@ -458,6 +468,8 @@ TEST(Custom_half, TestAsType) ...@@ -458,6 +468,8 @@ TEST(Custom_half, TestAsType)
vector_type<custom_half_t, size> left_vec; vector_type<custom_half_t, size> left_vec;
// check copy assignment op // check copy assignment op
left_vec = right_vec; left_vec = right_vec;
// overwrite right_vec with 0s
right_vec = vector_type<custom_half_t, size>{};
// check if values were copied correctly // check if values were copied correctly
ck::static_for<0, size, 1>{}([&](auto i) { ck::static_for<0, size, 1>{}([&](auto i) {
ASSERT_EQ(left_vec.template AsType<custom_half_t>()(Number<i>{}).data, test_vec.at(i)); ASSERT_EQ(left_vec.template AsType<custom_half_t>()(Number<i>{}).data, test_vec.at(i));
...@@ -542,6 +554,8 @@ TEST(Custom_bhalf, TestAsType) ...@@ -542,6 +554,8 @@ TEST(Custom_bhalf, TestAsType)
vector_type<custom_bhalf_t, size> left_vec; vector_type<custom_bhalf_t, size> left_vec;
// check copy assignment op // check copy assignment op
left_vec = right_vec; left_vec = right_vec;
// overwrite right_vec with 0s
right_vec = vector_type<custom_bhalf_t, size>{};
// check if values were copied correctly // check if values were copied correctly
ck::static_for<0, size, 1>{}([&](auto i) { ck::static_for<0, size, 1>{}([&](auto i) {
ASSERT_EQ(left_vec.template AsType<custom_bhalf_t>()(Number<i>{}).data, test_vec.at(i)); ASSERT_EQ(left_vec.template AsType<custom_bhalf_t>()(Number<i>{}).data, test_vec.at(i));
...@@ -625,6 +639,8 @@ TEST(Custom_float, TestAsType) ...@@ -625,6 +639,8 @@ TEST(Custom_float, TestAsType)
vector_type<custom_float_t, size> left_vec; vector_type<custom_float_t, size> left_vec;
// check copy assignment op // check copy assignment op
left_vec = right_vec; left_vec = right_vec;
// overwrite right_vec with 0s
right_vec = vector_type<custom_float_t, size>{};
// check if values were copied correctly // check if values were copied correctly
ck::static_for<0, size, 1>{}([&](auto i) { ck::static_for<0, size, 1>{}([&](auto i) {
ASSERT_EQ(left_vec.template AsType<custom_float_t>()(Number<i>{}).data, test_vec.at(i)); ASSERT_EQ(left_vec.template AsType<custom_float_t>()(Number<i>{}).data, test_vec.at(i));
...@@ -704,6 +720,8 @@ TEST(Custom_double, TestAsType) ...@@ -704,6 +720,8 @@ TEST(Custom_double, TestAsType)
vector_type<custom_double_t, size> left_vec; vector_type<custom_double_t, size> left_vec;
// check copy assignment op // check copy assignment op
left_vec = right_vec; left_vec = right_vec;
// overwrite right_vec with 0s
right_vec = vector_type<custom_double_t, size>{};
// check if values were copied correctly // check if values were copied correctly
ck::static_for<0, size, 1>{}([&](auto i) { ck::static_for<0, size, 1>{}([&](auto i) {
ASSERT_EQ(left_vec.template AsType<custom_double_t>()(Number<i>{}).data, test_vec.at(i)); ASSERT_EQ(left_vec.template AsType<custom_double_t>()(Number<i>{}).data, test_vec.at(i));
...@@ -825,6 +843,8 @@ TEST(Complex_half, TestAsType) ...@@ -825,6 +843,8 @@ TEST(Complex_half, TestAsType)
vector_type<complex_half_t, size> left_vec; vector_type<complex_half_t, size> left_vec;
// check copy assignment op // check copy assignment op
left_vec = right_vec; left_vec = right_vec;
// overwrite right_vec with 0s
right_vec = vector_type<complex_half_t, size>{};
// check if values were copied correctly // check if values were copied correctly
ck::static_for<0, size, 1>{}([&](auto i) { ck::static_for<0, size, 1>{}([&](auto i) {
ASSERT_EQ(left_vec.template AsType<complex_half_t>()(Number<i>{}).real, ASSERT_EQ(left_vec.template AsType<complex_half_t>()(Number<i>{}).real,
...@@ -920,6 +940,8 @@ TEST(FP8OCP, TestAsType) ...@@ -920,6 +940,8 @@ TEST(FP8OCP, TestAsType)
vector_type<f8_t, size> left_vec; vector_type<f8_t, size> left_vec;
// check copy assignment op // check copy assignment op
left_vec = right_vec; left_vec = right_vec;
// overwrite right_vec with 0s
right_vec = vector_type<f8_t, size>{};
// check if values were copied correctly // check if values were copied correctly
ck::static_for<0, size, 1>{}([&](auto i) { ck::static_for<0, size, 1>{}([&](auto i) {
...@@ -998,6 +1020,8 @@ TEST(BF8OCP, TestAsType) ...@@ -998,6 +1020,8 @@ TEST(BF8OCP, TestAsType)
vector_type<bf8_t, size> left_vec{right_vec}; vector_type<bf8_t, size> left_vec{right_vec};
// check copy assignment op // check copy assignment op
left_vec = right_vec; left_vec = right_vec;
// overwrite right_vec with 0s
right_vec = vector_type<bf8_t, size>{};
// check if values were copied correctly // check if values were copied correctly
ck::static_for<0, size, 1>{}([&](auto i) { ck::static_for<0, size, 1>{}([&](auto i) {
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment