mirror of
https://github.com/Evolution-X/hardware_interfaces
synced 2026-02-01 22:04:26 +00:00
KeyMint VTS: check for relevant devices
Don't run tests if the appropriate KeyMint device is not available (e.g. on something that only has Keymaster). Move to use GTEST_SKIP consistently. Bug: 221909227 Test: VtsAidlKeyMintTargetTest Change-Id: I5dab238519e57e6752b795f3a983681cf4337bdd
This commit is contained in:
@@ -63,6 +63,9 @@ class SecureElementProvisioningTest : public testing::Test {
|
||||
map<SecurityLevel, shared_ptr<IKeyMintDevice>> SecureElementProvisioningTest::keymints_;
|
||||
|
||||
TEST_F(SecureElementProvisioningTest, ValidConfigurations) {
|
||||
if (keymints_.empty()) {
|
||||
GTEST_SKIP() << "Test not applicable to device with no KeyMint devices";
|
||||
}
|
||||
// TEE is required
|
||||
ASSERT_EQ(keymints_.count(SecurityLevel::TRUSTED_ENVIRONMENT), 1);
|
||||
// StrongBox is optional
|
||||
@@ -70,6 +73,9 @@ TEST_F(SecureElementProvisioningTest, ValidConfigurations) {
|
||||
}
|
||||
|
||||
TEST_F(SecureElementProvisioningTest, TeeOnly) {
|
||||
if (keymints_.empty()) {
|
||||
GTEST_SKIP() << "Test not applicable to device with no KeyMint devices";
|
||||
}
|
||||
ASSERT_EQ(keymints_.count(SecurityLevel::TRUSTED_ENVIRONMENT), 1);
|
||||
auto tee = keymints_.find(SecurityLevel::TRUSTED_ENVIRONMENT)->second;
|
||||
ASSERT_NE(tee, nullptr);
|
||||
@@ -105,6 +111,9 @@ TEST_F(SecureElementProvisioningTest, TeeOnly) {
|
||||
}
|
||||
|
||||
TEST_F(SecureElementProvisioningTest, TeeDoesNotImplementStrongBoxMethods) {
|
||||
if (keymints_.empty()) {
|
||||
GTEST_SKIP() << "Test not applicable to device with no KeyMint devices";
|
||||
}
|
||||
ASSERT_EQ(keymints_.count(SecurityLevel::TRUSTED_ENVIRONMENT), 1);
|
||||
auto tee = keymints_.find(SecurityLevel::TRUSTED_ENVIRONMENT)->second;
|
||||
ASSERT_NE(tee, nullptr);
|
||||
@@ -122,7 +131,10 @@ TEST_F(SecureElementProvisioningTest, TeeDoesNotImplementStrongBoxMethods) {
|
||||
}
|
||||
|
||||
TEST_F(SecureElementProvisioningTest, StrongBoxDoesNotImplementTeeMethods) {
|
||||
if (keymints_.count(SecurityLevel::STRONGBOX) == 0) return;
|
||||
if (keymints_.count(SecurityLevel::STRONGBOX) == 0) {
|
||||
// Need a StrongBox to provision.
|
||||
GTEST_SKIP() << "Test not applicable to device with no StrongBox KeyMint device";
|
||||
}
|
||||
|
||||
auto sb = keymints_.find(SecurityLevel::STRONGBOX)->second;
|
||||
ASSERT_NE(sb, nullptr);
|
||||
@@ -135,7 +147,10 @@ TEST_F(SecureElementProvisioningTest, StrongBoxDoesNotImplementTeeMethods) {
|
||||
}
|
||||
|
||||
TEST_F(SecureElementProvisioningTest, UnimplementedTest) {
|
||||
if (keymints_.count(SecurityLevel::STRONGBOX) == 0) return; // Need a StrongBox to provision.
|
||||
if (keymints_.count(SecurityLevel::STRONGBOX) == 0) {
|
||||
// Need a StrongBox to provision.
|
||||
GTEST_SKIP() << "Test not applicable to device with no StrongBox KeyMint device";
|
||||
}
|
||||
|
||||
ASSERT_EQ(keymints_.count(SecurityLevel::TRUSTED_ENVIRONMENT), 1);
|
||||
auto tee = keymints_.find(SecurityLevel::TRUSTED_ENVIRONMENT)->second;
|
||||
@@ -166,7 +181,10 @@ TEST_F(SecureElementProvisioningTest, UnimplementedTest) {
|
||||
}
|
||||
|
||||
TEST_F(SecureElementProvisioningTest, ChallengeQualityTest) {
|
||||
if (keymints_.count(SecurityLevel::STRONGBOX) == 0) return; // Need a StrongBox to provision.
|
||||
if (keymints_.count(SecurityLevel::STRONGBOX) == 0) {
|
||||
// Need a StrongBox to provision.
|
||||
GTEST_SKIP() << "Test not applicable to device with no StrongBox KeyMint device";
|
||||
}
|
||||
|
||||
ASSERT_EQ(keymints_.count(SecurityLevel::STRONGBOX), 1);
|
||||
auto sb = keymints_.find(SecurityLevel::STRONGBOX)->second;
|
||||
@@ -186,7 +204,10 @@ TEST_F(SecureElementProvisioningTest, ChallengeQualityTest) {
|
||||
}
|
||||
|
||||
TEST_F(SecureElementProvisioningTest, ProvisioningTest) {
|
||||
if (keymints_.count(SecurityLevel::STRONGBOX) == 0) return; // Need a StrongBox to provision.
|
||||
if (keymints_.count(SecurityLevel::STRONGBOX) == 0) {
|
||||
// Need a StrongBox to provision.
|
||||
GTEST_SKIP() << "Test not applicable to device with no StrongBox KeyMint device";
|
||||
}
|
||||
|
||||
ASSERT_EQ(keymints_.count(SecurityLevel::TRUSTED_ENVIRONMENT), 1);
|
||||
auto tee = keymints_.find(SecurityLevel::TRUSTED_ENVIRONMENT)->second;
|
||||
@@ -215,7 +236,10 @@ TEST_F(SecureElementProvisioningTest, ProvisioningTest) {
|
||||
}
|
||||
|
||||
TEST_F(SecureElementProvisioningTest, InvalidProvisioningTest) {
|
||||
if (keymints_.count(SecurityLevel::STRONGBOX) == 0) return; // Need a StrongBox to provision.
|
||||
if (keymints_.count(SecurityLevel::STRONGBOX) == 0) {
|
||||
// Need a StrongBox to provision.
|
||||
GTEST_SKIP() << "Test not applicable to device with no StrongBox KeyMint device";
|
||||
}
|
||||
|
||||
ASSERT_EQ(keymints_.count(SecurityLevel::TRUSTED_ENVIRONMENT), 1);
|
||||
auto tee = keymints_.find(SecurityLevel::TRUSTED_ENVIRONMENT)->second;
|
||||
|
||||
Reference in New Issue
Block a user