From d09c0eef0b1c44c471884b74ab1c23d4919ba7e0 Mon Sep 17 00:00:00 2001 From: Michael Butler Date: Thu, 12 Mar 2020 15:12:23 -0700 Subject: [PATCH] NNAPI VTS: decouple 1.2 tests from 1.3 types Bug: 141718368 Test: mma Test: VtsHalNeuralnetworksV1_*TargetTest Change-Id: Ied7b95e146e4d2d95622642bfbb959cf134b5a7a Merged-In: Ied7b95e146e4d2d95622642bfbb959cf134b5a7a (cherry picked from commit 4876af1ba1983bd1b102ba35928051820279faa3) --- neuralnetworks/1.2/vts/functional/Android.bp | 14 ++++++++------ .../1.2/vts/functional/CompilationCachingTests.cpp | 1 - .../1.2/vts/functional/GeneratedTestHarness.cpp | 3 +-- .../1.2/vts/functional/ValidateBurst.cpp | 6 ++---- .../1.2/vts/functional/ValidateRequest.cpp | 3 +-- .../1.3/vts/functional/ValidateBurst.cpp | 7 ++----- 6 files changed, 14 insertions(+), 20 deletions(-) diff --git a/neuralnetworks/1.2/vts/functional/Android.bp b/neuralnetworks/1.2/vts/functional/Android.bp index 31a1a819ee..7c1faeef68 100644 --- a/neuralnetworks/1.2/vts/functional/Android.bp +++ b/neuralnetworks/1.2/vts/functional/Android.bp @@ -28,7 +28,7 @@ cc_library_static { ], header_libs: [ "libbase_headers", - ] + ], } cc_test { @@ -39,9 +39,9 @@ cc_test { "CompilationCachingTests.cpp", "GeneratedTestHarness.cpp", "TestAssertions.cpp", + "ValidateBurst.cpp", "ValidateModel.cpp", "ValidateRequest.cpp", - "ValidateBurst.cpp", "VtsHalNeuralnetworks.cpp", ], local_include_dirs: ["include"], @@ -50,18 +50,17 @@ cc_test { "libnativewindow", ], static_libs: [ + "VtsHalNeuralNetworksV1_0_utils", + "VtsHalNeuralNetworksV1_2Callbacks", "android.hardware.neuralnetworks@1.0", "android.hardware.neuralnetworks@1.1", "android.hardware.neuralnetworks@1.2", - "android.hardware.neuralnetworks@1.3", "android.hidl.allocator@1.0", "android.hidl.memory@1.0", "libgmock", "libhidlmemory", "libneuralnetworks_generated_test_harness", "libneuralnetworks_utils", - "VtsHalNeuralNetworksV1_0_utils", - "VtsHalNeuralNetworksV1_2Callbacks", ], whole_static_libs: [ "neuralnetworks_generated_V1_0_example", @@ -71,5 +70,8 @@ cc_test { header_libs: [ "libneuralnetworks_headers", ], - test_suites: ["general-tests", "vts-core"], + test_suites: [ + "general-tests", + "vts-core", + ], } diff --git a/neuralnetworks/1.2/vts/functional/CompilationCachingTests.cpp b/neuralnetworks/1.2/vts/functional/CompilationCachingTests.cpp index 10dec791cf..449b8f369d 100644 --- a/neuralnetworks/1.2/vts/functional/CompilationCachingTests.cpp +++ b/neuralnetworks/1.2/vts/functional/CompilationCachingTests.cpp @@ -32,7 +32,6 @@ #include "GeneratedTestHarness.h" #include "MemoryUtils.h" #include "TestHarness.h" -#include "Utils.h" #include "VtsHalNeuralnetworks.h" // Forward declaration of the mobilenet generated test models in diff --git a/neuralnetworks/1.2/vts/functional/GeneratedTestHarness.cpp b/neuralnetworks/1.2/vts/functional/GeneratedTestHarness.cpp index 4c8fede8b2..3ab01351e9 100644 --- a/neuralnetworks/1.2/vts/functional/GeneratedTestHarness.cpp +++ b/neuralnetworks/1.2/vts/functional/GeneratedTestHarness.cpp @@ -43,7 +43,6 @@ #include "ExecutionBurstController.h" #include "MemoryUtils.h" #include "TestHarness.h" -#include "Utils.h" #include "VtsHalNeuralnetworks.h" namespace android::hardware::neuralnetworks::V1_2::vts::functional { @@ -273,7 +272,7 @@ void EvaluatePreparedModel(const sp& preparedModel, const TestMo int n; std::tie(n, outputShapes, timing, std::ignore) = controller->compute(request, testConfig.measureTiming, keys); - executionStatus = nn::convertToV1_0(nn::convertResultCodeToErrorStatus(n)); + executionStatus = nn::legacyConvertResultCodeToErrorStatus(n); break; } diff --git a/neuralnetworks/1.2/vts/functional/ValidateBurst.cpp b/neuralnetworks/1.2/vts/functional/ValidateBurst.cpp index ec9629bccb..cc9d8048d0 100644 --- a/neuralnetworks/1.2/vts/functional/ValidateBurst.cpp +++ b/neuralnetworks/1.2/vts/functional/ValidateBurst.cpp @@ -23,7 +23,6 @@ #include "ExecutionBurstServer.h" #include "GeneratedTestHarness.h" #include "TestHarness.h" -#include "Utils.h" #include #include @@ -296,8 +295,7 @@ static void validateBurstFmqLength(const sp& preparedModel, // collect serialized result by running regular burst const auto [nRegular, outputShapesRegular, timingRegular, fallbackRegular] = controllerRegular->compute(request, MeasureTiming::NO, keys); - const ErrorStatus statusRegular = - nn::convertToV1_0(nn::convertResultCodeToErrorStatus(nRegular)); + const ErrorStatus statusRegular = nn::legacyConvertResultCodeToErrorStatus(nRegular); EXPECT_FALSE(fallbackRegular); // skip test if regular burst output isn't useful for testing a failure @@ -313,7 +311,7 @@ static void validateBurstFmqLength(const sp& preparedModel, // large enough to return the serialized result const auto [nSmall, outputShapesSmall, timingSmall, fallbackSmall] = controllerSmall->compute(request, MeasureTiming::NO, keys); - const ErrorStatus statusSmall = nn::convertToV1_0(nn::convertResultCodeToErrorStatus(nSmall)); + const ErrorStatus statusSmall = nn::legacyConvertResultCodeToErrorStatus(nSmall); EXPECT_NE(ErrorStatus::NONE, statusSmall); EXPECT_EQ(0u, outputShapesSmall.size()); EXPECT_TRUE(badTiming(timingSmall)); diff --git a/neuralnetworks/1.2/vts/functional/ValidateRequest.cpp b/neuralnetworks/1.2/vts/functional/ValidateRequest.cpp index 7b5ff9b8e4..8498cb041b 100644 --- a/neuralnetworks/1.2/vts/functional/ValidateRequest.cpp +++ b/neuralnetworks/1.2/vts/functional/ValidateRequest.cpp @@ -22,7 +22,6 @@ #include "ExecutionBurstController.h" #include "GeneratedTestHarness.h" #include "TestHarness.h" -#include "Utils.h" #include "VtsHalNeuralnetworks.h" namespace android::hardware::neuralnetworks::V1_2::vts::functional { @@ -107,7 +106,7 @@ static void validate(const sp& preparedModel, const std::string& // execute and verify const auto [n, outputShapes, timing, fallback] = burst->compute(request, measure, keys); - const ErrorStatus status = nn::convertToV1_0(nn::convertResultCodeToErrorStatus(n)); + const ErrorStatus status = nn::legacyConvertResultCodeToErrorStatus(n); EXPECT_EQ(ErrorStatus::INVALID_ARGUMENT, status); EXPECT_EQ(outputShapes.size(), 0); EXPECT_TRUE(badTiming(timing)); diff --git a/neuralnetworks/1.3/vts/functional/ValidateBurst.cpp b/neuralnetworks/1.3/vts/functional/ValidateBurst.cpp index 6ff9dfd3a8..aecb7b79c4 100644 --- a/neuralnetworks/1.3/vts/functional/ValidateBurst.cpp +++ b/neuralnetworks/1.3/vts/functional/ValidateBurst.cpp @@ -23,7 +23,6 @@ #include "ExecutionBurstServer.h" #include "GeneratedTestHarness.h" #include "TestHarness.h" -#include "Utils.h" #include #include @@ -302,8 +301,7 @@ static void validateBurstFmqLength(const sp& preparedModel, // collect serialized result by running regular burst const auto [nRegular, outputShapesRegular, timingRegular, fallbackRegular] = controllerRegular->compute(request, MeasureTiming::NO, keys); - const V1_0::ErrorStatus statusRegular = - nn::convertToV1_0(nn::convertResultCodeToErrorStatus(nRegular)); + const V1_0::ErrorStatus statusRegular = nn::legacyConvertResultCodeToErrorStatus(nRegular); EXPECT_FALSE(fallbackRegular); // skip test if regular burst output isn't useful for testing a failure @@ -319,8 +317,7 @@ static void validateBurstFmqLength(const sp& preparedModel, // large enough to return the serialized result const auto [nSmall, outputShapesSmall, timingSmall, fallbackSmall] = controllerSmall->compute(request, MeasureTiming::NO, keys); - const V1_0::ErrorStatus statusSmall = - nn::convertToV1_0(nn::convertResultCodeToErrorStatus(nSmall)); + const V1_0::ErrorStatus statusSmall = nn::legacyConvertResultCodeToErrorStatus(nSmall); EXPECT_NE(V1_0::ErrorStatus::NONE, statusSmall); EXPECT_EQ(0u, outputShapesSmall.size()); EXPECT_TRUE(badTiming(timingSmall));