From fb84ca746e92e371161f1e1de3b01a048a9ae979 Mon Sep 17 00:00:00 2001 From: Philipp Tanlak Date: Wed, 11 Oct 2023 20:20:30 +0200 Subject: Implement file based caching --- modules/cache/sqlitestore_test.go | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 modules/cache/sqlitestore_test.go (limited to 'modules/cache/sqlitestore_test.go') diff --git a/modules/cache/sqlitestore_test.go b/modules/cache/sqlitestore_test.go new file mode 100644 index 0000000..769a69f --- /dev/null +++ b/modules/cache/sqlitestore_test.go @@ -0,0 +1,32 @@ +// This Source Code Form is subject to the terms of the Mozilla Public +// License, v. 2.0. If a copy of the MPL was not distributed with this +// file, You can obtain one at http://mozilla.org/MPL/2.0/. + +package cache_test + +import ( + "os" + "testing" + + "github.com/philippta/flyscrape/modules/cache" + "github.com/stretchr/testify/require" +) + +func TestSQLiteStore(t *testing.T) { + dir, err := os.MkdirTemp("", "sqlitestore") + require.NoError(t, err) + defer os.RemoveAll(dir) + + store := cache.NewSQLiteStore(dir + "/test.db") + + v, ok := store.Get("foo") + require.Nil(t, v) + require.False(t, ok) + + store.Set("foo", []byte("bar")) + + v, ok = store.Get("foo") + require.NotNil(t, v) + require.True(t, ok) + require.Equal(t, []byte("bar"), v) +} -- cgit v1.2.3