Skip to content

Commit ce7867b

Browse files
committed
Increase coverage
1 parent 8597597 commit ce7867b

File tree

7 files changed

+86
-4
lines changed

7 files changed

+86
-4
lines changed

src/ddc/print.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -268,7 +268,7 @@ void print_dim_name(
268268
template <class... Dims>
269269
void print_dim_name(std::ostream& os, DiscreteVector<Dims...> const& dd)
270270
{
271-
std::array const names {typeid(Dims).name()...};
271+
std::array<char const*, sizeof...(Dims)> const names {typeid(Dims).name()...};
272272
std::array const std_dd = detail::array(dd);
273273
print_dim_name(os, names.data(), std_dd.data(), std_dd.size());
274274
}

tests/discrete_element.cpp

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -241,6 +241,14 @@ TEST(DiscreteElementXYZTest, RightExternalBinaryOperatorMinus)
241241
EXPECT_EQ(ixyz2.uid<DDimZ>(), uid_z);
242242
}
243243

244+
TEST(DiscreteElement0DTest, StreamOperator)
245+
{
246+
ddc::DiscreteElement<> const i0d;
247+
std::stringstream ss;
248+
ss << i0d;
249+
EXPECT_EQ(ss.str(), "()");
250+
}
251+
244252
TEST(DiscreteElementXYZTest, StreamOperator)
245253
{
246254
ddc::DiscreteElementType const uid_x = 7;

tests/discrete_space.cpp

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
//
33
// SPDX-License-Identifier: MIT
44

5+
#include <sstream>
56
#include <stdexcept>
67

78
#include <ddc/ddc.hpp>
@@ -43,3 +44,17 @@ TEST(DiscreteSpace, Initialization)
4344
static_cast<void const*>(&ddc::discrete_space<DDimX>()),
4445
static_cast<void const*>(&ddc::host_discrete_space<DDimX>()));
4546
}
47+
48+
TEST(DiscreteSpace, DisplayDiscretizationStore)
49+
{
50+
ddc::init_discrete_space<DDimX>(DDimX::template init<DDimX>(
51+
ddc::Coordinate<DimX>(0),
52+
ddc::Coordinate<DimX>(1),
53+
ddc::DiscreteVector<DDimX>(2)));
54+
std::stringstream ss;
55+
ddc::detail::display_discretization_store(ss);
56+
EXPECT_EQ(
57+
ss.str(),
58+
"The host discretization store is initialized:\n - "
59+
"N49anonymous_namespace_workaround_discrete_space_cpp5DDimXE\n");
60+
}

tests/discrete_vector.cpp

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -206,6 +206,14 @@ TEST(DiscreteVectorTest, ExternalBinaryOperatorMinus)
206206
EXPECT_EQ(ddc::get<DDimZ>(result5), dv_z - dv2_z);
207207
}
208208

209+
TEST(DiscreteVector0DTest, StreamOperator)
210+
{
211+
ddc::DiscreteVector<> const dv0d;
212+
std::stringstream ss;
213+
ss << dv0d;
214+
EXPECT_EQ(ss.str(), "()");
215+
}
216+
209217
TEST(DiscreteVectorTest, StreamOperator)
210218
{
211219
ddc::DiscreteVectorElement const dv_x = 7;

tests/print.cpp

Lines changed: 24 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -270,7 +270,28 @@ TEST(Print, CheckOutput3d)
270270
}
271271

272272
#if defined(KOKKOS_COMPILER_GNU) || defined(KOKKOS_COMPILER_CLANG)
273-
void TestPrintTestMetadata()
273+
TEST(Print, CheckMetadata0d)
274+
{
275+
using ElementType = double;
276+
277+
ddc::DiscreteDomain<> const domain_0d;
278+
279+
ddc::Chunk chunk("chunk", domain_0d, ddc::DeviceAllocator<ElementType>());
280+
ddc::ChunkSpan const chunk_span = chunk.span_view();
281+
282+
{
283+
std::stringstream ss;
284+
print_type_info(ss, chunk_span);
285+
EXPECT_THAT(
286+
ss.str(),
287+
testing::MatchesRegex(
288+
"Scalar\n"
289+
"ddc::ChunkSpan<double, ddc::DiscreteDomain<>"
290+
", Kokkos::layout_.+, Kokkos::.+Space>\n"));
291+
}
292+
}
293+
294+
void TestPrintTestMetadata2d()
274295
{
275296
using ElementType = double;
276297

@@ -302,8 +323,8 @@ void TestPrintTestMetadata()
302323
}
303324
}
304325

305-
TEST(Print, CheckMetadata)
326+
TEST(Print, CheckMetadata2d)
306327
{
307-
TestPrintTestMetadata();
328+
TestPrintTestMetadata2d();
308329
}
309330
#endif

tests/splines/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ add_executable(
1212
bsplines.cpp
1313
knots_as_interpolation_points.cpp
1414
splines_linear_problem.cpp
15+
spline_boundary_conditions.cpp
1516
spline_builder.cpp
1617
spline_traits.cpp
1718
view.cpp
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
// Copyright (C) The DDC development team, see COPYRIGHT.md file
2+
//
3+
// SPDX-License-Identifier: MIT
4+
5+
#include <sstream>
6+
#include <stdexcept>
7+
8+
#include <ddc/ddc.hpp>
9+
#include <ddc/kernels/splines.hpp>
10+
11+
#include <gtest/gtest.h>
12+
13+
TEST(SplineBoundaryConditions, StreamOperator)
14+
{
15+
std::stringstream ss;
16+
ss << ddc::BoundCond::GREVILLE;
17+
EXPECT_EQ("GREVILLE", ss.str());
18+
19+
ss.str("");
20+
ss << ddc::BoundCond::HERMITE;
21+
EXPECT_EQ("HERMITE", ss.str());
22+
23+
ss.str("");
24+
ss << ddc::BoundCond::PERIODIC;
25+
EXPECT_EQ("PERIODIC", ss.str());
26+
27+
ss.str("");
28+
EXPECT_THROW((ss << static_cast<ddc::BoundCond>(-1)), std::runtime_error);
29+
}

0 commit comments

Comments
 (0)