Okp skip tests (#4256)
* first pass * part2 * part3 * part 5 * pre PR * updated tests * fix test * clangs * updated changelog * skip okp test sfor non HSM test runs * no return value * stupid mistake * clang * clang * pr comments, clang * oops * skipping maybe? * Update sdk/core/azure-core-test/inc/azure/core/test/test_base.hpp Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com> * fir RemovePreffffffix Co-authored-by: Anton Kolesnyk <41349689+antkmsft@users.noreply.github.com>
This commit is contained in:
parent
b7e7e4e000
commit
d5e2ab88a9
@ -102,19 +102,10 @@ namespace Azure { namespace Core { namespace Test {
|
||||
{
|
||||
std::string updated(src);
|
||||
std::replace(updated.begin(), updated.end(), '/', '-');
|
||||
return RemovePreffix(updated);
|
||||
return RemovePrefix(updated);
|
||||
}
|
||||
|
||||
void SkipTest()
|
||||
{
|
||||
if (!m_wasSkipped)
|
||||
{
|
||||
m_wasSkipped = true;
|
||||
GTEST_SKIP();
|
||||
}
|
||||
}
|
||||
|
||||
std::string RemovePreffix(std::string const& src)
|
||||
std::string RemovePrefix(std::string const& src)
|
||||
{
|
||||
std::string updated(src);
|
||||
// Remove special marker for LIVEONLY
|
||||
@ -143,6 +134,15 @@ namespace Azure { namespace Core { namespace Test {
|
||||
|
||||
bool shouldSkipTest() { return m_wasSkipped; }
|
||||
|
||||
void SkipTest()
|
||||
{
|
||||
if (!m_wasSkipped)
|
||||
{
|
||||
m_wasSkipped = true;
|
||||
GTEST_SKIP();
|
||||
}
|
||||
}
|
||||
|
||||
inline void ValidateSkippingTest()
|
||||
{
|
||||
if (m_wasSkipped)
|
||||
@ -178,7 +178,7 @@ namespace Azure { namespace Core { namespace Test {
|
||||
testName = Sanitize(testName);
|
||||
}
|
||||
|
||||
return RemovePreffix(testName);
|
||||
return RemovePrefix(testName);
|
||||
}
|
||||
|
||||
// Reads the current test instance name.
|
||||
|
||||
@ -33,6 +33,17 @@ namespace Azure { namespace Security { namespace KeyVault { namespace Keys { nam
|
||||
int m_testPollingTimeOutMinutes = 20;
|
||||
std::chrono::milliseconds m_testPollingIntervalMs = std::chrono::minutes(1);
|
||||
|
||||
bool CheckSkipHsmForLive()
|
||||
{
|
||||
// if we are in live mode and the test needs a valid HSM url (aka different from the keyvault
|
||||
// url)
|
||||
if (m_testContext.IsLiveMode() && (m_keyVaultUrl == m_keyVaultHsmUrl))
|
||||
{
|
||||
SkipTest();
|
||||
}
|
||||
return IsSkipped();
|
||||
}
|
||||
|
||||
// Reads the current test instance name.
|
||||
// Name gets also sanitized (special chars are removed) to avoid issues when recording or
|
||||
// creating. This also return the name with suffix if the "AZURE_LIVE_TEST_SUFFIX" exists.
|
||||
|
||||
@ -133,49 +133,55 @@ TEST_F(KeyVaultKeyClient, CreateEcKey)
|
||||
/********************************* Create key overloads *********************************/
|
||||
TEST_F(KeyVaultKeyClient, CreateOkpKey)
|
||||
{
|
||||
auto const keyName = GetTestName();
|
||||
// This client requires an HSM client
|
||||
CreateHsmClient();
|
||||
auto const& client = GetClientForTest(keyName);
|
||||
if (!CheckSkipHsmForLive())
|
||||
{
|
||||
auto const keyName = GetTestName();
|
||||
// This client requires an HSM client
|
||||
CreateHsmClient();
|
||||
auto const& client = GetClientForTest(keyName);
|
||||
|
||||
{
|
||||
auto okpKey = Azure::Security::KeyVault::Keys::CreateOkpKeyOptions(keyName);
|
||||
auto keyResponse = client.CreateOkpKey(okpKey);
|
||||
CheckValidResponse(keyResponse);
|
||||
auto keyVaultKey = keyResponse.Value;
|
||||
EXPECT_EQ(keyVaultKey.Name(), keyName);
|
||||
}
|
||||
{
|
||||
// Now get the key
|
||||
auto keyResponse = client.GetKey(keyName);
|
||||
CheckValidResponse(keyResponse);
|
||||
auto keyVaultKey = keyResponse.Value;
|
||||
EXPECT_EQ(keyVaultKey.Name(), keyName);
|
||||
{
|
||||
auto okpKey = Azure::Security::KeyVault::Keys::CreateOkpKeyOptions(keyName);
|
||||
auto keyResponse = client.CreateOkpKey(okpKey);
|
||||
CheckValidResponse(keyResponse);
|
||||
auto keyVaultKey = keyResponse.Value;
|
||||
EXPECT_EQ(keyVaultKey.Name(), keyName);
|
||||
}
|
||||
{
|
||||
// Now get the key
|
||||
auto keyResponse = client.GetKey(keyName);
|
||||
CheckValidResponse(keyResponse);
|
||||
auto keyVaultKey = keyResponse.Value;
|
||||
EXPECT_EQ(keyVaultKey.Name(), keyName);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
TEST_F(KeyVaultKeyClient, CreateOkpHSMKey)
|
||||
{
|
||||
auto const keyName = GetTestName();
|
||||
// This client requires an HSM client
|
||||
CreateHsmClient();
|
||||
auto const& client = GetClientForTest(keyName);
|
||||
if (!CheckSkipHsmForLive())
|
||||
{
|
||||
auto const keyName = GetTestName();
|
||||
// This client requires an HSM client
|
||||
CreateHsmClient();
|
||||
auto const& client = GetClientForTest(keyName);
|
||||
|
||||
{
|
||||
auto okpKey = Azure::Security::KeyVault::Keys::CreateOkpKeyOptions(keyName, true);
|
||||
auto keyResponse = client.CreateOkpKey(okpKey);
|
||||
CheckValidResponse(keyResponse);
|
||||
auto keyVaultKey = keyResponse.Value;
|
||||
EXPECT_EQ(keyVaultKey.Name(), keyName);
|
||||
EXPECT_EQ(keyVaultKey.GetKeyType(), KeyVaultKeyType::OkpHsm);
|
||||
EXPECT_EQ(keyVaultKey.Key.CurveName.Value(), KeyCurveName::Ed25519);
|
||||
}
|
||||
{
|
||||
// Now get the key
|
||||
auto keyResponse = client.GetKey(keyName);
|
||||
CheckValidResponse(keyResponse);
|
||||
auto keyVaultKey = keyResponse.Value;
|
||||
EXPECT_EQ(keyVaultKey.Name(), keyName);
|
||||
{
|
||||
auto okpKey = Azure::Security::KeyVault::Keys::CreateOkpKeyOptions(keyName, true);
|
||||
auto keyResponse = client.CreateOkpKey(okpKey);
|
||||
CheckValidResponse(keyResponse);
|
||||
auto keyVaultKey = keyResponse.Value;
|
||||
EXPECT_EQ(keyVaultKey.Name(), keyName);
|
||||
EXPECT_EQ(keyVaultKey.GetKeyType(), KeyVaultKeyType::OkpHsm);
|
||||
EXPECT_EQ(keyVaultKey.Key.CurveName.Value(), KeyCurveName::Ed25519);
|
||||
}
|
||||
{
|
||||
// Now get the key
|
||||
auto keyResponse = client.GetKey(keyName);
|
||||
CheckValidResponse(keyResponse);
|
||||
auto keyVaultKey = keyResponse.Value;
|
||||
EXPECT_EQ(keyVaultKey.Name(), keyName);
|
||||
}
|
||||
}
|
||||
}
|
||||
TEST_F(KeyVaultKeyClient, CreateEcKeyWithCurve)
|
||||
@ -262,7 +268,6 @@ TEST_F(KeyVaultKeyClient, CreateRsaHsmKey)
|
||||
// This client requires an HSM client
|
||||
CreateHsmClient();
|
||||
auto const& client = GetClientForTest(keyName);
|
||||
|
||||
{
|
||||
auto rsaHsmKey = Azure::Security::KeyVault::Keys::CreateRsaKeyOptions(keyName, true);
|
||||
rsaHsmKey.Enabled = true;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user