@@ -24,10 +24,19 @@ def __init__(self, arguments):
2424 vault_url = self .get_from_env ("AZURE_KEYVAULT_URL" )
2525 self .client = SecretClient (vault_url , self .credential , ** self ._client_kwargs )
2626 self .async_client = AsyncSecretClient (vault_url , self .async_credential , ** self ._client_kwargs )
27- self .secret_names = ["livekvtestlistperfsecret{}" .format (i ) for i in range (self .args .list_size )]
27+ self .secret_names = ["livekvtestlistperfsecret{}" .format (i ) for i in range (self .args .count )]
2828
2929 async def global_setup (self ):
3030 """The global setup is run only once."""
31+ # Validate that vault contains 0 secrets (including soft-deleted secrets), since additional secrets
32+ # (including soft-deleted) impact performance.
33+ async for secret in self .async_client .list_properties_of_secrets ():
34+ raise Exception ("KeyVault %s must contain 0 secrets (including soft-deleted) before starting perf test" \
35+ % self .async_client .vault_url )
36+ async for secret in self .async_client .list_deleted_secrets ():
37+ raise Exception ("KeyVault %s must contain 0 secrets (including soft-deleted) before starting perf test" \
38+ % self .async_client .vault_url )
39+
3140 await super ().global_setup ()
3241 create = [self .async_client .set_secret (name , "secret-value" ) for name in self .secret_names ]
3342 await asyncio .wait (create )
@@ -63,5 +72,5 @@ async def run_async(self):
6372 def add_arguments (parser ):
6473 super (ListSecretsTest , ListSecretsTest ).add_arguments (parser )
6574 parser .add_argument (
66- '--list-size ' , nargs = '?' , type = int , help = 'Number of secrets to list. Defaults to 10' , default = 10
75+ '--count ' , nargs = '?' , type = int , help = 'Number of secrets to list. Defaults to 10' , default = 10
6776 )
0 commit comments