2024-09-05 16:56:58 +08:00
|
|
|
#include <gtest/gtest.h>
|
|
|
|
#include "test_header.cuh"
|
|
|
|
|
2024-09-14 16:15:13 +08:00
|
|
|
using namespace gf256;
|
|
|
|
|
2024-09-14 15:57:00 +08:00
|
|
|
TEST(TestGF256Matrix, Equal)
|
2024-09-05 16:56:58 +08:00
|
|
|
{
|
2024-09-06 15:58:40 +08:00
|
|
|
MatGF256 a(50, 50);
|
2024-09-05 16:56:58 +08:00
|
|
|
EXPECT_TRUE(a == base_zero);
|
2024-09-12 18:53:59 +08:00
|
|
|
MatGF256 v(a, 0, 0, 30, 3);
|
2024-09-05 16:56:58 +08:00
|
|
|
EXPECT_TRUE(v == base_zero);
|
|
|
|
a.randomize(1243);
|
|
|
|
EXPECT_TRUE(a == a);
|
|
|
|
EXPECT_TRUE(v == v);
|
2024-09-06 15:58:40 +08:00
|
|
|
MatGF256 b(50, 50);
|
2024-09-05 16:56:58 +08:00
|
|
|
b.randomize(1243);
|
|
|
|
EXPECT_FALSE(a == b);
|
|
|
|
}
|
|
|
|
|
2024-09-14 15:57:00 +08:00
|
|
|
TEST(TestGF256Matrix, Xor)
|
2024-09-05 16:56:58 +08:00
|
|
|
{
|
2024-09-06 15:58:40 +08:00
|
|
|
MatGF256 a(50, 50), b(50, 50);
|
2024-09-05 16:56:58 +08:00
|
|
|
a.randomize(1243);
|
|
|
|
b.randomize(1243);
|
2024-09-06 15:58:40 +08:00
|
|
|
MatGF256 c = a ^ b;
|
2024-09-05 16:56:58 +08:00
|
|
|
a ^= c;
|
|
|
|
EXPECT_TRUE(a == b);
|
2024-09-12 18:53:59 +08:00
|
|
|
MatGF256 va(a, 20, 1, 30, 3);
|
|
|
|
MatGF256 vb(b, 10, 2, 20, 4);
|
2024-09-06 15:58:40 +08:00
|
|
|
MatGF256 vc = va ^ vb;
|
2024-09-05 16:56:58 +08:00
|
|
|
va ^= vc;
|
|
|
|
EXPECT_TRUE(va == vb);
|
|
|
|
}
|