| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- // Copyright The OpenTelemetry Authors
- // SPDX-License-Identifier: Apache-2.0
- #ifdef _WIN32
- # include <gtest/gtest.h>
- # include <string>
- # include "opentelemetry/exporters/etw/etw_provider.h"
- using namespace OPENTELEMETRY_NAMESPACE;
- TEST(ETWProvider, ProviderIsRegisteredSuccessfully)
- {
- std::string providerName = "OpenTelemetry-ETW-Provider";
- static ETWProvider etw;
- auto handle = etw.open(providerName.c_str());
- bool registered = etw.is_registered(providerName);
- ASSERT_TRUE(registered);
- etw.close(handle);
- }
- TEST(ETWProvider, ProviderIsNotRegisteredSuccessfully)
- {
- std::string providerName = "OpenTelemetry-ETW-Provider-NULL";
- static ETWProvider etw;
- bool registered = etw.is_registered(providerName);
- ASSERT_FALSE(registered);
- }
- TEST(ETWProvider, CheckOpenGUIDDataSuccessfully)
- {
- std::string providerName = "OpenTelemetry-ETW-Provider";
- // get GUID from the handle returned
- static ETWProvider etw;
- auto handle = etw.open(providerName.c_str());
- utils::UUID uuid_handle(handle.providerGuid);
- auto guidStrHandle = uuid_handle.to_string();
- // get GUID from the providerName
- auto guid = utils::GetProviderGuid(providerName.c_str());
- utils::UUID uuid_name(guid);
- auto guidStrName = uuid_name.to_string();
- ASSERT_STREQ(guidStrHandle.c_str(), guidStrName.c_str());
- etw.close(handle);
- }
- TEST(ETWProvider, CheckCloseSuccess)
- {
- std::string providerName = "OpenTelemetry-ETW-Provider";
- static ETWProvider etw;
- auto handle = etw.open(providerName.c_str(), ETWProvider::EventFormat::ETW_MANIFEST);
- auto result = etw.close(handle);
- ASSERT_NE(result, etw.STATUS_ERROR);
- ASSERT_FALSE(etw.is_registered(providerName));
- }
- #endif
|