51 lines
1.3 KiB
Elixir
51 lines
1.3 KiB
Elixir
defmodule MusicLibrary.SecretsTest do
|
|
use MusicLibrary.DataCase
|
|
|
|
alias MusicLibrary.Secrets
|
|
|
|
describe "store/2" do
|
|
test "stores a secret" do
|
|
assert {:ok, secret} = Secrets.store("test_key", "test_value")
|
|
assert secret.name == "test_key"
|
|
end
|
|
|
|
test "replaces an existing secret" do
|
|
{:ok, _} = Secrets.store("test_key", "original")
|
|
{:ok, _} = Secrets.store("test_key", "updated")
|
|
|
|
secret = Secrets.get!("test_key")
|
|
assert secret.value == "updated"
|
|
end
|
|
end
|
|
|
|
describe "get!/1" do
|
|
test "retrieves a stored secret" do
|
|
{:ok, _} = Secrets.store("test_key", "test_value")
|
|
|
|
secret = Secrets.get!("test_key")
|
|
assert secret.name == "test_key"
|
|
assert secret.value == "test_value"
|
|
end
|
|
|
|
test "raises when secret does not exist" do
|
|
assert_raise Ecto.NoResultsError, fn ->
|
|
Secrets.get!("nonexistent")
|
|
end
|
|
end
|
|
end
|
|
|
|
describe "get/1" do
|
|
test "retrieves a stored secret" do
|
|
{:ok, _} = Secrets.store("test_key", "test_value")
|
|
|
|
secret = Secrets.get("test_key")
|
|
assert secret.name == "test_key"
|
|
assert secret.value == "test_value"
|
|
end
|
|
|
|
test "returns nil when secret does not exist" do
|
|
assert Secrets.get("nonexistent") == nil
|
|
end
|
|
end
|
|
end
|