You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

UserTests.cs 3.1 kB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. using Microsoft.VisualStudio.TestTools.UnitTesting;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. using Discord.Rest;
  8. namespace Discord.Tests.Rest
  9. {
  10. [TestClass]
  11. public class UserTests
  12. {
  13. public static TestContext Context;
  14. private static DiscordClient _client;
  15. [ClassInitialize]
  16. public static void Initialize(TestContext context)
  17. {
  18. Context = context;
  19. _client = new DiscordClient(new DiscordConfig() { RestClientProvider = (url, ct) => new TestRestClient(url, ct) });
  20. if (EndpointHandler.Instance == null) EndpointHandler.Instance = new EndpointHandler();
  21. if (Json.Serializer == null) new Json();
  22. Responses.Users.UserHandlers.Mode = Rest.Responses.Users.TestMode.User;
  23. _client.Login(TokenType.User, "UserToken_Voltana").Wait();
  24. }
  25. [TestMethod]
  26. [TestCategory("Users")]
  27. public async Task Test_Get_Current_User()
  28. {
  29. var currentUser = await _client.GetCurrentUser();
  30. Assert.AreEqual((UInt64)66078337084162048, currentUser.Id, "Expected Id '66078337084162048'");
  31. Assert.AreEqual("Voltana", currentUser.Username, "Expected Name 'Voltana'");
  32. Assert.AreEqual(0001, currentUser.Discriminator, "Expected Discriminator '0001'");
  33. // Cannot Test Avatar URLs, Avatar ID not exposed publicly.
  34. Assert.AreEqual(true, currentUser.IsVerified, "Expected Verified 'true'");
  35. Assert.AreEqual("hello-i-am-not-real@foxbot.me", currentUser.Email, "Expected Email 'hello-i-am-not-real@foxbot.me'");
  36. Assert.AreEqual(false, currentUser.IsBot, "Expected IsBot 'false'");
  37. Assert.AreEqual("<@66078337084162048>", currentUser.Mention, "Expected Mention '<@66078337084162048>'");
  38. Assert.AreEqual(new DateTime(635714215032370000), currentUser.CreatedAt, "Expected Created At '635714215032370000'");
  39. }
  40. [TestMethod]
  41. [TestCategory("Users")]
  42. public async Task Test_Get_User()
  43. {
  44. var user = await _client.GetUser(96642168176807936);
  45. Assert.AreEqual((UInt64)96642168176807936, user.Id, "Expected Id '96642168176807936'");
  46. Assert.AreEqual("Khionu", user.Username, "Expected Name 'Khionu'");
  47. Assert.AreEqual(9999, user.Discriminator, "Expected Discriminator '0001'");
  48. // Cannot Test Avatar URLs, Avatar ID not exposed publicly.
  49. Assert.AreEqual(false, user.IsBot, "Expected IsBot 'false'");
  50. Assert.AreEqual("<@!96642168176807936>", user.NicknameMention, "Expected Mention '<@!96642168176807936>'");
  51. Assert.AreEqual(new DateTime(635787084884180000), user.CreatedAt, "Expected Created At '635787084884180000'");
  52. }
  53. [TestMethod]
  54. [TestCategory("Users")]
  55. public async Task Test_Get_Invalid_User()
  56. {
  57. var user = await _client.GetUser(1);
  58. Assert.IsNull(user, "Expected Invalid User to be 'null'");
  59. }
  60. }
  61. }