mirror of
https://github.com/diamondburned/arikawa.git
synced 2025-04-15 17:55:21 +00:00
Gateway: Test Reconnect error
This commit is contained in:
parent
ebc74e3168
commit
728bc5c472
|
@ -39,16 +39,16 @@ func TestURL(t *testing.T) {
|
||||||
func TestInvalidToken(t *testing.T) {
|
func TestInvalidToken(t *testing.T) {
|
||||||
g, err := NewGateway("bad token")
|
g, err := NewGateway("bad token")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatal("Failed to make a Gateway:", err)
|
t.Fatal("failed to make a Gateway:", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
if err = g.Open(); err == nil {
|
if err = g.Open(); err == nil {
|
||||||
t.Fatal("Unexpected success while opening with a bad token.")
|
t.Fatal("unexpected success while opening with a bad token.")
|
||||||
}
|
}
|
||||||
|
|
||||||
// 4004 Authentication Failed.
|
// 4004 Authentication Failed.
|
||||||
if !strings.Contains(err.Error(), "4004") {
|
if !strings.Contains(err.Error(), "4004") {
|
||||||
t.Fatal("Unexpected error:", err)
|
t.Fatal("unexpected error:", err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -64,26 +64,26 @@ func TestIntegration(t *testing.T) {
|
||||||
// NewGateway should call Start for us.
|
// NewGateway should call Start for us.
|
||||||
g, err := NewGateway("Bot " + config.BotToken)
|
g, err := NewGateway("Bot " + config.BotToken)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatal("Failed to make a Gateway:", err)
|
t.Fatal("failed to make a Gateway:", err)
|
||||||
}
|
}
|
||||||
g.AddIntents(IntentGuilds)
|
g.AddIntents(IntentGuilds)
|
||||||
g.AfterClose = func(err error) {
|
g.AfterClose = func(err error) {
|
||||||
t.Log("Closed.")
|
t.Log("closed.")
|
||||||
}
|
}
|
||||||
gateway = g
|
gateway = g
|
||||||
|
|
||||||
if err := g.Open(); err != nil {
|
if err := g.Open(); err != nil {
|
||||||
t.Fatal("Failed to authenticate with Discord:", err)
|
t.Fatal("failed to authenticate with Discord:", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
ev := wait(t, gateway.Events)
|
ev := wait(t, gateway.Events)
|
||||||
ready, ok := ev.(*ReadyEvent)
|
ready, ok := ev.(*ReadyEvent)
|
||||||
if !ok {
|
if !ok {
|
||||||
t.Fatal("Event received is not of type Ready:", ev)
|
t.Fatal("event received is not of type Ready:", ev)
|
||||||
}
|
}
|
||||||
|
|
||||||
if gateway.SessionID() == "" {
|
if gateway.SessionID() == "" {
|
||||||
t.Fatal("Session ID is empty")
|
t.Fatal("session ID is empty")
|
||||||
}
|
}
|
||||||
|
|
||||||
log.Println("Bot's username is", ready.User.Username)
|
log.Println("Bot's username is", ready.User.Username)
|
||||||
|
@ -100,10 +100,12 @@ func TestIntegration(t *testing.T) {
|
||||||
defer cancel()
|
defer cancel()
|
||||||
|
|
||||||
g.ErrorLog = func(err error) {
|
g.ErrorLog = func(err error) {
|
||||||
t.Fatal("Unexpected error while reconnecting:", err)
|
t.Error("unexpected error while reconnecting:", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
gateway.ReconnectCtx(ctx)
|
if err := gateway.ReconnectCtx(ctx); err != nil {
|
||||||
|
t.Error("failed to reconnect Gateway:", err)
|
||||||
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
g.ErrorLog = func(err error) { log.Println(err) }
|
g.ErrorLog = func(err error) { log.Println(err) }
|
||||||
|
@ -122,7 +124,7 @@ func TestIntegration(t *testing.T) {
|
||||||
})
|
})
|
||||||
|
|
||||||
if err := g.Close(); err != nil {
|
if err := g.Close(); err != nil {
|
||||||
t.Fatal("Failed to close Gateway:", err)
|
t.Fatal("failed to close Gateway:", err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -131,7 +133,7 @@ func wait(t *testing.T, evCh chan interface{}) interface{} {
|
||||||
case ev := <-evCh:
|
case ev := <-evCh:
|
||||||
return ev
|
return ev
|
||||||
case <-time.After(20 * time.Second):
|
case <-time.After(20 * time.Second):
|
||||||
t.Fatal("Timed out waiting for event")
|
t.Fatal("timed out waiting for event")
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -147,7 +149,7 @@ func gotimeout(t *testing.T, fn func()) {
|
||||||
|
|
||||||
select {
|
select {
|
||||||
case <-time.After(20 * time.Second):
|
case <-time.After(20 * time.Second):
|
||||||
t.Fatal("Timed out waiting for function.")
|
t.Fatal("timed out waiting for function.")
|
||||||
case <-done:
|
case <-done:
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue