api.sendTimeout = 50 * time.Millisecond
start := time.Now()
err := tc.send(t.Context(), api)
- require.ErrorIs(t, err, errTelegramNetwork)
+ require.EqualError(t, err, "no answer in 50ms")
require.Less(t, time.Since(start), 5*time.Second)
require.NotContains(t, err.Error(), telegramTestToken)
require.NotContains(t, err.Error(), server.URL)
}
},
retry: true,
- errorText: "no valid answer",
+ errorText: "no answer",
},
{
name: "rate limit waits as asked",
},
retry: true,
wait: 3 * time.Second,
- errorText: "answered 429",
+ errorText: "429",
},
{
name: "server error page is retried",
_, _ = io.WriteString(w, "<html>bad gateway</html>")
},
retry: true,
- errorText: "answered 502: Bad Gateway",
+ errorText: "502 Bad Gateway",
},
{
name: "token echoed in a description is hidden",
},
retry: false,
rejected: true,
- errorText: "answered 400: Bad Request: can't parse",
+ errorText: "400 Bad Request: can't parse",
},
{
name: "unknown method is a refusal",
},
retry: false,
rejected: true,
- errorText: "answered 404: Not Found",
+ errorText: "404 Not Found",
},
{
name: "not found page of a proxy is not a refusal",
_, _ = io.WriteString(w, "<html>not found</html>")
},
retry: false,
- errorText: "answered 404: Not Found",
+ errorText: "404 Not Found",
},
{
name: "broken answer is retried",
_, _ = io.WriteString(w, `{"ok":`)
},
retry: true,
- errorText: "decode answer",
+ errorText: "invalid JSON",
},
}
server.Close()
_, err := newTelegramAPI(server.URL, telegramTestToken).GetUpdates(t.Context(), 0)
- require.ErrorIs(t, err, errTelegramNetwork)
+ require.ErrorAs(t, err, new(*TelegramNetworkError))
require.NotContains(t, err.Error(), telegramTestToken)
}