From 57e776563ae3f6b14338f7fbb2d073ad40496d51 Mon Sep 17 00:00:00 2001
From: ensiouel <ensiouel@gmail.com>
Date: Sat, 16 Dec 2023 17:02:32 +0300
Subject: [PATCH] =?UTF-8?q?fix(items):=20=D0=B8=D1=81=D0=BF=D1=80=D0=B0?=
 =?UTF-8?q?=D0=B2=D0=BB=D0=B5=D0=BD=D1=8B=20=D1=82=D0=B5=D1=81=D1=82=D1=8B?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../middleware/caching_middleware_test.go     | 41 ++++++++++---------
 1 file changed, 22 insertions(+), 19 deletions(-)

diff --git a/pkg/items/middleware/caching_middleware_test.go b/pkg/items/middleware/caching_middleware_test.go
index b7ea569d..ce8bd3d3 100644
--- a/pkg/items/middleware/caching_middleware_test.go
+++ b/pkg/items/middleware/caching_middleware_test.go
@@ -11,6 +11,8 @@ import (
 	"git.perx.ru/perxis/perxis-go/pkg/errors"
 	"git.perx.ru/perxis/perxis-go/pkg/items"
 	itmsmocks "git.perx.ru/perxis/perxis-go/pkg/items/mocks"
+	"git.perx.ru/perxis/perxis-go/pkg/metrics"
+	"github.com/prometheus/client_golang/prometheus"
 	"github.com/stretchr/testify/assert"
 	"github.com/stretchr/testify/mock"
 	"github.com/stretchr/testify/require"
@@ -32,12 +34,13 @@ func TestItemsCache(t *testing.T) {
 	errNotFound := errors.NotFound(errors.New("not found"))
 
 	ctx := context.Background()
+	cacheMetrics := metrics.NewCacheMetrics(prometheus.DefaultRegisterer)
 
 	t.Run("Get from cache", func(t *testing.T) {
 		itms := &itmsmocks.Items{}
 		env := &envmocks.Environments{}
 
-		svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), env)(itms)
+		svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), cacheMetrics, env)(itms)
 
 		env.On("Get", mock.Anything, spaceID, envID).Return(&environments.Environment{ID: envID, SpaceID: spaceID, Aliases: []string{envAlias}}, nil).Once()
 		itms.On("Get", mock.Anything, spaceID, envID, colID, itemID).Return(&items.Item{ID: itemID, SpaceID: spaceID, EnvID: envID, CollectionID: colID, State: items.StateDraft}, nil).Once()
@@ -61,7 +64,7 @@ func TestItemsCache(t *testing.T) {
 		itms := &itmsmocks.Items{}
 		env := &envmocks.Environments{}
 
-		svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), env)(itms)
+		svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), cacheMetrics, env)(itms)
 
 		env.On("Get", mock.Anything, spaceID, envID).Return(&environments.Environment{ID: envID, SpaceID: spaceID, Aliases: []string{envAlias}}, nil).Once()
 		itms.On("Get", mock.Anything, spaceID, envAlias, colID, itemID).Return(&items.Item{ID: itemID, SpaceID: spaceID, EnvID: envID, CollectionID: colID, State: items.StateDraft}, nil).Once()
@@ -85,7 +88,7 @@ func TestItemsCache(t *testing.T) {
 		itms := &itmsmocks.Items{}
 		env := &envmocks.Environments{}
 
-		svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), env)(itms)
+		svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), cacheMetrics, env)(itms)
 
 		env.On("Get", mock.Anything, spaceID, envID).Return(&environments.Environment{ID: envID, SpaceID: spaceID, Aliases: []string{envAlias}}, nil).Once()
 		itms.On("GetPublished", mock.Anything, spaceID, envID, colID, itemID, mock.Anything).Return(&items.Item{ID: itemID, SpaceID: spaceID, EnvID: envID, CollectionID: colID, State: items.StateDraft}, nil).Once()
@@ -109,7 +112,7 @@ func TestItemsCache(t *testing.T) {
 		itms := &itmsmocks.Items{}
 		env := &envmocks.Environments{}
 
-		svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), env)(itms)
+		svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), cacheMetrics, env)(itms)
 
 		env.On("Get", mock.Anything, spaceID, envID).Return(&environments.Environment{ID: envID, SpaceID: spaceID, Aliases: []string{envAlias}}, nil).Once()
 		itms.On("GetPublished", mock.Anything, spaceID, envAlias, colID, itemID, mock.Anything).Return(&items.Item{ID: itemID, SpaceID: spaceID, EnvID: envID, CollectionID: colID, State: items.StateDraft}, nil).Once()
@@ -138,7 +141,7 @@ func TestItemsCache(t *testing.T) {
 		itms := &itmsmocks.Items{}
 		env := &envmocks.Environments{}
 
-		svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), env)(itms)
+		svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), cacheMetrics, env)(itms)
 
 		env.On("Get", mock.Anything, spaceID, envID).Return(&environments.Environment{ID: envID, SpaceID: spaceID, Aliases: []string{envAlias}}, nil).Twice()
 		itms.On("GetPublished", mock.Anything, spaceID, envAlias, colID, itemID, mock.Anything).Return(&items.Item{ID: itemID, SpaceID: spaceID, EnvID: envID, CollectionID: colID, State: items.StateDraft}, nil).Once()
