diff --git a/src/Matrix.h b/src/Matrix.h index bb5774f..25ac1fb 100644 --- a/src/Matrix.h +++ b/src/Matrix.h @@ -171,6 +171,8 @@ namespace Aurora { // sub double& operator[](size_t index); + double operator[](size_t index) const; + /** diff --git a/test/Function1D_Test.cpp b/test/Function1D_Test.cpp index b6f8ad8..a14f175 100644 --- a/test/Function1D_Test.cpp +++ b/test/Function1D_Test.cpp @@ -531,6 +531,7 @@ TEST_F(Function1D_Test, nanAndFinite){ double* data = new double[9]{infinite,3,n,2,2,1,4,4,7}; auto matrix = Aurora::Matrix::fromRawData(data, 9,1,1); + auto r = Aurora::isnan(matrix); EXPECT_DOUBLE_EQ(r.getData()[0],0); EXPECT_DOUBLE_EQ(r.getData()[1],0); @@ -543,4 +544,15 @@ TEST_F(Function1D_Test, nanAndFinite){ Aurora::nantoval(matrix,1); EXPECT_DOUBLE_EQ(matrix.getData()[2],1); + + double* data2 = new double[1]{n}; + auto matrix2 = Aurora::Matrix::fromRawData(data, 1,1,1); + r = Aurora::isnan(matrix2); + EXPECT_DOUBLE_EQ(r.getData()[0],1); + + r = Aurora::isfinite(matrix2); + EXPECT_DOUBLE_EQ(r.getData()[0],0); + + Aurora::nantoval(matrix2,1); + EXPECT_DOUBLE_EQ(matrix.getData()[0],1); }