Orm_Extensions_ExecuteDelete_Test.cs 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. using System.Data;
  2. using Microsoft.VisualStudio.TestTools.UnitTesting;
  3. namespace Vitorm.MsTest.CommonTest
  4. {
  5. [TestClass]
  6. public class Orm_Extensions_ExecuteDelete_Test
  7. {
  8. [TestMethod]
  9. public void Test_ExecuteDelete()
  10. {
  11. if (1 == 1)
  12. {
  13. using var dbContext = DataSource.CreateDbContext();
  14. var userQuery = dbContext.Query<User>();
  15. var query = from user in userQuery
  16. from father in userQuery.Where(father => user.fatherId == father.id).DefaultIfEmpty()
  17. where user.id <= 5 && father != null
  18. select new
  19. {
  20. user,
  21. father
  22. };
  23. var rowCount = query.ExecuteDelete();
  24. Assert.AreEqual(3, rowCount);
  25. var newUsers = userQuery.ToList();
  26. Assert.AreEqual(3, newUsers.Count());
  27. Assert.AreEqual(4, newUsers.First().id);
  28. Assert.AreEqual(6, newUsers.Last().id);
  29. }
  30. if (1 == 1)
  31. {
  32. using var dbContext = DataSource.CreateDbContext();
  33. var userQuery = dbContext.Query<User>();
  34. var rowCount = userQuery.Where(m => m.id == 2 || m.id == 4).ExecuteDelete();
  35. Assert.AreEqual(2, rowCount);
  36. var newUsers = userQuery.ToList();
  37. Assert.AreEqual(4, newUsers.Count());
  38. Assert.AreEqual(1, newUsers.First().id);
  39. Assert.AreEqual(3, newUsers[1].id);
  40. Assert.AreEqual(5, newUsers[2].id);
  41. }
  42. }
  43. }
  44. }