Sqlite_Test.cs 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. using Microsoft.VisualStudio.TestTools.UnitTesting;
  2. using User = Vitorm.MsTest.Sqlite.User;
  3. using Vitorm.DataProvider;
  4. using Vitorm.Sql;
  5. namespace Vitorm.MsTest.Sqlite
  6. {
  7. public class User : Vitorm.MsTest.UserBase
  8. {
  9. }
  10. }
  11. namespace Vitorm.MsTest
  12. {
  13. [TestClass]
  14. public partial class Sqlite_Test : UserTest<User>
  15. {
  16. [TestMethod]
  17. public void Test()
  18. {
  19. Init();
  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. Test_DbContext();
  30. }
  31. public override User NewUser(int id, bool forAdd = false) => new User { id = id, name = "testUser" + id };
  32. public void Init()
  33. {
  34. var filePath = Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, $"sqlite.db");
  35. if (File.Exists(filePath)) File.Delete(filePath);
  36. File.WriteAllBytes(filePath, new byte[0]);
  37. using var dbContext = Data.DataProvider<User>()?.CreateDbContext();
  38. dbContext.Create<User>();
  39. var users = new List<User> {
  40. new User { id=1, name="u146", fatherId=4, motherId=6 },
  41. new User { id=2, name="u246", fatherId=4, motherId=6 },
  42. new User { id=3, name="u356", fatherId=5, motherId=6 },
  43. new User { id=4, name="u400" },
  44. new User { id=5, name="u500" },
  45. new User { id=6, name="u600" },
  46. };
  47. users.ForEach(user => { user.birth = DateTime.Parse("2021-01-01 00:00:00").AddHours(user.id); });
  48. dbContext.AddRange(users);
  49. WaitForUpdate();
  50. }
  51. }
  52. }