Skip to content

Commit f940135

Browse files
committed
codecov
1 parent bc6adad commit f940135

2 files changed

Lines changed: 44 additions & 3 deletions

File tree

src/layers_oneDNN/EWLayer.cpp

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -94,8 +94,6 @@ void EwLayerOneDnn::run(const std::vector<Tensor>& input,
9494
stream_->wait();
9595

9696
output[0] = make_tensor(output_data, input_tensor.get_shape());
97-
} else {
98-
throw std::runtime_error("EwLayerOneDnn: Unsupported data type");
9997
}
10098

10199
} catch (const std::exception& e) {

test/single_layer/test_ewlayer_onednn.cpp

Lines changed: 44 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -246,7 +246,7 @@ TEST(ewlayer_onednn, multiple_input_tensors) {
246246
EXPECT_THROW({ layer.run(in, out); }, std::runtime_error);
247247
}
248248

249-
TEST(ewlayer_onednn, unsupported_tensor_dimensionality) {
249+
TEST(ewlayer_onednn, unsupported_tensor_dimensionality1) {
250250
EwLayerOneDnn layer("relu");
251251

252252
Shape shape_6d({2, 3, 4, 5, 6, 7});
@@ -536,3 +536,46 @@ TEST(ewlayer_onednn, all_functions_int) {
536536
}
537537
}
538538
}
539+
540+
TEST(ewlayer_onednn, unsupported_tensor_dimensionality) {
541+
EwLayerOneDnn layer("relu");
542+
Shape shape6d({2, 2, 2, 2, 2, 2});
543+
std::vector<float> data6d(64, 1.0f);
544+
Tensor input = make_tensor(data6d, shape6d);
545+
Tensor output;
546+
std::vector<Tensor> in{input};
547+
std::vector<Tensor> out{output};
548+
549+
EXPECT_THROW(layer.run(in, out), std::invalid_argument);
550+
551+
try {
552+
layer.run(in, out);
553+
FAIL() << "Expected std::invalid_argument exception";
554+
} catch (const std::invalid_argument& e) {
555+
EXPECT_NE(std::string(e.what()).find("Unsupported tensor dimensionality"),
556+
std::string::npos);
557+
EXPECT_NE(std::string(e.what()).find("6"), std::string::npos);
558+
}
559+
}
560+
561+
TEST(ewlayer_onednn, unsupported_function_algorithm) {
562+
EwLayerOneDnn layer("relu");
563+
EwLayerOneDnn invalid_layer("invalid_func_123", 1.0f, 0.0f);
564+
565+
Tensor input = make_tensor<float>({1.0F});
566+
Tensor output;
567+
std::vector<Tensor> in{input};
568+
std::vector<Tensor> out{output};
569+
570+
EXPECT_THROW(invalid_layer.run(in, out), std::invalid_argument);
571+
572+
try {
573+
invalid_layer.run(in, out);
574+
FAIL() << "Expected std::invalid_argument";
575+
} catch (const std::invalid_argument& e) {
576+
EXPECT_NE(std::string(e.what()).find("Unsupported function for oneDNN"),
577+
std::string::npos);
578+
EXPECT_NE(std::string(e.what()).find("invalid_func_123"),
579+
std::string::npos);
580+
}
581+
}

0 commit comments

Comments
 (0)