123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121 |
- using System.Data;
- using Microsoft.VisualStudio.TestTools.UnitTesting;
- namespace Vitorm.MsTest.CommonTest
- {
- [TestClass]
- public class Property_Numeric_Test
- {
- // Enumerable.Contains
- // Queryable.Contains
- [TestMethod]
- public void Test_In()
- {
- using var dbContext = DataSource.CreateDbContext();
- var userQuery = dbContext.Query<User>();
- // Enumerable.Contains
- {
- var userList = userQuery.Where(u => new[] { 3, 5 }.Contains(u.id)).ToList();
- Assert.AreEqual(2, userList.Count);
- Assert.AreEqual(0, userList.Select(m => m.id).Except(new[] { 3, 5 }).Count());
- }
- // Enumerable.Contains
- {
- var ids = new[] { 3, 5 }.AsEnumerable();
- var userList = userQuery.Where(u => ids.Contains(u.id)).ToList();
- Assert.AreEqual(2, userList.Count);
- Assert.AreEqual(0, userList.Select(m => m.id).Except(new[] { 3, 5 }).Count());
- }
- // Queryable.Contains
- {
- var ids = new[] { 3, 5 }.AsQueryable();
- var userList = userQuery.Where(u => ids.Contains(u.id)).ToList();
- Assert.AreEqual(2, userList.Count);
- Assert.AreEqual(0, userList.Select(m => m.id).Except(new[] { 3, 5 }).Count());
- }
- // not Contains
- {
- var userList = userQuery.Where(u => !new[] { 3, 5 }.Contains(u.id)).ToList();
- Assert.AreEqual(4, userList.Count);
- Assert.AreEqual(0, userList.Select(m => m.id).Except(new[] { 1, 2, 4, 6 }).Count());
- }
- }
- [TestMethod]
- public void Test_Equal()
- {
- using var dbContext = DataSource.CreateDbContext();
- var userQuery = dbContext.Query<User>();
- // #1 ==
- {
- var userList = userQuery.Where(u => u.id == 3 || 5 == u.id).ToList();
- Assert.AreEqual(2, userList.Count);
- Assert.AreEqual(0, userList.Select(m => m.id).Except(new[] { 3, 5 }).Count());
- }
- // #2 !=
- {
- var userList = userQuery.Where(u => u.id != 1).ToList();
- Assert.AreEqual(5, userList.Count);
- Assert.AreEqual(0, userList.Select(m => m.id).Except(new[] { 2, 3, 4, 5, 6 }).Count());
- }
- {
- var userList = userQuery.Where(u => 1 != u.id).ToList();
- Assert.AreEqual(5, userList.Count);
- Assert.AreEqual(0, userList.Select(m => m.id).Except(new[] { 2, 3, 4, 5, 6 }).Count());
- }
- }
- [TestMethod]
- public void Test_Compare()
- {
- using var dbContext = DataSource.CreateDbContext();
- var userQuery = dbContext.Query<User>();
- // #1 > and <
- {
- var userList = userQuery.Where(u => u.id > 2).Where(m => m.id < 4).ToList();
- Assert.AreEqual(1, userList.Count);
- Assert.AreEqual(3, userList.First().id);
- }
- // #2 > or <
- {
- var userList = userQuery.Where(u => u.id > 5 || u.id < 2).ToList();
- Assert.AreEqual(2, userList.Count);
- Assert.AreEqual(0, userList.Select(m => m.id).Except(new[] { 1, 6 }).Count());
- }
- // #3 >= or <=
- {
- var userList = userQuery.Where(u => u.id >= 6 || u.id <= 1).ToList();
- Assert.AreEqual(2, userList.Count);
- Assert.AreEqual(0, userList.Select(m => m.id).Except(new[] { 1, 6 }).Count());
- }
- // #4 in right side
- {
- var userList = userQuery.Where(u => 4 >= u.id && 3 <= u.id).ToList();
- Assert.AreEqual(2, userList.Count);
- Assert.AreEqual(0, userList.Select(m => m.id).Except(new[] { 3, 4 }).Count());
- }
- }
- }
- }
|