diskcache_test.go 704 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. package diskcache
  2. import (
  3. "bytes"
  4. "io/ioutil"
  5. "os"
  6. "testing"
  7. )
  8. func TestDiskCache(t *testing.T) {
  9. tempDir, err := ioutil.TempDir("", "httpcache")
  10. if err != nil {
  11. t.Fatalf("TempDir: %v", err)
  12. }
  13. defer os.RemoveAll(tempDir)
  14. cache := New(tempDir)
  15. key := "testKey"
  16. _, ok := cache.Get(key)
  17. if ok {
  18. t.Fatal("retrieved key before adding it")
  19. }
  20. val := []byte("some bytes")
  21. cache.Set(key, val)
  22. retVal, ok := cache.Get(key)
  23. if !ok {
  24. t.Fatal("could not retrieve an element we just added")
  25. }
  26. if !bytes.Equal(retVal, val) {
  27. t.Fatal("retrieved a different value than what we put in")
  28. }
  29. cache.Delete(key)
  30. _, ok = cache.Get(key)
  31. if ok {
  32. t.Fatal("deleted key still present")
  33. }
  34. }