@@ -176,7 +179,7 @@ func TestItemsCache(t *testing.T) {
 			env := &envmocks.Environments{}
 
 			env.On("Get", mock.Anything, spaceID, envID).Return(&environments.Environment{ID: envID, SpaceID: spaceID, Aliases: []string{envAlias}}, nil).Once()
-			svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), env)(itms)
+			svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), cacheMetrics, env)(itms)
 
 			itms.On("Get", mock.Anything, spaceID, envID, colID, itemID).Return(&items.Item{ID: itemID, SpaceID: spaceID, EnvID: envID, CollectionID: colID, Data: map[string]interface{}{"f1": "d1"}}, nil).Once()
 
@@ -208,7 +211,7 @@ func TestItemsCache(t *testing.T) {
 			itms := &itmsmocks.Items{}
 			env := &envmocks.Environments{}
 
-			svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), env)(itms)
+			svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), cacheMetrics, env)(itms)
 
 			env.On("Get", mock.Anything, spaceID, envID).Return(&environments.Environment{ID: envID, SpaceID: spaceID, Aliases: []string{envAlias}}, nil).Once()
 			itms.On("Get", mock.Anything, spaceID, envID, colID, itemID).Return(&items.Item{ID: itemID, SpaceID: spaceID, EnvID: envID, CollectionID: colID, State: items.StateDraft}, nil).Once()
@@ -241,7 +244,7 @@ func TestItemsCache(t *testing.T) {
 			itms := &itmsmocks.Items{}
 			env := &envmocks.Environments{}
 
-			svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), env)(itms)
+			svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), cacheMetrics, env)(itms)
 
 			env.On("Get", mock.Anything, spaceID, envID).Return(&environments.Environment{ID: envID, SpaceID: spaceID, Aliases: []string{envAlias}}, nil).Once()
 			itms.On("Get", mock.Anything, spaceID, envID, colID, itemID).Return(&items.Item{ID: itemID, SpaceID: spaceID, EnvID: envID, CollectionID: colID, State: items.StateDraft}, nil).Once()
@@ -273,7 +276,7 @@ func TestItemsCache(t *testing.T) {
 			itms := &itmsmocks.Items{}
 			env := &envmocks.Environments{}
 
-			svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), env)(itms)
+			svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), cacheMetrics, env)(itms)
 
 			env.On("Get", mock.Anything, spaceID, envID).Return(&environments.Environment{ID: envID, SpaceID: spaceID, Aliases: []string{envAlias}}, nil).Once()
 			itms.On("Get", mock.Anything, spaceID, envID, colID, itemID).Return(&items.Item{ID: itemID, SpaceID: spaceID, EnvID: envID, CollectionID: colID, State: items.StatePublished}, nil).Once()
@@ -313,7 +316,7 @@ func TestItemsCache(t *testing.T) {
 			itms := &itmsmocks.Items{}
 			env := &envmocks.Environments{}
 
-			svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), env)(itms)
+			svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), cacheMetrics, env)(itms)
 
 			env.On("Get", mock.Anything, spaceID, envID).Return(&environments.Environment{ID: envID, SpaceID: spaceID, Aliases: []string{envAlias}}, nil).Once()
 			itms.On("Get", mock.Anything, spaceID, envID, colID, itemID).Return(&items.Item{ID: itemID, SpaceID: spaceID, EnvID: envID, CollectionID: colID, State: items.StatePublished}, nil).Once()
@@ -346,7 +349,7 @@ func TestItemsCache(t *testing.T) {
 			itms := &itmsmocks.Items{}
 			env := &envmocks.Environments{}
 
-			svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), env)(itms)
+			svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), cacheMetrics, env)(itms)
 
 			env.On("Get", mock.Anything, spaceID, envID).Return(&environments.Environment{ID: envID, SpaceID: spaceID, Aliases: []string{envAlias}}, nil).Once()
 			itms.On("Get", mock.Anything, spaceID, envID, colID, itemID).Return(&items.Item{ID: itemID, SpaceID: spaceID, EnvID: envID, CollectionID: colID, State: items.StateDraft}, nil).Once()
@@ -379,7 +382,7 @@ func TestItemsCache(t *testing.T) {
 			itms := &itmsmocks.Items{}
 			env := &envmocks.Environments{}
 
-			svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), env)(itms)
+			svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), cacheMetrics, env)(itms)
 
 			env.On("Get", mock.Anything, spaceID, envID).Return(&environments.Environment{ID: envID, SpaceID: spaceID, Aliases: []string{envAlias}}, nil).Once()
 			itms.On("Get", mock.Anything, spaceID, envID, colID, itemID).Return(&items.Item{ID: itemID, SpaceID: spaceID, EnvID: envID, CollectionID: colID, Data: map[string]interface{}{"f1": "d1"}}, nil).Once()
