30 lines
828 B
Go
30 lines
828 B
Go
package storage
|
|
|
|
import "testing"
|
|
|
|
func TestEphemeralAssetStoreRegisterGetDelete(t *testing.T) {
|
|
store := NewEphemeralAssetStore()
|
|
key, err := store.Register([]byte("png"), "image/png", 0)
|
|
if err != nil {
|
|
t.Fatalf("Register: %v", err)
|
|
}
|
|
data, ct, ok := store.Get(key)
|
|
if !ok || ct != "image/png" || string(data) != "png" {
|
|
t.Fatalf("Get() = %q %q %v", data, ct, ok)
|
|
}
|
|
store.Delete(key)
|
|
if _, _, ok := store.Get(key); ok {
|
|
t.Fatal("expected deleted")
|
|
}
|
|
}
|
|
|
|
func TestBuildEphemeralPublicURL(t *testing.T) {
|
|
url, err := BuildEphemeralPublicURL("https://example.com/api/v1/public/assets", EphemeralKeyPrefix+"abc")
|
|
if err != nil {
|
|
t.Fatalf("BuildEphemeralPublicURL: %v", err)
|
|
}
|
|
want := "https://example.com/api/v1/public/assets?key=ephemeral%2Fabc"
|
|
if url != want {
|
|
t.Fatalf("got %q want %q", url, want)
|
|
}
|
|
} |