/
githubmirror
/
client
Обзор
Документация
Войти
/
githubmirror
/
client
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
go/chat/globals/context_test.go
41 строка
1002 B
chrisnojima-zoom
Version 670 - clean2 (#29122)
08 июн 2026, 19:31
Не верифицирован
08 июн 2026, 19:31
1943197
Код
Авторство
О чём код?
package globals import ( "context" "testing" "github.com/keybase/client/go/chat/types" "github.com/keybase/client/go/externalstest" "github.com/keybase/client/go/protocol/chat1" "github.com/keybase/client/go/protocol/keybase1" "github.com/stretchr/testify/require" "golang.org/x/sync/errgroup" ) func TestConcurrentContext(t *testing.T) { tc := externalstest.SetupTest(t, "Context", 1) defer tc.Cleanup() g := NewContext(tc.G, &ChatContext{ CtxFactory: types.DummyCtxFactory{}, }) ctx := ChatCtx(context.TODO(), g, keybase1.TLFIdentifyBehavior_CHAT_CLI, nil, nil) convID := chat1.ConversationID([]byte("deadbeef")) eg := errgroup.Group{} for range 5 { eg.Go(func() error { for range 50 { CtxAddMessageCacheSkips(ctx, convID, []chat1.MessageUnboxed{ // drop two empty msgs in {}, {}, }) } return nil }) } err := eg.Wait() require.NoError(t, err) res := CtxMessageCacheSkips(ctx) require.Len(t, res, 1) require.Len(t, res[0].Msgs, 5*50*2) }