@@ -412,7 +415,7 @@ func TestItemsCache(t *testing.T) {
 			itms := &itmsmocks.Items{}
 			env := &envmocks.Environments{}
 
-			svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), env)(itms)
+			svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), cacheMetrics, env)(itms)
 
 			env.On("Get", mock.Anything, spaceID, envID).Return(&environments.Environment{ID: envID, SpaceID: spaceID, Aliases: []string{envAlias}}, nil).Once()
 			itms.On("Get", mock.Anything, spaceID, envID, colID, itemID).Return(&items.Item{ID: itemID, SpaceID: spaceID, EnvID: envID, CollectionID: colID, State: items.StatePublished}, nil).Once()
@@ -445,7 +448,7 @@ func TestItemsCache(t *testing.T) {
 			itms := &itmsmocks.Items{}
 			env := &envmocks.Environments{}
 
-			svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), env)(itms)
+			svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), cacheMetrics, env)(itms)
 
 			env.On("Get", mock.Anything, spaceID, envID).Return(&environments.Environment{ID: envID, SpaceID: spaceID, Aliases: []string{envAlias}}, nil).Once()
 			itms.On("GetPublished", mock.Anything, spaceID, envID, colID, itemID, mock.Anything).Return(&items.Item{ID: itemID, SpaceID: spaceID, EnvID: envID, CollectionID: colID, State: items.StatePublished, Data: map[string]interface{}{"f1": "d1"}}, nil).Once()
@@ -486,7 +489,7 @@ func TestItemsCache(t *testing.T) {
 			itms := &itmsmocks.Items{}
 			env := &envmocks.Environments{}
 
-			svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), env)(itms)
+			svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), cacheMetrics, env)(itms)
 
 			env.On("Get", mock.Anything, spaceID, envID).Return(&environments.Environment{ID: envID, SpaceID: spaceID, Aliases: []string{envAlias}}, nil).Once()
 			itms.On("GetPublished", mock.Anything, spaceID, envID, colID, itemID, mock.Anything).Return(&items.Item{ID: itemID, SpaceID: spaceID, EnvID: envID, CollectionID: colID, State: items.StateDraft}, nil).Once()
@@ -527,7 +530,7 @@ func TestItemsCache(t *testing.T) {
 			itms := &itmsmocks.Items{}
 			env := &envmocks.Environments{}
 
-			svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), env)(itms)
+			svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), cacheMetrics, env)(itms)
 
 			env.On("Get", mock.Anything, spaceID, envID).Return(&environments.Environment{ID: envID, SpaceID: spaceID, Aliases: []string{envAlias}}, nil).Once()
 			itms.On("GetPublished", mock.Anything, spaceID, envID, colID, itemID, mock.Anything).Return(&items.Item{ID: itemID, SpaceID: spaceID, EnvID: envID, CollectionID: colID, State: items.StatePublished}, nil).Once()
@@ -568,7 +571,7 @@ func TestItemsCache(t *testing.T) {
 			itms := &itmsmocks.Items{}
 			env := &envmocks.Environments{}
 
-			svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), env)(itms)
+			svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), cacheMetrics, env)(itms)
 
 			env.On("Get", mock.Anything, spaceID, envID).Return(&environments.Environment{ID: envID, SpaceID: spaceID, Aliases: []string{envAlias}}, nil).Once()
 			itms.On("GetPublished", mock.Anything, spaceID, envID, colID, itemID, mock.Anything).Return(&items.Item{ID: itemID, SpaceID: spaceID, EnvID: envID, CollectionID: colID, State: items.StatePublished}, nil).Once()
@@ -609,7 +612,7 @@ func TestItemsCache(t *testing.T) {
 			itms := &itmsmocks.Items{}
 			env := &envmocks.Environments{}
 
-			svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), env)(itms)
+			svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), cacheMetrics, env)(itms)
 
 			env.On("Get", mock.Anything, spaceID, envID).Return(&environments.Environment{ID: envID, SpaceID: spaceID, Aliases: []string{envAlias}}, nil).Once()
 			env.On("Get", mock.Anything, spaceID, envID).Return(&environments.Environment{ID: envID, SpaceID: spaceID, Aliases: []string{envAlias}}, nil).Once()
@@ -657,7 +660,7 @@ func TestItemsCache(t *testing.T) {
 			itms := &itmsmocks.Items{}
 			env := &envmocks.Environments{}
 
-			svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), env)(itms)
+			svc := CachingMiddleware(cache.NewCache(size, ttl), cache.NewCache(size, ttl), cacheMetrics, env)(itms)
 
 			env.On("Get", mock.Anything, spaceID, envID).Return(&environments.Environment{ID: envID, SpaceID: spaceID, Aliases: []string{envAlias}}, nil).Once()
 			itms.On("Get", mock.Anything, spaceID, envID, colID, itemID).Return(&items.Item{ID: itemID, SpaceID: spaceID, EnvID: envID, CollectionID: colID, State: items.StateDraft}, nil).Once()
-- 
GitLab