From d71a43192fba809a08e2201de75e9da16aa80dcf Mon Sep 17 00:00:00 2001 From: Bruce Marriner Date: Mon, 11 Jan 2016 12:04:42 -0600 Subject: [PATCH] Renamed to match source --- discordgo_test.go => discord_test.go | 0 tests/discordgo_test.go | 173 --------------------------- 2 files changed, 173 deletions(-) rename discordgo_test.go => discord_test.go (100%) delete mode 100644 tests/discordgo_test.go diff --git a/discordgo_test.go b/discord_test.go similarity index 100% rename from discordgo_test.go rename to discord_test.go diff --git a/tests/discordgo_test.go b/tests/discordgo_test.go deleted file mode 100644 index 3b0acb1..0000000 --- a/tests/discordgo_test.go +++ /dev/null @@ -1,173 +0,0 @@ -package discordgo_test - -import ( - "os" - "runtime" - "testing" - "time" - - . "github.com/bwmarrin/discordgo" -) - -////////////////////////////////////////////////////////////////////////////// -////////////////////////////////////////////////////// VARS NEEDED FOR TESTING -var ( - dg *Session // Stores global discordgo session - - envToken string = os.Getenv("DG_TOKEN") // Token to use when authenticating - envUsername string = os.Getenv("DG_USERNAME") // Username to use when authenticating - envPassword string = os.Getenv("DG_PASSWORD") // Password to use when authenticating - envGuild string = os.Getenv("DG_GUILD") // Guild ID to use for tests - envChannel string = os.Getenv("DG_CHANNEL") // Channel ID to use for tests - envUser string = os.Getenv("DG_USER") // User ID to use for tests - envAdmin string = os.Getenv("DG_ADMIN") // User ID of admin user to use for tests -) - -////////////////////////////////////////////////////////////////////////////// -//////////////////////////////////////////// HELPER FUNCTIONS USED FOR TESTING - -// This waits x time for the check bool to be the want bool -func waitBoolEqual(timeout time.Duration, check *bool, want bool) bool { - - start := time.Now() - for { - if *check == want { - return true - } - - if time.Since(start) > timeout { - return false - } - - runtime.Gosched() - } -} - -// Checks if we're connected to Discord -func isConnected() bool { - - if dg == nil { - return false - } - - if dg.Token == "" { - return false - } - - // Need a way to see if the ws connection is nil - - if !waitBoolEqual(10*time.Second, &dg.DataReady, true) { - return false - } - - return true -} - -////////////////////////////////////////////////////////////////////////////// -/////////////////////////////////////////////////////////////// START OF TESTS - -// TestNew tests the New() function without any arguments. This should return -// a valid Session{} struct and no errors. -func TestNew(t *testing.T) { - - _, err := New() - if err != nil { - t.Errorf("New() returned error: %+v", err) - } -} - -// TestInvalidToken tests the New() function with an invalid token -func TestInvalidToken(t *testing.T) { - - _, err := New("asjkldhflkjasdh") - if err == nil { - t.Errorf("New(InvalidToken) returned nil error.") - } - -} - -// TestInvalidUserPass tests the New() function with an invalid Email and Pass -func TestInvalidEmailPass(t *testing.T) { - - _, err := New("invalidemail", "invalidpassword") - if err == nil { - t.Errorf("New(InvalidEmail, InvalidPass) returned nil error.") - } - -} - -// TestInvalidPass tests the New() function with an invalid Password -func TestInvalidPass(t *testing.T) { - - if envUsername == "" { - t.Skip("Skipping New(username,InvalidPass), DG_USERNAME not set") - return - } - _, err := New(envUsername, "invalidpassword") - if err == nil { - t.Errorf("New(Email, InvalidPass) returned nil error.") - } -} - -// TestNewUserPass tests the New() function with a username and password. -// This should return a valid Session{}, a valid Session.Token, and open -// a websocket connection to Discord. -func TestNewUserPass(t *testing.T) { - - if envUsername == "" || envPassword == "" { - t.Skip("Skipping New(username,password), DG_USERNAME or DG_PASSWORD not set") - return - } - - d, err := New(envUsername, envPassword) - if err != nil { - t.Fatalf("New(user,pass) returned error: %+v", err) - } - - if d == nil { - t.Fatal("New(user,pass), d is nil, should be Session{}") - } - - if d.Token == "" { - t.Fatal("New(user,pass), d.Token is empty, should be a valid Token.") - } - - if !waitBoolEqual(10*time.Second, &d.DataReady, true) { - t.Fatal("New(user,pass), d.DataReady is false after 10 seconds. Should be true.") - } - - t.Log("Successfully connected to Discord via New(user,pass).") - dg = d - - // Not testing yet. -} - -// TestNewToken tests the New() function with a Token. This should return -// the same as the TestNewUserPass function. -func TestNewToken(t *testing.T) { - - if envToken == "" { - t.Skip("Skipping New(token), DG_TOKEN not set") - } - - d, err := New(envToken) - if err != nil { - t.Fatalf("New(envToken) returned error: %+v", err) - } - - if d == nil { - t.Fatal("New(envToken), d is nil, should be Session{}") - } - - if d.Token == "" { - t.Fatal("New(envToken), d.Token is empty, should be a valid Token.") - } - - if !waitBoolEqual(10*time.Second, &d.DataReady, true) { - t.Fatal("New(envToken), d.DataReady is false after 10 seconds. Should be true.") - } - - t.Log("Successfully connected to Discord via New(token).") - dg = d - -}