Add sum and sum's unit test.

This commit is contained in:
Krad
2023-04-23 17:32:04 +08:00
parent 46be233087
commit c3462330c1
3 changed files with 69 additions and 1 deletions

View File

@@ -131,6 +131,27 @@ TEST_F(Function2D_Test, max) {
EXPECT_DOUBLE_EQ(3, ret.getData()[2]);
}
TEST_F(Function2D_Test, sum) {
double *dataB = new double[9]{2, 3, 3, 2, 2, 1, 3, 3, 3};
auto B = Aurora::Matrix::fromRawData(dataB, 3, 3);
Aurora::Matrix ret = Aurora::sum(B);
EXPECT_EQ(1, ret.getDimSize(0));
EXPECT_EQ(3, ret.getDimSize(1));
EXPECT_DOUBLE_EQ(8, ret.getData()[0]);
EXPECT_DOUBLE_EQ(5, ret.getData()[1]);
EXPECT_DOUBLE_EQ(9, ret.getData()[2]);
ret = Aurora::sum(B, Aurora::All);
EXPECT_DOUBLE_EQ(1, ret.getDataSize());
EXPECT_DOUBLE_EQ(22, ret.getData()[0]);
ret = Aurora::sum(B, Aurora::Row);
EXPECT_DOUBLE_EQ(3, ret.getDataSize());
EXPECT_EQ(3, ret.getDimSize(0));
EXPECT_EQ(1, ret.getDimSize(1));
EXPECT_DOUBLE_EQ(7, ret.getData()[0]);
EXPECT_DOUBLE_EQ(8, ret.getData()[1]);
EXPECT_DOUBLE_EQ(7, ret.getData()[2]);
}
TEST_F(Function2D_Test, fftAndComplexAndIfft){
// double input[10]{1,1,0,2,2,0,1,1,0,2};
// std::complex<double>* complexInput = Aurora::complex(10,input);