diff --git a/CHANGELOG.md b/CHANGELOG.md index d0ed89d..77be94a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,7 +1,9 @@ # Changelog -### [0.5.1] - 2025-04-31 - 📄 Add LICENSE +## [0.5.2] - 2025-04-31 - ✅ Add testable examples -### [0.5.0] - 2025-04-21 - 🚀 Stable release! +## [0.5.1] - 2025-04-31 - 📄 Add LICENSE + +## [0.5.0] - 2025-04-21 - 🚀 Stable release! Everything works. diff --git a/example_test.go b/example_test.go new file mode 100644 index 0000000..d8e1240 --- /dev/null +++ b/example_test.go @@ -0,0 +1,31 @@ +//nolint:perfsprint // Not that concerned about microoptimizations for test code +package ezcache_test + +import ( + "fmt" + "time" + + "codeberg.org/danjones000/ezcache" +) + +func Example() { + // Create a five minute cache. + cache, _ := ezcache.New(func(id uint8) (string, error) { + fmt.Println("Fetching new value for", id) + return fmt.Sprintf("%d", id), nil + }, 5*time.Minute) + + val, _ := cache.Get(5) + fmt.Println("Got value", val) + val, _ = cache.Get(5) + fmt.Println("Got value", val) + val, _ = cache.Get(4) + fmt.Println("Got value", val) + + // Output: + // Fetching new value for 5 + // Got value 5 + // Got value 5 + // Fetching new value for 4 + // Got value 4 +} diff --git a/ezcache_test.go b/ezcache_test.go index b713a75..0787885 100644 --- a/ezcache_test.go +++ b/ezcache_test.go @@ -1,3 +1,4 @@ +//nolint:perfsprint // Not that concerned about microoptimizations for test code package ezcache_test import ( @@ -69,7 +70,7 @@ func TestGetExpire(t *testing.T) { assert.True(t, hit) hit = false - time.Sleep(2) + time.Sleep(2 * time.Nanosecond) val, err = cache.Get(4) assert.NoError(t, err) assert.Equal(t, "4", val) @@ -77,6 +78,7 @@ func TestGetExpire(t *testing.T) { } func TestGetError(t *testing.T) { + //nolint:err113 // It's just a test for an error. cache, _ := ezcache.New(func(k uint8) (byte, error) { return 0, fmt.Errorf("Nope for %d", k) }, 1) _, err := cache.Get(4)