Skip to content
Snippets Groups Projects
Commit ac5b5d39 authored by Semyon Krestyaninov's avatar Semyon Krestyaninov
Browse files

refactor tests and fix events

parent 5aa0842b
No related branches found
No related tags found
No related merge requests found
...@@ -53,16 +53,12 @@ func TestBufferedWriteSyncer_Write_Concurrent(t *testing.T) { ...@@ -53,16 +53,12 @@ func TestBufferedWriteSyncer_Write_Concurrent(t *testing.T) {
wg.Add(1) wg.Add(1)
go func(wg *sync.WaitGroup) { go func(wg *sync.WaitGroup) {
defer wg.Done() defer wg.Done()
require.NoError(t, ws.Write(&log.Entry{Message: "log message"}))
err := ws.Write(&log.Entry{Message: "log message"})
require.NoError(t, err)
}(&wg) }(&wg)
} }
wg.Wait() wg.Wait()
require.NoError(t, ws.Stop())
err := ws.Stop()
require.NoError(t, err)
service.AssertExpectations(t) service.AssertExpectations(t)
} }
...@@ -81,15 +77,12 @@ func TestBufferedWriteSyncer_Flush(t *testing.T) { ...@@ -81,15 +77,12 @@ func TestBufferedWriteSyncer_Flush(t *testing.T) {
for i := 0; i < 10; i++ { for i := 0; i < 10; i++ {
for j := 0; j < 10; j++ { for j := 0; j < 10; j++ {
err := ws.Write(&log.Entry{Message: "log message"}) require.NoError(t, ws.Write(&log.Entry{Message: "log message"}))
require.NoError(t, err)
} }
err := ws.Sync() require.NoError(t, ws.Sync())
require.NoError(t, err)
} }
err := ws.Stop() require.NoError(t, ws.Stop())
require.NoError(t, err)
service.AssertExpectations(t) service.AssertExpectations(t)
} }
...@@ -107,12 +100,10 @@ func TestBufferedWriteSyncer_MaxBufferSize(t *testing.T) { ...@@ -107,12 +100,10 @@ func TestBufferedWriteSyncer_MaxBufferSize(t *testing.T) {
ws := &BufferedWriteSyncer{Service: service, MaxBufferSize: 10} ws := &BufferedWriteSyncer{Service: service, MaxBufferSize: 10}
for i := 0; i < 100; i++ { for i := 0; i < 100; i++ {
err := ws.Write(&log.Entry{Message: "log message"}) require.NoError(t, ws.Write(&log.Entry{Message: "log message"}))
require.NoError(t, err)
} }
err := ws.Stop() require.NoError(t, ws.Stop())
require.NoError(t, err)
service.AssertExpectations(t) service.AssertExpectations(t)
} }
...@@ -130,14 +121,11 @@ func TestBufferedWriteSyncer_FlushInterval(t *testing.T) { ...@@ -130,14 +121,11 @@ func TestBufferedWriteSyncer_FlushInterval(t *testing.T) {
ws := &BufferedWriteSyncer{Service: service, FlushInterval: time.Second} ws := &BufferedWriteSyncer{Service: service, FlushInterval: time.Second}
for j := 0; j < 10; j++ { for j := 0; j < 10; j++ {
err := ws.Write(&log.Entry{Message: "log message"}) require.NoError(t, ws.Write(&log.Entry{Message: "log message"}))
require.NoError(t, err)
} }
time.Sleep(3 * time.Second) // ждем, пока сработает интервал time.Sleep(3 * time.Second) // ждем, пока сработает интервал
require.NoError(t, ws.Stop())
err := ws.Stop()
require.NoError(t, err)
service.AssertExpectations(t) service.AssertExpectations(t)
} }
...@@ -5,7 +5,7 @@ import ( ...@@ -5,7 +5,7 @@ import (
"git.perx.ru/perxis/perxis-go/id" "git.perx.ru/perxis/perxis-go/id"
"git.perx.ru/perxis/perxis-go/log" "git.perx.ru/perxis/perxis-go/log"
zap2 "git.perx.ru/perxis/perxis-go/zap" logzap "git.perx.ru/perxis/perxis-go/zap"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"go.uber.org/zap" "go.uber.org/zap"
"go.uber.org/zap/zapcore" "go.uber.org/zap/zapcore"
...@@ -31,13 +31,13 @@ func TestCore_getEntry(t *testing.T) { ...@@ -31,13 +31,13 @@ func TestCore_getEntry(t *testing.T) {
entry: zapcore.Entry{Level: zapcore.InfoLevel, Message: "создан элемент коллекции"}, entry: zapcore.Entry{Level: zapcore.InfoLevel, Message: "создан элемент коллекции"},
fields: []zapcore.Field{ fields: []zapcore.Field{
zap.String("key", "val"), // будет проигнорировано zap.String("key", "val"), // будет проигнорировано
zap2.Category("create"), logzap.Category("create"),
zap2.Component("Items.Service"), logzap.Component("Items.Service"),
zap2.Event("Items.Create"), logzap.Event("Items.Create"),
zap2.Object("/spaces/WPNN/envs/9VGP/cols/GxNv/items/W0fl"), logzap.Object("/spaces/WPNN/envs/9VGP/cols/GxNv/items/W0fl"),
zap2.Caller("/users/PHVz"), logzap.Caller("/users/PHVz"),
zap2.Attr("any"), logzap.Attr("any"),
zap2.Tags("tag1", "tag2", "tag3"), logzap.Tags("tag1", "tag2", "tag3"),
}, },
}, },
want: &log.Entry{ want: &log.Entry{
......
...@@ -13,7 +13,7 @@ import ( ...@@ -13,7 +13,7 @@ import (
"git.perx.ru/perxis/perxis-go/pkg/items" "git.perx.ru/perxis/perxis-go/pkg/items"
"git.perx.ru/perxis/perxis-go/pkg/users" "git.perx.ru/perxis/perxis-go/pkg/users"
usersmocks "git.perx.ru/perxis/perxis-go/pkg/users/mocks" usersmocks "git.perx.ru/perxis/perxis-go/pkg/users/mocks"
zap2 "git.perx.ru/perxis/perxis-go/zap" logzap "git.perx.ru/perxis/perxis-go/zap"
"github.com/stretchr/testify/mock" "github.com/stretchr/testify/mock"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"go.uber.org/zap" "go.uber.org/zap"
...@@ -29,7 +29,7 @@ func TestExample(t *testing.T) { ...@@ -29,7 +29,7 @@ func TestExample(t *testing.T) {
LogLevel: log.Level(zapcore.InfoLevel), LogLevel: log.Level(zapcore.InfoLevel),
Message: "Successfully created", Message: "Successfully created",
Component: "Items", Component: "Items",
Event: items.EventCreateItem, Event: items.EventItemCreate,
ObjectID: id.MustObjectId(item), ObjectID: id.MustObjectId(item),
CallerID: id.MustObjectId(user), CallerID: id.MustObjectId(user),
Tags: []string{"tag1", "tag2", "tag3"}, Tags: []string{"tag1", "tag2", "tag3"},
...@@ -38,7 +38,7 @@ func TestExample(t *testing.T) { ...@@ -38,7 +38,7 @@ func TestExample(t *testing.T) {
LogLevel: log.Level(zapcore.WarnLevel), LogLevel: log.Level(zapcore.WarnLevel),
Message: "Successfully updated", Message: "Successfully updated",
Component: "Items", Component: "Items",
Event: items.EventUpdateItem, Event: items.EventItemUpdate,
ObjectID: id.MustObjectId(item), ObjectID: id.MustObjectId(item),
CallerID: id.MustObjectId(user), CallerID: id.MustObjectId(user),
Attr: map[string]map[string]any{"title": {"old": "old title", "new": "new title"}}, Attr: map[string]map[string]any{"title": {"old": "old title", "new": "new title"}},
...@@ -70,23 +70,23 @@ func TestExample(t *testing.T) { ...@@ -70,23 +70,23 @@ func TestExample(t *testing.T) {
// Пример отправки логов для сервиса Items // Пример отправки логов для сервиса Items
{ {
logger := logger.With(zap2.Component("Items")) logger := logger.With(logzap.Component("Items"))
ctx := auth.WithPrincipal(context.Background(), factory.User("74d90aaf")) ctx := auth.WithPrincipal(context.Background(), factory.User("74d90aaf"))
// Отправка лога при создании item // Отправка лога при создании item
logger.Info("Successfully created", logger.Info("Successfully created",
zap2.Event(items.EventCreateItem), logzap.Event(items.EventItemCreate),
zap2.Object(item), logzap.Object(item),
zap2.CallerFromContext(ctx), logzap.CallerFromContext(ctx),
zap2.Tags("tag1", "tag2", "tag3"), logzap.Tags("tag1", "tag2", "tag3"),
) )
// Отправка лога при обновлении item // Отправка лога при обновлении item
logger.Warn("Successfully updated", logger.Warn("Successfully updated",
zap2.Event(items.EventUpdateItem), logzap.Event(items.EventItemUpdate),
zap2.Object(item), logzap.Object(item),
zap2.CallerFromContext(ctx), logzap.CallerFromContext(ctx),
zap2.Attr(map[string]map[string]any{"title": {"old": "old title", "new": "new title"}}), logzap.Attr(map[string]map[string]any{"title": {"old": "old title", "new": "new title"}}),
) )
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment