summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArne H Juul <arnej27959@users.noreply.github.com>2021-03-03 15:16:46 +0100
committerGitHub <noreply@github.com>2021-03-03 15:16:46 +0100
commitb9a60a5a2901cdd103ba904f50c7fee4a5adb588 (patch)
tree30044a610c7c0a6b5e5254317c7826c44ac6e318
parent171ba1e286e9ad00b2fac50d0f94aec5887f7afa (diff)
parent93f936c9e3531d2f2dc63f2262cd8069097238a8 (diff)
Merge pull request #16764 from vespa-engine/arnej/use-list-cell-types
use CellTypeUtils::list_types to loop over possible cell types in tests
-rw-r--r--eval/src/tests/eval/fast_value/fast_value_test.cpp5
-rw-r--r--eval/src/tests/eval/simple_value/simple_value_test.cpp20
-rw-r--r--eval/src/tests/eval/value_codec/value_codec_test.cpp5
-rw-r--r--eval/src/tests/instruction/generic_cell_cast/generic_cell_cast_test.cpp11
-rw-r--r--eval/src/tests/instruction/generic_concat/generic_concat_test.cpp10
-rw-r--r--eval/src/tests/instruction/generic_create/generic_create_test.cpp5
-rw-r--r--eval/src/tests/instruction/generic_join/generic_join_test.cpp10
-rw-r--r--eval/src/tests/instruction/generic_map/generic_map_test.cpp5
-rw-r--r--eval/src/tests/instruction/generic_merge/generic_merge_test.cpp10
-rw-r--r--eval/src/tests/instruction/generic_peek/generic_peek_test.cpp5
-rw-r--r--eval/src/tests/instruction/generic_reduce/generic_reduce_test.cpp5
-rw-r--r--eval/src/tests/instruction/generic_rename/generic_rename_test.cpp5
-rw-r--r--eval/src/tests/streamed/value/streamed_value_test.cpp20
13 files changed, 47 insertions, 69 deletions
diff --git a/eval/src/tests/eval/fast_value/fast_value_test.cpp b/eval/src/tests/eval/fast_value/fast_value_test.cpp
index bb268a386ac..70c534b2010 100644
--- a/eval/src/tests/eval/fast_value/fast_value_test.cpp
+++ b/eval/src/tests/eval/fast_value/fast_value_test.cpp
@@ -159,9 +159,8 @@ const std::vector<GenSpec> layouts = {
TEST(FastValueBuilderFactoryTest, fast_values_can_be_copied) {
auto factory = FastValueBuilderFactory::get();
for (const auto &layout: layouts) {
- for (TensorSpec expect : { layout.cpy().cells_float(),
- layout.cpy().cells_double() })
- {
+ for (CellType ct : CellTypeUtils::list_types()) {
+ TensorSpec expect = layout.cpy().cells(ct);
std::unique_ptr<Value> value = value_from_spec(expect, factory);
std::unique_ptr<Value> copy = factory.copy(*value);
TensorSpec actual = spec_from_value(*copy);
diff --git a/eval/src/tests/eval/simple_value/simple_value_test.cpp b/eval/src/tests/eval/simple_value/simple_value_test.cpp
index 1f0df71d306..af3b6e9bc43 100644
--- a/eval/src/tests/eval/simple_value/simple_value_test.cpp
+++ b/eval/src/tests/eval/simple_value/simple_value_test.cpp
@@ -67,9 +67,8 @@ TensorSpec simple_value_join(const TensorSpec &a, const TensorSpec &b, join_fun_
TEST(SimpleValueTest, simple_values_can_be_converted_from_and_to_tensor_spec) {
for (const auto &layout: layouts) {
- for (TensorSpec expect : { layout.cpy().cells_float(),
- layout.cpy().cells_double() })
- {
+ for (CellType ct : CellTypeUtils::list_types()) {
+ TensorSpec expect = layout.cpy().cells(ct);
std::unique_ptr<Value> value = value_from_spec(expect, SimpleValueBuilderFactory::get());
TensorSpec actual = spec_from_value(*value);
EXPECT_EQ(actual, expect);
@@ -79,9 +78,8 @@ TEST(SimpleValueTest, simple_values_can_be_converted_from_and_to_tensor_spec) {
TEST(SimpleValueTest, simple_values_can_be_copied) {
for (const auto &layout: layouts) {
- for (TensorSpec expect : { layout.cpy().cells_float(),
- layout.cpy().cells_double() })
- {
+ for (CellType ct : CellTypeUtils::list_types()) {
+ TensorSpec expect = layout.cpy().cells(ct);
std::unique_ptr<Value> value = value_from_spec(expect, SimpleValueBuilderFactory::get());
std::unique_ptr<Value> copy = SimpleValueBuilderFactory::get().copy(*value);
TensorSpec actual = spec_from_value(*copy);
@@ -131,12 +129,10 @@ TEST(SimpleValueTest, new_generic_join_works_for_simple_values) {
for (size_t i = 0; i < join_layouts.size(); i += 2) {
const auto l = join_layouts[i].cpy().seq(N_16ths);
const auto r = join_layouts[i + 1].cpy().seq(N_16ths);
- for (TensorSpec lhs : { l.cpy().cells_float(),
- l.cpy().cells_double() })
- {
- for (TensorSpec rhs : { r.cpy().cells_float(),
- r.cpy().cells_double() })
- {
+ for (CellType lct : CellTypeUtils::list_types()) {
+ TensorSpec lhs = l.cpy().cells(lct);
+ for (CellType rct : CellTypeUtils::list_types()) {
+ TensorSpec rhs = r.cpy().cells(rct);
for (auto fun: {operation::Add::f, operation::Sub::f, operation::Mul::f, operation::Div::f}) {
SCOPED_TRACE(fmt("\n===\nLHS: %s\nRHS: %s\n===\n", lhs.to_string().c_str(), rhs.to_string().c_str()));
auto expect = ReferenceOperations::join(lhs, rhs, fun);
diff --git a/eval/src/tests/eval/value_codec/value_codec_test.cpp b/eval/src/tests/eval/value_codec/value_codec_test.cpp
index 30de76abb7d..434ad0b2a53 100644
--- a/eval/src/tests/eval/value_codec/value_codec_test.cpp
+++ b/eval/src/tests/eval/value_codec/value_codec_test.cpp
@@ -32,9 +32,8 @@ const std::vector<GenSpec> layouts = {
TEST(ValueCodecTest, simple_values_can_be_converted_from_and_to_tensor_spec) {
for (const auto &layout: layouts) {
- for (TensorSpec expect : { layout.cpy().cells_float(),
- layout.cpy().cells_double() })
- {
+ for (CellType ct : CellTypeUtils::list_types()) {
+ TensorSpec expect = layout.cpy().cells(ct);
std::unique_ptr<Value> value = value_from_spec(expect, factory);
TensorSpec actual = spec_from_value(*value);
EXPECT_EQ(actual, expect);
diff --git a/eval/src/tests/instruction/generic_cell_cast/generic_cell_cast_test.cpp b/eval/src/tests/instruction/generic_cell_cast/generic_cell_cast_test.cpp
index 6a0b63bd562..06b74eff4d5 100644
--- a/eval/src/tests/instruction/generic_cell_cast/generic_cell_cast_test.cpp
+++ b/eval/src/tests/instruction/generic_cell_cast/generic_cell_cast_test.cpp
@@ -44,13 +44,12 @@ TensorSpec perform_generic_cell_cast(const TensorSpec &a, CellType to, const Val
void test_generic_cell_cast_with(const ValueBuilderFactory &factory) {
for (const auto &layout : layouts) {
- for (TensorSpec lhs : { layout.cpy().cells_float(),
- layout.cpy().cells_double() })
- {
- for (CellType ct : { CellType::FLOAT, CellType::DOUBLE }) {
+ for (CellType in_type: CellTypeUtils::list_types()) {
+ for (CellType out_type: CellTypeUtils::list_types()) {
+ TensorSpec lhs = layout.cpy().cells(in_type);
SCOPED_TRACE(fmt("\n===\nLHS: %s\n===\n", lhs.to_string().c_str()));
- auto expect = ReferenceOperations::cell_cast(lhs, ct);
- auto actual = perform_generic_cell_cast(lhs, ct, factory);
+ auto expect = ReferenceOperations::cell_cast(lhs, out_type);
+ auto actual = perform_generic_cell_cast(lhs, out_type, factory);
EXPECT_EQ(actual, expect);
}
}
diff --git a/eval/src/tests/instruction/generic_concat/generic_concat_test.cpp b/eval/src/tests/instruction/generic_concat/generic_concat_test.cpp
index 09ac2e413c1..8bf6751cd73 100644
--- a/eval/src/tests/instruction/generic_concat/generic_concat_test.cpp
+++ b/eval/src/tests/instruction/generic_concat/generic_concat_test.cpp
@@ -78,12 +78,10 @@ void test_generic_concat_with(const ValueBuilderFactory &factory) {
for (size_t i = 0; i < concat_layouts.size(); i += 2) {
const auto l = concat_layouts[i];
const auto r = concat_layouts[i+1].cpy().seq(N_16ths);
- for (TensorSpec lhs : { l.cpy().cells_float(),
- l.cpy().cells_double() })
- {
- for (TensorSpec rhs : { r.cpy().cells_float(),
- r.cpy().cells_double() })
- {
+ for (CellType lct : CellTypeUtils::list_types()) {
+ TensorSpec lhs = l.cpy().cells(lct);
+ for (CellType rct : CellTypeUtils::list_types()) {
+ TensorSpec rhs = r.cpy().cells(rct);
SCOPED_TRACE(fmt("\n===\nin LHS: %s\nin RHS: %s\n===\n", lhs.to_string().c_str(), rhs.to_string().c_str()));
auto actual = perform_generic_concat(lhs, rhs, "y", factory);
auto expect = ReferenceOperations::concat(lhs, rhs, "y");
diff --git a/eval/src/tests/instruction/generic_create/generic_create_test.cpp b/eval/src/tests/instruction/generic_create/generic_create_test.cpp
index 3677159b64e..c387dad780e 100644
--- a/eval/src/tests/instruction/generic_create/generic_create_test.cpp
+++ b/eval/src/tests/instruction/generic_create/generic_create_test.cpp
@@ -91,9 +91,8 @@ TensorSpec perform_generic_create(const TensorSpec &a, const ValueBuilderFactory
void test_generic_create_with(const ValueBuilderFactory &factory) {
for (const auto &layout : create_layouts) {
- for (TensorSpec full : { layout.cpy().cells_float(),
- layout.cpy().cells_double() })
- {
+ for (CellType ct : CellTypeUtils::list_types()) {
+ TensorSpec full = layout.cpy().cells(ct);
auto actual = perform_generic_create(full, factory);
auto expect = reference_create(full).normalize();
EXPECT_EQ(actual, expect);
diff --git a/eval/src/tests/instruction/generic_join/generic_join_test.cpp b/eval/src/tests/instruction/generic_join/generic_join_test.cpp
index 181f44d0f2e..2f619bcaa54 100644
--- a/eval/src/tests/instruction/generic_join/generic_join_test.cpp
+++ b/eval/src/tests/instruction/generic_join/generic_join_test.cpp
@@ -107,12 +107,10 @@ TEST(GenericJoinTest, generic_join_works_for_simple_and_fast_values) {
for (size_t i = 0; i < join_layouts.size(); i += 2) {
const auto &l = join_layouts[i];
const auto &r = join_layouts[i+1];
- for (TensorSpec lhs : { l.cpy().cells_float(),
- l.cpy().cells_double() })
- {
- for (TensorSpec rhs : { r.cpy().cells_float(),
- r.cpy().cells_double() })
- {
+ for (CellType lct : CellTypeUtils::list_types()) {
+ TensorSpec lhs = l.cpy().cells(lct);
+ for (CellType rct : CellTypeUtils::list_types()) {
+ TensorSpec rhs = r.cpy().cells(rct);
for (auto fun: {operation::Add::f, operation::Sub::f, operation::Mul::f, operation::Div::f}) {
SCOPED_TRACE(fmt("\n===\nLHS: %s\nRHS: %s\n===\n", lhs.to_string().c_str(), rhs.to_string().c_str()));
auto expect = ReferenceOperations::join(lhs, rhs, fun);
diff --git a/eval/src/tests/instruction/generic_map/generic_map_test.cpp b/eval/src/tests/instruction/generic_map/generic_map_test.cpp
index 9f30efe135e..cf4b09914c3 100644
--- a/eval/src/tests/instruction/generic_map/generic_map_test.cpp
+++ b/eval/src/tests/instruction/generic_map/generic_map_test.cpp
@@ -43,9 +43,8 @@ TensorSpec perform_generic_map(const TensorSpec &a, map_fun_t func, const ValueB
void test_generic_map_with(const ValueBuilderFactory &factory) {
for (const auto &layout : map_layouts) {
- for (TensorSpec lhs : { layout.cpy().cells_float(),
- layout.cpy().cells_double() })
- {
+ for (CellType ct : CellTypeUtils::list_types()) {
+ TensorSpec lhs = layout.cpy().cells(ct);
for (auto func : {operation::Floor::f, operation::Fabs::f, operation::Square::f, operation::Inv::f}) {
SCOPED_TRACE(fmt("\n===\nLHS: %s\n===\n", lhs.to_string().c_str()));
auto expect = ReferenceOperations::map(lhs, func);
diff --git a/eval/src/tests/instruction/generic_merge/generic_merge_test.cpp b/eval/src/tests/instruction/generic_merge/generic_merge_test.cpp
index bb14d869440..025ab7f857e 100644
--- a/eval/src/tests/instruction/generic_merge/generic_merge_test.cpp
+++ b/eval/src/tests/instruction/generic_merge/generic_merge_test.cpp
@@ -50,12 +50,10 @@ void test_generic_merge_with(const ValueBuilderFactory &factory) {
for (size_t i = 0; i < merge_layouts.size(); i += 2) {
const auto l = merge_layouts[i];
const auto r = merge_layouts[i+1].cpy().seq(N_16ths);
- for (TensorSpec lhs : { l.cpy().cells_float(),
- l.cpy().cells_double() })
- {
- for (TensorSpec rhs : { r.cpy().cells_float(),
- r.cpy().cells_double() })
- {
+ for (CellType lct : CellTypeUtils::list_types()) {
+ TensorSpec lhs = l.cpy().cells(lct);
+ for (CellType rct : CellTypeUtils::list_types()) {
+ TensorSpec rhs = r.cpy().cells(rct);
SCOPED_TRACE(fmt("\n===\nLHS: %s\nRHS: %s\n===\n", lhs.to_string().c_str(), rhs.to_string().c_str()));
for (auto fun: {operation::Add::f, operation::Mul::f, operation::Sub::f, operation::Max::f}) {
auto expect = ReferenceOperations::merge(lhs, rhs, fun);
diff --git a/eval/src/tests/instruction/generic_peek/generic_peek_test.cpp b/eval/src/tests/instruction/generic_peek/generic_peek_test.cpp
index cafaf5837ec..972e763f018 100644
--- a/eval/src/tests/instruction/generic_peek/generic_peek_test.cpp
+++ b/eval/src/tests/instruction/generic_peek/generic_peek_test.cpp
@@ -194,9 +194,8 @@ void fill_dims_and_check(const TensorSpec &input,
void test_generic_peek_with(const ValueBuilderFactory &factory) {
for (const auto &layout : peek_layouts) {
- for (TensorSpec input : { layout.cpy().cells_float(),
- layout.cpy().cells_double() })
- {
+ for (CellType ct : CellTypeUtils::list_types()) {
+ TensorSpec input = layout.cpy().cells(ct);
ValueType input_type = ValueType::from_spec(input.type());
const auto &dims = input_type.dimensions();
PeekSpec spec;
diff --git a/eval/src/tests/instruction/generic_reduce/generic_reduce_test.cpp b/eval/src/tests/instruction/generic_reduce/generic_reduce_test.cpp
index 95236d15299..8eb7b5bd057 100644
--- a/eval/src/tests/instruction/generic_reduce/generic_reduce_test.cpp
+++ b/eval/src/tests/instruction/generic_reduce/generic_reduce_test.cpp
@@ -70,9 +70,8 @@ TEST(GenericReduceTest, sparse_reduce_plan_can_be_created) {
void test_generic_reduce_with(const ValueBuilderFactory &factory) {
for (const auto &layout: layouts) {
- for (TensorSpec input : { layout.cpy().cells_float(),
- layout.cpy().cells_double() })
- {
+ for (CellType ct : CellTypeUtils::list_types()) {
+ TensorSpec input = layout.cpy().cells(ct);
SCOPED_TRACE(fmt("tensor type: %s, num_cells: %zu", input.type().c_str(), input.cells().size()));
for (Aggr aggr: {Aggr::SUM, Aggr::AVG, Aggr::MIN, Aggr::MAX}) {
SCOPED_TRACE(fmt("aggregator: %s", AggrNames::name_of(aggr)->c_str()));
diff --git a/eval/src/tests/instruction/generic_rename/generic_rename_test.cpp b/eval/src/tests/instruction/generic_rename/generic_rename_test.cpp
index 9c17dce972f..7b67f1bbd22 100644
--- a/eval/src/tests/instruction/generic_rename/generic_rename_test.cpp
+++ b/eval/src/tests/instruction/generic_rename/generic_rename_test.cpp
@@ -110,9 +110,8 @@ TensorSpec perform_generic_rename(const TensorSpec &a,
void test_generic_rename_with(const ValueBuilderFactory &factory) {
for (const auto &layout : rename_layouts) {
- for (TensorSpec lhs : { layout.cpy().cells_float(),
- layout.cpy().cells_double() })
- {
+ for (CellType ct : CellTypeUtils::list_types()) {
+ TensorSpec lhs = layout.cpy().cells(ct);
ValueType lhs_type = ValueType::from_spec(lhs.type());
for (const auto & from_to : rename_from_to) {
ValueType renamed_type = lhs_type.rename(from_to.from, from_to.to);
diff --git a/eval/src/tests/streamed/value/streamed_value_test.cpp b/eval/src/tests/streamed/value/streamed_value_test.cpp
index 44c30d226bd..e5f4088d908 100644
--- a/eval/src/tests/streamed/value/streamed_value_test.cpp
+++ b/eval/src/tests/streamed/value/streamed_value_test.cpp
@@ -67,9 +67,8 @@ TensorSpec streamed_value_join(const TensorSpec &a, const TensorSpec &b, join_fu
TEST(StreamedValueTest, streamed_values_can_be_converted_from_and_to_tensor_spec) {
for (const auto &layout: layouts) {
- for (TensorSpec expect : { layout.cpy().cells_float(),
- layout.cpy().cells_double() })
- {
+ for (CellType ct : CellTypeUtils::list_types()) {
+ TensorSpec expect = layout.cpy().cells(ct);
std::unique_ptr<Value> value = value_from_spec(expect, StreamedValueBuilderFactory::get());
TensorSpec actual = spec_from_value(*value);
EXPECT_EQ(actual, expect);
@@ -79,9 +78,8 @@ TEST(StreamedValueTest, streamed_values_can_be_converted_from_and_to_tensor_spec
TEST(StreamedValueTest, streamed_values_can_be_copied) {
for (const auto &layout: layouts) {
- for (TensorSpec expect : { layout.cpy().cells_float(),
- layout.cpy().cells_double() })
- {
+ for (CellType ct : CellTypeUtils::list_types()) {
+ TensorSpec expect = layout.cpy().cells(ct);
std::unique_ptr<Value> value = value_from_spec(expect, StreamedValueBuilderFactory::get());
std::unique_ptr<Value> copy = StreamedValueBuilderFactory::get().copy(*value);
TensorSpec actual = spec_from_value(*copy);
@@ -131,12 +129,10 @@ TEST(StreamedValueTest, new_generic_join_works_for_streamed_values) {
for (size_t i = 0; i < join_layouts.size(); i += 2) {
const auto l = join_layouts[i].cpy().seq(N_16ths);
const auto r = join_layouts[i + 1].cpy().seq(N_16ths);
- for (TensorSpec lhs : { l.cpy().cells_float(),
- l.cpy().cells_double() })
- {
- for (TensorSpec rhs : { r.cpy().cells_float(),
- r.cpy().cells_double() })
- {
+ for (CellType lct : CellTypeUtils::list_types()) {
+ TensorSpec lhs = l.cpy().cells(lct);
+ for (CellType rct : CellTypeUtils::list_types()) {
+ TensorSpec rhs = r.cpy().cells(rct);
for (auto fun: {operation::Add::f, operation::Sub::f, operation::Mul::f, operation::Max::f}) {
SCOPED_TRACE(fmt("\n===\nLHS: %s\nRHS: %s\n===\n", lhs.to_string().c_str(), rhs.to_string().c_str()));
auto expect = ReferenceOperations::join(lhs, rhs, fun);