test(e2e): log service warnings and give search indexing more time
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
2285107d04
commit
4cca427b82
1 file changed
+5
-2
@@ -90,7 +90,7 @@ func (c *client) ok(method, path string, body, out any) {
|
||||
// eventually повторяет проверку до таймаута (скан, индексация поиска — фоновые).
|
||||
func eventually(t *testing.T, what string, fn func() bool) {
|
||||
t.Helper()
|
||||
deadline := time.Now().Add(30 * time.Second)
|
||||
deadline := time.Now().Add(60 * time.Second)
|
||||
for time.Now().Before(deadline) {
|
||||
if fn() {
|
||||
return
|
||||
@@ -157,7 +157,9 @@ func TestUserJourney(t *testing.T) {
|
||||
rdb := redis.NewClient(opts)
|
||||
defer func() { _ = rdb.Close() }()
|
||||
|
||||
handler, err := newApp(ctx, cfg, pool, rdb, slog.New(slog.DiscardHandler), fakeProber{})
|
||||
// Предупреждения и ошибки сервиса — в вывод теста: по ним видно, почему шаг не прошёл.
|
||||
logger := slog.New(slog.NewTextHandler(os.Stderr, &slog.HandlerOptions{Level: slog.LevelWarn}))
|
||||
handler, err := newApp(ctx, cfg, pool, rdb, logger, fakeProber{})
|
||||
require.NoError(t, err)
|
||||
srv := httptest.NewServer(handler)
|
||||
defer srv.Close()
|
||||
@@ -210,6 +212,7 @@ func TestUserJourney(t *testing.T) {
|
||||
Tracks []track `json:"tracks"`
|
||||
}
|
||||
eventually(t, "search index", func() bool {
|
||||
time.Sleep(time.Second)
|
||||
return c.call("GET", "/api/v1/search?q="+url.QueryEscape("кино"), nil, &found) == 200 && len(found.Albums) == 1
|
||||
})
|
||||
|
||||
|
||||
Reference in new issue
Block a user