// Copyright © Advanced Micro Devices, Inc., or its affiliates. // SPDX-License-Identifier: MIT // Fake plugin that reports a malformed API version string. #include "TestPluginCommon.hpp" #include "TestPluginEngineIdMap.hpp" // NOLINTNEXTLINE thread_local char hipdnn_plugin_sdk::PluginLastErrorManager::s_lastError[HIPDNN_PLUGIN_ERROR_STRING_MAX_LENGTH] = ""; class MalformedVersionPlugin : public TestPluginBase { public: const char* getPluginName() const override { return "test_MalformedVersionPlugin"; } const char* getPluginVersion() const override { return "1.0.0"; } /// Deliberately not parseable as MAJOR.MINOR.PATCH so `parsedApiVersion()` /// yields `nullopt` and `validateBeforeAdding` throws. const char* getPluginApiVersion() const override { return "not.a.version"; } int64_t getEngineId() const override { return hipdnn_tests::plugin_constants::engineId(); } uint32_t getNumEngines() const override { return 1; } uint32_t getNumApplicableEngines() const override { return 1; } }; // Initialize plugin instance on load __attribute__((constructor)) static void initializePlugin() { TestPluginBase::setInstance(std::make_unique()); } // Standard plugin API surface only — the malformed version is the failure // mode under test, not a missing symbol. REGISTER_TEST_PLUGIN_API()