/
t3
/
cli
Обзор
Документация
Войти
/
t3
/
cli
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
master
test/memusage_test.go
57 строк
1 KB
Ivan Shibkikh
http client
06 июл 2026, 16:33
06 июл 2026, 16:33
d48ab08
Код
Авторство
О чём код?
package test import ( "fmt" "log/slog" "os" goruntime "runtime" "testing" "github.com/dop251/goja" "gitverse.ru/t3/cli/internal/engine" "gitverse.ru/t3/cli/internal/pool" "gitverse.ru/t3/cli/pkg/console/output" ) func TestMemUsage(t *testing.T) { logger := output.NewLogger(os.Stdout, slog.LevelDebug) var before goruntime.MemStats goruntime.GC() goruntime.ReadMemStats(&before) script, err := os.ReadFile("../../helloworld/output/bundle.js") if err != nil { t.Fatal(err) } const N = 100 en, err := engine.NewEngine(script) if err != nil { t.Fatal(err) } users := make([]*pool.User, 0, N) for range N { user, err := pool.NewUser(int64(len(users)+1), logger, en, map[string]any{"token": "golang"}, nil, nil, nil, goja.Undefined(), 0, 0, nil) if err != nil { t.Fatal(err) } users = append(users, user) } for _, user := range users { user.RunOnce() } var after goruntime.MemStats goruntime.ReadMemStats(&after) fmt.Printf("Alloc diff: %d KB\n", (after.Alloc-before.Alloc)/1024) fmt.Printf("HeapAlloc: %d KB\n", (after.HeapAlloc-before.HeapAlloc)/1024) fmt.Printf("TotalAlloc: %d KB\n", (after.TotalAlloc-before.TotalAlloc)/1024) }