From 4b2befa93a05820fffa45c3205fe2ae4277f90fd Mon Sep 17 00:00:00 2001 From: Christopher F Date: Sat, 9 Jul 2016 00:28:03 -0400 Subject: [PATCH] Update Tests to new Discord.Net 1.0 --- Discord.Net.sln | 8 +- .../Discord.Net.Tests.csproj | 8 +- .../{Rest => }/Framework/EndpointHandler.cs | 2 +- .../{Rest => }/Framework/Serializer.cs | 2 +- .../{Rest => }/Framework/TestRestClient.cs | 19 +- .../Responses/Guilds/GuildHandlers.cs | 2 +- .../Responses/Guilds/Guild_Mocks.cs | 20 +- .../Responses/Guilds/Member_Mocks.cs | 19 +- .../Responses/Roles/Role_Mocks.cs | 30 ++ .../Responses/Users/UserHandlers.cs | 2 +- .../{Rest => }/Responses/Users/User_Mocks.cs | 34 +- test/Discord.Net.Tests/Rest/GuildTests.cs | 49 +-- test/Discord.Net.Tests/Rest/LoginTests.cs | 20 +- .../Rest/Responses/Roles/Role_Mocks.cs | 23 -- test/Discord.Net.Tests/Rest/UserTests.cs | 15 +- test/Discord.Net.Tests/Tests.cs | 331 +++++++++--------- 16 files changed, 319 insertions(+), 265 deletions(-) rename test/Discord.Net.Tests/{Rest => }/Framework/EndpointHandler.cs (98%) rename test/Discord.Net.Tests/{Rest => }/Framework/Serializer.cs (97%) rename test/Discord.Net.Tests/{Rest => }/Framework/TestRestClient.cs (57%) rename test/Discord.Net.Tests/{Rest => }/Responses/Guilds/GuildHandlers.cs (97%) rename test/Discord.Net.Tests/{Rest => }/Responses/Guilds/Guild_Mocks.cs (81%) rename test/Discord.Net.Tests/{Rest => }/Responses/Guilds/Member_Mocks.cs (74%) create mode 100644 test/Discord.Net.Tests/Responses/Roles/Role_Mocks.cs rename test/Discord.Net.Tests/{Rest => }/Responses/Users/UserHandlers.cs (97%) rename test/Discord.Net.Tests/{Rest => }/Responses/Users/User_Mocks.cs (63%) delete mode 100644 test/Discord.Net.Tests/Rest/Responses/Roles/Role_Mocks.cs diff --git a/Discord.Net.sln b/Discord.Net.sln index 11960606b..81609774d 100644 --- a/Discord.Net.sln +++ b/Discord.Net.sln @@ -1,12 +1,14 @@  Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 14 -VisualStudioVersion = 14.0.25123.0 +VisualStudioVersion = 14.0.25420.1 MinimumVisualStudioVersion = 10.0.40219.1 Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Discord.Net", "src\Discord.Net\Discord.Net.xproj", "{91E9E7BD-75C9-4E98-84AA-2C271922E5C2}" EndProject Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Discord.Net.Commands", "src\Discord.Net.Commands\Discord.Net.Commands.xproj", "{078DD7E6-943D-4D09-AFC2-D2BA58B76C9C}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Discord.Net.Tests", "test\Discord.Net.Tests\Discord.Net.Tests.csproj", "{855D6B1D-847B-42DA-BE6A-23683EA89511}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -21,6 +23,10 @@ Global {078DD7E6-943D-4D09-AFC2-D2BA58B76C9C}.Debug|Any CPU.Build.0 = Debug|Any CPU {078DD7E6-943D-4D09-AFC2-D2BA58B76C9C}.Release|Any CPU.ActiveCfg = Release|Any CPU {078DD7E6-943D-4D09-AFC2-D2BA58B76C9C}.Release|Any CPU.Build.0 = Release|Any CPU + {855D6B1D-847B-42DA-BE6A-23683EA89511}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {855D6B1D-847B-42DA-BE6A-23683EA89511}.Debug|Any CPU.Build.0 = Debug|Any CPU + {855D6B1D-847B-42DA-BE6A-23683EA89511}.Release|Any CPU.ActiveCfg = Release|Any CPU + {855D6B1D-847B-42DA-BE6A-23683EA89511}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/test/Discord.Net.Tests/Discord.Net.Tests.csproj b/test/Discord.Net.Tests/Discord.Net.Tests.csproj index 3718f94f3..9e6be223d 100644 --- a/test/Discord.Net.Tests/Discord.Net.Tests.csproj +++ b/test/Discord.Net.Tests/Discord.Net.Tests.csproj @@ -37,7 +37,7 @@ - ..\..\src\Discord.Net\bin\Debug\Discord.Net.dll + ..\..\src\Discord.Net\bin\Debug\netstandard1.3\Discord.Net.dll ..\..\packages\Newtonsoft.Json.8.0.2\lib\net45\Newtonsoft.Json.dll @@ -76,6 +76,12 @@ + + + {078dd7e6-943d-4d09-afc2-d2ba58b76c9c} + Discord.Net.Commands + + diff --git a/test/Discord.Net.Tests/Rest/Framework/EndpointHandler.cs b/test/Discord.Net.Tests/Framework/EndpointHandler.cs similarity index 98% rename from test/Discord.Net.Tests/Rest/Framework/EndpointHandler.cs rename to test/Discord.Net.Tests/Framework/EndpointHandler.cs index 948e7fab0..459206a08 100644 --- a/test/Discord.Net.Tests/Rest/Framework/EndpointHandler.cs +++ b/test/Discord.Net.Tests/Framework/EndpointHandler.cs @@ -1,7 +1,7 @@ using System; using System.Collections.Generic; -namespace Discord.Tests.Rest +namespace Discord.Tests.Framework { public class EndpointHandler { diff --git a/test/Discord.Net.Tests/Rest/Framework/Serializer.cs b/test/Discord.Net.Tests/Framework/Serializer.cs similarity index 97% rename from test/Discord.Net.Tests/Rest/Framework/Serializer.cs rename to test/Discord.Net.Tests/Framework/Serializer.cs index 820fc96f0..876ca135e 100644 --- a/test/Discord.Net.Tests/Rest/Framework/Serializer.cs +++ b/test/Discord.Net.Tests/Framework/Serializer.cs @@ -8,7 +8,7 @@ using System.Text; using System.Threading.Tasks; using System.Globalization; -namespace Discord.Tests.Rest +namespace Discord.Tests.Framework { public class Json { diff --git a/test/Discord.Net.Tests/Rest/Framework/TestRestClient.cs b/test/Discord.Net.Tests/Framework/TestRestClient.cs similarity index 57% rename from test/Discord.Net.Tests/Rest/Framework/TestRestClient.cs rename to test/Discord.Net.Tests/Framework/TestRestClient.cs index 620f55b4e..bdba451cf 100644 --- a/test/Discord.Net.Tests/Rest/Framework/TestRestClient.cs +++ b/test/Discord.Net.Tests/Framework/TestRestClient.cs @@ -3,34 +3,43 @@ using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; -using Discord.Rest; +using Discord; using Discord.Net.Rest; using System.Threading; using System.IO; -namespace Discord.Tests.Rest +namespace Discord.Tests.Framework { class TestRestClient : IRestClient { public static Dictionary Headers = new Dictionary(); - public TestRestClient(string baseUrl, CancellationToken cancelToken) + public TestRestClient(string baseUrl) { + } + Task IRestClient.SendAsync(string method, string endpoint, bool headerOnly = false) + { + if (headerOnly) return null; + return Task.FromResult(new MemoryStream(Encoding.UTF8.GetBytes(EndpointHandler.Instance.HandleMessage(method, endpoint, "")))); } - Task IRestClient.Send(string method, string endpoint, IReadOnlyDictionary multipartParams, bool headerOnly = false) + Task IRestClient.SendAsync(string method, string endpoint, IReadOnlyDictionary multipartParams, bool headerOnly = false) { if (headerOnly) return null; throw new NotImplementedException("method only used for SendFile, not concerned with that yet."); } - Task IRestClient.Send(string method, string endpoint, string json, bool headerOnly = false) + Task IRestClient.SendAsync(string method, string endpoint, string json, bool headerOnly = false) { if (headerOnly) return null; return Task.FromResult(new MemoryStream(Encoding.UTF8.GetBytes(EndpointHandler.Instance.HandleMessage(method, endpoint, json)))); } + void IRestClient.SetCancelToken(CancellationToken cancelToken) + { + } + void IRestClient.SetHeader(string key, string value) { if (Headers.ContainsKey(key)) diff --git a/test/Discord.Net.Tests/Rest/Responses/Guilds/GuildHandlers.cs b/test/Discord.Net.Tests/Responses/Guilds/GuildHandlers.cs similarity index 97% rename from test/Discord.Net.Tests/Rest/Responses/Guilds/GuildHandlers.cs rename to test/Discord.Net.Tests/Responses/Guilds/GuildHandlers.cs index 66f5cdfc2..f090d7b23 100644 --- a/test/Discord.Net.Tests/Rest/Responses/Guilds/GuildHandlers.cs +++ b/test/Discord.Net.Tests/Responses/Guilds/GuildHandlers.cs @@ -7,7 +7,7 @@ using System.Net; using System.Text; using System.Threading.Tasks; -namespace Discord.Tests.Rest.Responses.Guilds +namespace Discord.Tests.Framework.Responses.Guilds { public static class GuildHandlers { diff --git a/test/Discord.Net.Tests/Rest/Responses/Guilds/Guild_Mocks.cs b/test/Discord.Net.Tests/Responses/Guilds/Guild_Mocks.cs similarity index 81% rename from test/Discord.Net.Tests/Rest/Responses/Guilds/Guild_Mocks.cs rename to test/Discord.Net.Tests/Responses/Guilds/Guild_Mocks.cs index 981dc7c06..8480656a6 100644 --- a/test/Discord.Net.Tests/Rest/Responses/Guilds/Guild_Mocks.cs +++ b/test/Discord.Net.Tests/Responses/Guilds/Guild_Mocks.cs @@ -6,11 +6,13 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Discord.Tests.Rest.Responses.Guilds +namespace Discord.Tests.Framework.Responses.Guilds { public static class Guild_Mocks { - public static Guild Guild_From_Id { get + public static Guild Guild_From_Id + { + get { return new Guild { @@ -25,15 +27,18 @@ namespace Discord.Tests.Rest.Responses.Guilds EmbedEnabled = true, EmbedChannelId = null, VerificationLevel = 0, - Roles = new Role[] {Roles.Constant_Role_Mocks.Mock_Everyone_Role}, + Roles = new Role[] { Roles.Constant_Role_Mocks.Mock_Everyone_Role }, }; - } } + } + } public static IEnumerable GuildBansList => new List { Users.User_Mocks.Bot_User, Users.User_Mocks.Me_User }; - public static IEnumerable UserGuildsList() => new List{ User_Guild_1, User_Guild_2 }; + public static IEnumerable UserGuildsList() => new List { User_Guild_1, User_Guild_2 }; - public static UserGuild User_Guild_1 { get + public static UserGuild User_Guild_1 + { + get { return new UserGuild { @@ -43,7 +48,8 @@ namespace Discord.Tests.Rest.Responses.Guilds Owner = false, Permissions = 103926785 }; - } } + } + } public static UserGuild User_Guild_2 { diff --git a/test/Discord.Net.Tests/Rest/Responses/Guilds/Member_Mocks.cs b/test/Discord.Net.Tests/Responses/Guilds/Member_Mocks.cs similarity index 74% rename from test/Discord.Net.Tests/Rest/Responses/Guilds/Member_Mocks.cs rename to test/Discord.Net.Tests/Responses/Guilds/Member_Mocks.cs index 0fad0af1b..42bac5f41 100644 --- a/test/Discord.Net.Tests/Rest/Responses/Guilds/Member_Mocks.cs +++ b/test/Discord.Net.Tests/Responses/Guilds/Member_Mocks.cs @@ -5,25 +5,31 @@ using System.Text; using System.Threading.Tasks; using Discord.API; -namespace Discord.Tests.Rest.Responses.Guilds +namespace Discord.Tests.Framework.Responses.Guilds { public static class Member_Mocks { public static IEnumerable Guild_Members => new List { Guild_Member_1, Guild_Member_2 }; - public static GuildMember Guild_Member_1 { get { + public static GuildMember Guild_Member_1 + { + get + { return new GuildMember() { User = Users.User_Mocks.Me_User, - Nick = "Voltamom", + Nick = "voltana", JoinedAt = new DateTime(2009, 4, 19), Deaf = true, Mute = false, Roles = new ulong[] { 1UL } }; - } } + } + } - public static GuildMember Guild_Member_2 { get + public static GuildMember Guild_Member_2 + { + get { return new GuildMember() { @@ -31,6 +37,7 @@ namespace Discord.Tests.Rest.Responses.Guilds Nick = "foxbot", JoinedAt = new DateTime(2016, 5, 5), }; - } } + } + } } } diff --git a/test/Discord.Net.Tests/Responses/Roles/Role_Mocks.cs b/test/Discord.Net.Tests/Responses/Roles/Role_Mocks.cs new file mode 100644 index 000000000..82d0c4739 --- /dev/null +++ b/test/Discord.Net.Tests/Responses/Roles/Role_Mocks.cs @@ -0,0 +1,30 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Discord.API; + +namespace Discord.Tests.Framework.Responses.Roles +{ + public static class Constant_Role_Mocks + { + public static Role Mock_Everyone_Role + { + get + { + return new Role + { + Id = 66078535390867456, + Color = 0, + Position = 0, + Hoist = false, + Managed = false, + Name = "@everyone", + Permissions = 36953089 + }; + } + } + } +} diff --git a/test/Discord.Net.Tests/Rest/Responses/Users/UserHandlers.cs b/test/Discord.Net.Tests/Responses/Users/UserHandlers.cs similarity index 97% rename from test/Discord.Net.Tests/Rest/Responses/Users/UserHandlers.cs rename to test/Discord.Net.Tests/Responses/Users/UserHandlers.cs index 280d09175..4e2154023 100644 --- a/test/Discord.Net.Tests/Rest/Responses/Users/UserHandlers.cs +++ b/test/Discord.Net.Tests/Responses/Users/UserHandlers.cs @@ -4,7 +4,7 @@ using Discord.Net; using System.Net; using System; -namespace Discord.Tests.Rest.Responses.Users +namespace Discord.Tests.Framework.Responses.Users { public static class UserHandlers { diff --git a/test/Discord.Net.Tests/Rest/Responses/Users/User_Mocks.cs b/test/Discord.Net.Tests/Responses/Users/User_Mocks.cs similarity index 63% rename from test/Discord.Net.Tests/Rest/Responses/Users/User_Mocks.cs rename to test/Discord.Net.Tests/Responses/Users/User_Mocks.cs index cb236805f..71cb01c77 100644 --- a/test/Discord.Net.Tests/Rest/Responses/Users/User_Mocks.cs +++ b/test/Discord.Net.Tests/Responses/Users/User_Mocks.cs @@ -1,45 +1,55 @@ using Newtonsoft.Json; using Discord.API; -namespace Discord.Tests.Rest.Responses.Users +namespace Discord.Tests.Framework.Responses.Users { public static class User_Mocks { - public static User Me_User { get { + public static User Me_User + { + get + { return new User { Id = 66078337084162048, Username = "Voltana", - Discriminator = 0001, + Discriminator = "0001", Avatar = "ec2b259bfe24686bf9d214b6bebe0834", - IsVerified = true, + Verified = true, Email = "hello-i-am-not-real@foxbot.me" }; - } } + } + } - public static User Bot_User { get + public static User Bot_User + { + get { return new User { Id = 66078337084162048, Username = "foxboat", - Discriminator = 0005, + Discriminator = "0005", Avatar = "ec2b259bfe24686bf9d214b6bebe0834", - IsVerified = true, + Verified = true, Email = "hello-i-am-not-real@foxbot.me", Bot = true }; - } } + } + } - public static User Public_User { get + public static User Public_User + { + get { return new User { Id = 96642168176807936, Username = "Khionu", - Discriminator = 9999, + Discriminator = "9999", Avatar = "ceeff590f1e0e1ccae0afc89967131ff" }; - } } + } + } } } diff --git a/test/Discord.Net.Tests/Rest/GuildTests.cs b/test/Discord.Net.Tests/Rest/GuildTests.cs index 00f6fb65d..a9194481b 100644 --- a/test/Discord.Net.Tests/Rest/GuildTests.cs +++ b/test/Discord.Net.Tests/Rest/GuildTests.cs @@ -1,10 +1,11 @@ -using Discord.Rest; +using Discord; using Microsoft.VisualStudio.TestTools.UnitTesting; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; +using Discord.Tests.Framework; namespace Discord.Tests.Rest { @@ -12,7 +13,7 @@ namespace Discord.Tests.Rest public class GuildTests { public static TestContext Context; - private static IDiscordClient _client; + private static DiscordClient _client; [ClassInitialize] public static void Initialize(TestContext context) @@ -21,15 +22,15 @@ namespace Discord.Tests.Rest _client = new DiscordClient(new DiscordConfig() { RestClientProvider = (url, ct) => new TestRestClient(url, ct) }); if (EndpointHandler.Instance == null) EndpointHandler.Instance = new EndpointHandler(); if (Json.Serializer == null) new Json(); - Responses.Users.UserHandlers.Mode = Rest.Responses.Users.TestMode.User; - _client.Login(TokenType.User, "UserToken_Voltana").Wait(); + Framework.Responses.Users.UserHandlers.Mode = Framework.Responses.Users.TestMode.User; + _client.LoginAsync(TokenType.User, "UserToken_Voltana").GetAwaiter().GetResult(); } - + [TestMethod] [TestCategory("Guilds")] public async Task Test_Get_Guild() { - var guild = await _client.GetGuild(66078535390867456); + var guild = await _client.GetGuildAsync(66078535390867456); Assert.AreEqual(66078535390867456UL, guild.Id, "Expected ID '66078535390867456'"); Assert.AreEqual("Discord API", guild.Name, "Expected Name 'Discord API'"); // Cannot Verify Guild URL, ID not publicly exposed. @@ -44,76 +45,76 @@ namespace Discord.Tests.Rest [TestCategory("Guilds")] public async Task Test_Get_Guild_Invalid_Id() { - var guild = await _client.GetGuild(1); + var guild = await _client.GetGuildAsync(1); Assert.IsNull(guild); } [TestMethod] [TestCategory("Guilds")] public async Task Test_Get_Guilds() { - var guilds = await _client.GetGuilds(); + var guilds = await _client.GetGuildsAsync(); Assert.AreEqual(2, guilds.Count(), "Expected 2 Guilds"); } [TestMethod] [TestCategory("Guilds")] public async Task Test_Guild_Get_Bans() { - var guild = await _client.GetGuild(66078535390867456); - var bans = await guild.GetBans(); + var guild = await _client.GetGuildAsync(66078535390867456); + var bans = await guild.GetBansAsync(); Assert.AreEqual(2, bans.Count()); } [TestMethod] [TestCategory("Guilds")] public async Task Test_Guild_Get_User() { - var guild = await _client.GetGuild(66078535390867456); - var user = await guild.GetUser(66078337084162048); + var guild = await _client.GetGuildAsync(66078535390867456); + var user = await guild.GetUserAsync(66078337084162048); // TODO: Asserts } [TestMethod] [TestCategory("Guilds")] public async Task Test_Guild_Get_Invalid_User() { - var guild = await _client.GetGuild(66078535390867456); - var user = await guild.GetUser(1); + var guild = await _client.GetGuildAsync(66078535390867456); + var user = await guild.GetUserAsync(1); Assert.IsNull(user, "Expected returned user to be null"); } [TestMethod] [TestCategory("Guilds")] public async Task Test_Guild_Get_Users() { - var guild = await _client.GetGuild(66078535390867456); - var users = await guild.GetUsers(); + var guild = await _client.GetGuildAsync(66078535390867456); + var users = await guild.GetUsersAsync(); Assert.AreEqual(2, users.Count()); } [TestMethod] [TestCategory("Guilds")] public async Task Test_Guild_Get_Role() { - var guild = await _client.GetGuild(66078535390867456); - var role = await guild.GetRole(1); + var guild = await _client.GetGuildAsync(66078535390867456); + var role = guild.GetRole(1); } [TestMethod] [TestCategory("Guilds")] public async Task Test_Guild_Get_Invalid_Role() { - var guild = await _client.GetGuild(66078535390867456); - var role = await guild.GetRole(1); + var guild = await _client.GetGuildAsync(66078535390867456); + var role = guild.GetRole(1); Assert.IsNull(role, "Expected returned role to be null."); } [TestMethod] [TestCategory("Guilds")] public async Task Test_Guild_Get_Roles() { - var guild = await _client.GetGuild(66078535390867456); - var roles = await guild.GetRoles(); + var guild = await _client.GetGuildAsync(66078535390867456); + var roles = guild.Roles; } [TestMethod] [TestCategory("Guilds")] public async Task Test_Guild_Get_Invites() { - var guild = await _client.GetGuild(66078535390867456); - var invites = await guild.GetInvites(); + var guild = await _client.GetGuildAsync(66078535390867456); + var invites = await guild.GetInvitesAsync(); } } } diff --git a/test/Discord.Net.Tests/Rest/LoginTests.cs b/test/Discord.Net.Tests/Rest/LoginTests.cs index 72a23ac40..cbd2f7b31 100644 --- a/test/Discord.Net.Tests/Rest/LoginTests.cs +++ b/test/Discord.Net.Tests/Rest/LoginTests.cs @@ -4,7 +4,9 @@ using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; -using Discord.Rest; +using Discord; +using Discord.Tests.Framework; +using Discord.Tests.Framework.Responses; namespace Discord.Tests.Rest { @@ -27,31 +29,31 @@ namespace Discord.Tests.Rest [TestCategory("Login")] public async Task Test_Login_As_User() { - Responses.Users.UserHandlers.Mode = Rest.Responses.Users.TestMode.User; - await _client.Login(TokenType.User, "UserToken_Voltana"); + Framework.Responses.Users.UserHandlers.Mode = Framework.Responses.Users.TestMode.User; + await _client.LoginAsync(TokenType.User, "UserToken_Voltana"); } [TestMethod] [ExpectedException(typeof(Net.HttpException))] [TestCategory("Login")] public async Task Test_Login_As_User_With_Invalid_Token() { - Responses.Users.UserHandlers.Mode = Rest.Responses.Users.TestMode.User; - await _client.Login(TokenType.User, "UserToken-NotVoltana"); + Framework.Responses.Users.UserHandlers.Mode = Framework.Responses.Users.TestMode.User; + await _client.LoginAsync(TokenType.User, "UserToken-NotVoltana"); } [TestMethod] [TestCategory("Login")] public async Task Test_Login_As_Bot() { - Responses.Users.UserHandlers.Mode = Rest.Responses.Users.TestMode.Bot; - await _client.Login(TokenType.Bot, "UserToken_VoltanaBot"); + Framework.Responses.Users.UserHandlers.Mode = Framework.Responses.Users.TestMode.Bot; + await _client.LoginAsync(TokenType.Bot, "UserToken_VoltanaBot"); } [TestMethod] [ExpectedException(typeof(Net.HttpException))] [TestCategory("Login")] public async Task Test_Login_As_Bot_With_Invalid_Token() { - Responses.Users.UserHandlers.Mode = Rest.Responses.Users.TestMode.Bot; - await _client.Login(TokenType.Bot, "UserToken-NotVoltanaBot"); + Framework.Responses.Users.UserHandlers.Mode = Framework.Responses.Users.TestMode.Bot; + await _client.LoginAsync(TokenType.Bot, "UserToken-NotVoltanaBot"); } } } diff --git a/test/Discord.Net.Tests/Rest/Responses/Roles/Role_Mocks.cs b/test/Discord.Net.Tests/Rest/Responses/Roles/Role_Mocks.cs deleted file mode 100644 index d378b2430..000000000 --- a/test/Discord.Net.Tests/Rest/Responses/Roles/Role_Mocks.cs +++ /dev/null @@ -1,23 +0,0 @@ -using Newtonsoft.Json; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using Discord.API; - -namespace Discord.Tests.Rest.Responses.Roles -{ - public static class Constant_Role_Mocks - { - public static Role Mock_Everyone_Role { get { return new Role { - Id = 66078535390867456, - Color = 0, - Position = 0, - Hoist = false, - Managed = false, - Name = "@everyone", - Permissions = 36953089 - }; } } - } -} diff --git a/test/Discord.Net.Tests/Rest/UserTests.cs b/test/Discord.Net.Tests/Rest/UserTests.cs index 80ccc10a1..46b8d17a7 100644 --- a/test/Discord.Net.Tests/Rest/UserTests.cs +++ b/test/Discord.Net.Tests/Rest/UserTests.cs @@ -4,7 +4,8 @@ using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; -using Discord.Rest; +using Discord; +using Discord.Tests.Framework; namespace Discord.Tests.Rest { @@ -21,15 +22,15 @@ namespace Discord.Tests.Rest _client = new DiscordClient(new DiscordConfig() { RestClientProvider = (url, ct) => new TestRestClient(url, ct) }); if (EndpointHandler.Instance == null) EndpointHandler.Instance = new EndpointHandler(); if (Json.Serializer == null) new Json(); - Responses.Users.UserHandlers.Mode = Rest.Responses.Users.TestMode.User; - _client.Login(TokenType.User, "UserToken_Voltana").Wait(); + Framework.Responses.Users.UserHandlers.Mode = Framework.Responses.Users.TestMode.User; + _client.LoginAsync(TokenType.User, "UserToken_Voltana").GetAwaiter().GetResult(); } - + [TestMethod] [TestCategory("Users")] public async Task Test_Get_Current_User() { - var currentUser = await _client.GetCurrentUser(); + var currentUser = await _client.GetCurrentUserAsync(); Assert.AreEqual((UInt64)66078337084162048, currentUser.Id, "Expected Id '66078337084162048'"); Assert.AreEqual("Voltana", currentUser.Username, "Expected Name 'Voltana'"); Assert.AreEqual(0001, currentUser.Discriminator, "Expected Discriminator '0001'"); @@ -44,7 +45,7 @@ namespace Discord.Tests.Rest [TestCategory("Users")] public async Task Test_Get_User() { - var user = await _client.GetUser(96642168176807936); + var user = await _client.GetUserAsync(96642168176807936); Assert.AreEqual((UInt64)96642168176807936, user.Id, "Expected Id '96642168176807936'"); Assert.AreEqual("Khionu", user.Username, "Expected Name 'Khionu'"); Assert.AreEqual(9999, user.Discriminator, "Expected Discriminator '0001'"); @@ -57,7 +58,7 @@ namespace Discord.Tests.Rest [TestCategory("Users")] public async Task Test_Get_Invalid_User() { - var user = await _client.GetUser(1); + var user = await _client.GetUserAsync(1); Assert.IsNull(user, "Expected Invalid User to be 'null'"); } } diff --git a/test/Discord.Net.Tests/Tests.cs b/test/Discord.Net.Tests/Tests.cs index 1b51a4c94..2c7816b19 100644 --- a/test/Discord.Net.Tests/Tests.cs +++ b/test/Discord.Net.Tests/Tests.cs @@ -1,5 +1,4 @@ -using Discord.Rest; -using Microsoft.VisualStudio.TestTools.UnitTesting; +using Microsoft.VisualStudio.TestTools.UnitTesting; using System; using System.Collections.Generic; using System.Linq; @@ -317,184 +316,184 @@ namespace Discord.Tests x => _obGuildBot.UserUpdated -= x, (s, e) => e.After.Username == name); }*/ - /* - [TestMethod] - public void TestSetStatus() - { - AssertEvent( - "UserUpdated never fired", - async () => await SetStatus(_targetBot, UserStatus.Idle), - x => _observerBot.UserUpdated += x, - x => _observerBot.UserUpdated -= x, - (s, e) => e.After.Status == UserStatus.Idle); - } - private Task SetStatus(DiscordClient _client, UserStatus status) - { - throw new NotImplementedException(); - /*_client.SetStatus(status); - await Task.Delay(50); - }*/ - /* - [TestMethod] - public void TestSetGame() - { - AssertEvent( - "UserUpdated never fired", - async () => await SetGame(_targetBot, "test game"), - x => _observerBot.UserUpdated += x, - x => _observerBot.UserUpdated -= x, - (s, e) => _targetBot.CurrentUser.CurrentGame == "test game"); - - } - private Task SetGame(DiscordClient _client, string game) - { - throw new NotImplementedException(); - //_client.SetGame(game); - //await Task.Delay(5); - } + /* + [TestMethod] + public void TestSetStatus() + { + AssertEvent( + "UserUpdated never fired", + async () => await SetStatus(_targetBot, UserStatus.Idle), + x => _observerBot.UserUpdated += x, + x => _observerBot.UserUpdated -= x, + (s, e) => e.After.Status == UserStatus.Idle); + } + private Task SetStatus(DiscordClient _client, UserStatus status) + { + throw new NotImplementedException(); + /*_client.SetStatus(status); + await Task.Delay(50); + }*/ + /* + [TestMethod] + public void TestSetGame() + { + AssertEvent( + "UserUpdated never fired", + async () => await SetGame(_targetBot, "test game"), + x => _observerBot.UserUpdated += x, + x => _observerBot.UserUpdated -= x, + (s, e) => _targetBot.CurrentUser.CurrentGame == "test game"); + + } + private Task SetGame(DiscordClient _client, string game) + { + throw new NotImplementedException(); + //_client.SetGame(game); + //await Task.Delay(5); + } - #endregion + #endregion - #region Permission Tests + #region Permission Tests - // Permissions - [TestMethod] - public async Task Test_AddGet_PermissionsRule() - { - var channel = await _testGuild.CreateTextChannel(GetRandomText()); - var user = _testGuild.GetUser(_targetBot.CurrentUser.Id); - var perms = new OverwritePermissions(sendMessages: PermValue.Deny); - await channel.UpdatePermissionOverwrite(user, perms); - var resultPerms = channel.GetPermissionOverwrite(user); - Assert.IsNotNull(resultPerms, "Perms retrieved from Guild were null."); - } - [TestMethod] - public async Task Test_AddRemove_PermissionsRule() - { - var channel = await _testGuild.CreateTextChannel(GetRandomText()); - var user = _testGuild.GetUser(_targetBot.CurrentUser.Id); - var perms = new OverwritePermissions(sendMessages: PermValue.Deny); - await channel.UpdatePermissionOverwrite(user, perms); - await channel.RemovePermissionOverwrite(user); - await Task.Delay(200); - Assert.AreEqual(PermValue.Inherit, channel.GetPermissionOverwrite(user)?.SendMessages); - } - [TestMethod] - public async Task Test_Permissions_Event() - { - var channel = await _testGuild.CreateTextChannel(GetRandomText()); - var user = _testGuild.GetUser(_targetBot.CurrentUser.Id); - var perms = new OverwritePermissions(sendMessages: PermValue.Deny); - AssertEvent - ("ChannelUpdatedEvent never fired.", - async () => await channel.UpdatePermissionOverwrite(user, perms), - x => _targetBot.ChannelUpdated += x, - x => _targetBot.ChannelUpdated -= x, - (s, e) => e.Channel == channel && (e.After as GuildChannel).PermissionOverwrites.Count() != (e.Before as GuildChannel).PermissionOverwrites.Count()); - } - [TestMethod] - [ExpectedException(typeof(Net.HttpException))] - public async Task Test_Affect_Permissions_Invalid_Channel() - { - var channel = await _testGuild.CreateTextChannel(GetRandomText()); - var user = _testGuild.GetUser(_targetBot.CurrentUser.Id); - var perms = new OverwritePermissions(sendMessages: PermValue.Deny); - await channel.Delete(); - await channel.UpdatePermissionOverwrite(user, perms); - } + // Permissions + [TestMethod] + public async Task Test_AddGet_PermissionsRule() + { + var channel = await _testGuild.CreateTextChannel(GetRandomText()); + var user = _testGuild.GetUser(_targetBot.CurrentUser.Id); + var perms = new OverwritePermissions(sendMessages: PermValue.Deny); + await channel.UpdatePermissionOverwrite(user, perms); + var resultPerms = channel.GetPermissionOverwrite(user); + Assert.IsNotNull(resultPerms, "Perms retrieved from Guild were null."); + } + [TestMethod] + public async Task Test_AddRemove_PermissionsRule() + { + var channel = await _testGuild.CreateTextChannel(GetRandomText()); + var user = _testGuild.GetUser(_targetBot.CurrentUser.Id); + var perms = new OverwritePermissions(sendMessages: PermValue.Deny); + await channel.UpdatePermissionOverwrite(user, perms); + await channel.RemovePermissionOverwrite(user); + await Task.Delay(200); + Assert.AreEqual(PermValue.Inherit, channel.GetPermissionOverwrite(user)?.SendMessages); + } + [TestMethod] + public async Task Test_Permissions_Event() + { + var channel = await _testGuild.CreateTextChannel(GetRandomText()); + var user = _testGuild.GetUser(_targetBot.CurrentUser.Id); + var perms = new OverwritePermissions(sendMessages: PermValue.Deny); + AssertEvent + ("ChannelUpdatedEvent never fired.", + async () => await channel.UpdatePermissionOverwrite(user, perms), + x => _targetBot.ChannelUpdated += x, + x => _targetBot.ChannelUpdated -= x, + (s, e) => e.Channel == channel && (e.After as GuildChannel).PermissionOverwrites.Count() != (e.Before as GuildChannel).PermissionOverwrites.Count()); + } + [TestMethod] + [ExpectedException(typeof(Net.HttpException))] + public async Task Test_Affect_Permissions_Invalid_Channel() + { + var channel = await _testGuild.CreateTextChannel(GetRandomText()); + var user = _testGuild.GetUser(_targetBot.CurrentUser.Id); + var perms = new OverwritePermissions(sendMessages: PermValue.Deny); + await channel.Delete(); + await channel.UpdatePermissionOverwrite(user, perms); + } - #endregion + #endregion - [ClassCleanup] - public static async Task Cleanup() - { - WaitMany( - (await _hostBot.GetGuilds()).Select(x => x.Owner.Id == _hostBot.CurrentUser.Id ? x.Delete() : x.Leave()), - (await _targetBot.GetGuilds()).Select(x => x.Owner.Id == _targetBot.CurrentUser.Id ? x.Delete() : x.Leave()), - (await _observerBot.GetGuilds()).Select(x => x.Owner.Id == _observerBot.CurrentUser.Id ? x.Delete() : x.Leave())); - - WaitAll( - _hostBot.Disconnect(), - _targetBot.Disconnect(), - _observerBot.Disconnect()); - } + [ClassCleanup] + public static async Task Cleanup() + { + WaitMany( + (await _hostBot.GetGuilds()).Select(x => x.Owner.Id == _hostBot.CurrentUser.Id ? x.Delete() : x.Leave()), + (await _targetBot.GetGuilds()).Select(x => x.Owner.Id == _targetBot.CurrentUser.Id ? x.Delete() : x.Leave()), + (await _observerBot.GetGuilds()).Select(x => x.Owner.Id == _observerBot.CurrentUser.Id ? x.Delete() : x.Leave())); - #region Helpers + WaitAll( + _hostBot.Disconnect(), + _targetBot.Disconnect(), + _observerBot.Disconnect()); + } - // Task Helpers + #region Helpers - private static void AssertEvent(string msg, Func action, Action> addEvent, Action> removeEvent, Func test = null) - { - AssertEvent(msg, action, addEvent, removeEvent, test, true); - } - private static void AssertNoEvent(string msg, Func action, Action> addEvent, Action> removeEvent, Func test = null) - { - AssertEvent(msg, action, addEvent, removeEvent, test, false); - } - private static void AssertEvent(string msg, Func action, Action> addEvent, Action> removeEvent, Func test, bool assertTrue) - { - ManualResetEventSlim trigger = new ManualResetEventSlim(false); - bool result = false; + // Task Helpers - EventHandler handler = (s, e) => - { - if (test != null) - { - result |= test(s, e); - trigger.Set(); - } - else - result = true; - }; - - addEvent(handler); - var task = action(); - trigger.Wait(EventTimeout); - task.Wait(); - removeEvent(handler); - - Assert.AreEqual(assertTrue, result, msg); - } + private static void AssertEvent(string msg, Func action, Action> addEvent, Action> removeEvent, Func test = null) + { + AssertEvent(msg, action, addEvent, removeEvent, test, true); + } + private static void AssertNoEvent(string msg, Func action, Action> addEvent, Action> removeEvent, Func test = null) + { + AssertEvent(msg, action, addEvent, removeEvent, test, false); + } + private static void AssertEvent(string msg, Func action, Action> addEvent, Action> removeEvent, Func test, bool assertTrue) + { + ManualResetEventSlim trigger = new ManualResetEventSlim(false); + bool result = false; - private static void AssertEvent(string msg, Func action, Action addEvent, Action removeEvent, Func test, bool assertTrue) + EventHandler handler = (s, e) => { - ManualResetEventSlim trigger = new ManualResetEventSlim(false); - bool result = false; - - EventHandler handler = (s, e) => + if (test != null) { - if (test != null) - { - result |= test(s); - trigger.Set(); - } - else - result = true; - }; - - addEvent(handler); - var task = action(); - trigger.Wait(EventTimeout); - task.Wait(); - removeEvent(handler); - - Assert.AreEqual(assertTrue, result, msg); - } + result |= test(s, e); + trigger.Set(); + } + else + result = true; + }; + + addEvent(handler); + var task = action(); + trigger.Wait(EventTimeout); + task.Wait(); + removeEvent(handler); + + Assert.AreEqual(assertTrue, result, msg); + } + + private static void AssertEvent(string msg, Func action, Action addEvent, Action removeEvent, Func test, bool assertTrue) + { + ManualResetEventSlim trigger = new ManualResetEventSlim(false); + bool result = false; - private static void WaitAll(params Task[] tasks) - { - Task.WaitAll(tasks); - } - private static void WaitAll(IEnumerable tasks) - { - Task.WaitAll(tasks.ToArray()); - } - private static void WaitMany(params IEnumerable[] tasks) + EventHandler handler = (s, e) => { - Task.WaitAll(tasks.Where(x => x != null).SelectMany(x => x).ToArray()); - } + if (test != null) + { + result |= test(s); + trigger.Set(); + } + else + result = true; + }; + + addEvent(handler); + var task = action(); + trigger.Wait(EventTimeout); + task.Wait(); + removeEvent(handler); + + Assert.AreEqual(assertTrue, result, msg); + } + + private static void WaitAll(params Task[] tasks) + { + Task.WaitAll(tasks); + } + private static void WaitAll(IEnumerable tasks) + { + Task.WaitAll(tasks.ToArray()); + } + private static void WaitMany(params IEnumerable[] tasks) + { + Task.WaitAll(tasks.Where(x => x != null).SelectMany(x => x).ToArray()); + } - #endregion - }*/ + #endregion +}*/ }