ClickHouse_Test.cs 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. using Microsoft.VisualStudio.TestTools.UnitTesting;
  2. using User = Vitorm.MsTest.ClickHouse.User;
  3. namespace Vitorm.MsTest.ClickHouse
  4. {
  5. public class User : Vitorm.MsTest.UserBase
  6. {
  7. }
  8. }
  9. namespace Vitorm.MsTest
  10. {
  11. [TestClass]
  12. public partial class ClickHouse_Test : UserTest<User>
  13. {
  14. [TestMethod]
  15. public void Test()
  16. {
  17. Init();
  18. Test_DbContext();
  19. //Test_Transaction();
  20. Test_Get();
  21. Test_Query();
  22. Test_QueryJoin();
  23. Test_ToExecuteString();
  24. //Test_ExecuteUpdate();
  25. Test_ExecuteDelete();
  26. Test_Create();
  27. //Test_Update();
  28. Test_Delete();
  29. }
  30. [TestMethod]
  31. public async Task TestAsync()
  32. {
  33. Init();
  34. await Test_GetAsync();
  35. await Test_QueryAsync();
  36. await Test_QueryJoinAsync();
  37. //await Test_ExecuteUpdateAsync();
  38. await Test_ExecuteDeleteAsync();
  39. //await Test_UpdateAsync();
  40. await Test_DeleteAsync();
  41. }
  42. public override User NewUser(int id, bool forAdd = false) => new User { id = id, name = "testUser" + id };
  43. public override void WaitForUpdate() => Thread.Sleep(2000);
  44. public void Init()
  45. {
  46. using var dbContext = Data.DataProvider<User>()?.CreateDbContext();
  47. dbContext.TryDropTable<User>();
  48. dbContext.TryCreateTable<User>();
  49. var users = new List<User> {
  50. new User { id=1, name="u146", fatherId=4, motherId=6 },
  51. new User { id=2, name="u246", fatherId=4, motherId=6 },
  52. new User { id=3, name="u356", fatherId=5, motherId=6 },
  53. new User { id=4, name="u400" },
  54. new User { id=5, name="u500" },
  55. new User { id=6, name="u600" },
  56. };
  57. users.ForEach(user => { user.birth = DateTime.Parse("2021-01-01 00:00:00").AddHours(user.id); });
  58. dbContext.AddRange(users);
  59. WaitForUpdate();
  60. }
  61. }
  62. }