skip_if_not(localstack_available(), "LocalStack Not Available") Sys.setenv(AWS_PROFILE = "localstack") purge_secrets() test_that("aws_secrets_list", { res <- aws_secrets_list() expect_type(res, "list") expect_named(res, c("SecretList", "NextToken")) expect_equal(length(res$SecretList), 0) }) test_that("aws_secrets_create", { secret_name <- "Testing6789" x <- aws_secrets_create( name = secret_name, secret = '{"username":"bear","password":"apple"}', description = "A note about the secret" ) expect_type(x, "list") expect_named(x, c("ARN", "Name", "VersionId", "ReplicationStatus")) expect_equal(x$Name, secret_name) expect_match(x$ARN, "arn:aws") expect_type(x$VersionId, "character") # cleanup purge_secrets() }) test_that("aws_secrets_get", { secret_name_thename <- "TestingTheThing1" the_secret <- '{"username":"bear","password":"apple"}' aws_secrets_create( name = secret_name_thename, secret = the_secret, description = "A note about the secret" ) res <- aws_secrets_get(secret_name_thename) expect_type(res, "list") expect_named(res, c( "ARN", "Name", "VersionId", "SecretBinary", "SecretString", "VersionStages", "CreatedDate" )) expect_equal(res$Name, secret_name_thename) expect_match(res$ARN, "arn:aws") expect_equal(res$SecretString, the_secret) secret_name_arn <- "TestingAnotherThing1" the_secret <- '{"username":"deer","password":"bananas"}' x <- aws_secrets_create( name = secret_name_arn, secret = the_secret, description = "A quick note about the secret" ) res <- aws_secrets_get(x$ARN) expect_type(res, "list") expect_named(res, c( "ARN", "Name", "VersionId", "SecretBinary", "SecretString", "VersionStages", "CreatedDate" )) expect_equal(res$Name, secret_name_arn) expect_match(res$ARN, "arn:aws") expect_equal(res$SecretString, the_secret) # cleanup purge_secrets() }) test_that("aws_secrets_all", { x <- aws_secrets_all() expect_type(x, "list") expect_equal(NROW(x), 0) aws_secrets_create( name = "TestingTheThing1", secret = '{"username":"bear","password":"apple"}', description = "A note about the secret" ) x <- aws_secrets_all() expect_type(x, "list") expect_equal(NROW(x), 1) }) # cleanup purge_secrets() Sys.unsetenv("AWS_PROFILE")