1 // Copyright (C) 2018-2019 Intel Corporation
2 // SPDX-License-Identifier: Apache-2.0
5 #include <gtest/gtest.h>
6 #include <ie_preprocess.hpp>
10 class PreProcessTests : public ::testing::Test {
12 virtual void TearDown() {
15 virtual void SetUp() {
22 TEST_F(PreProcessTests, throwsOnSettingNullMeanImage) {
23 InferenceEngine::PreProcessInfo info;
25 ASSERT_THROW(info.setMeanImage(InferenceEngine::Blob::Ptr(nullptr)),
26 InferenceEngine::details::InferenceEngineException);
30 TEST_F(PreProcessTests, throwsOnSetting2DMeanImage) {
31 InferenceEngine::PreProcessInfo info;
33 InferenceEngine::Blob::Ptr blob(new InferenceEngine::TBlob<float>(InferenceEngine::Precision::FP32, InferenceEngine::Layout::HW, {1, 1}));
34 ASSERT_THROW(info.setMeanImage(blob), InferenceEngine::details::InferenceEngineException);
38 TEST_F(PreProcessTests, throwsOnSettingWrongSizeMeanImage) {
39 InferenceEngine::PreProcessInfo info;
41 InferenceEngine::TBlob<float>::Ptr blob(new InferenceEngine::TBlob<float>(InferenceEngine::Precision::FP32, InferenceEngine::Layout::CHW, { 1, 1, 2 }));
42 blob->set({ 1.f, 2.f });
43 ASSERT_THROW(info.setMeanImage(blob), InferenceEngine::details::InferenceEngineException);
46 TEST_F(PreProcessTests, noThrowWithCorrectSizeMeanImage) {
47 InferenceEngine::PreProcessInfo info;
49 InferenceEngine::TBlob<float>::Ptr blob(new InferenceEngine::TBlob<float>(InferenceEngine::Precision::FP32, InferenceEngine::Layout::CHW, { 1, 1, 2 }));
50 blob->set({ 1.f, 2.f });
51 ASSERT_NO_THROW(info.setMeanImage(blob));