public void UT_CacheSetObject(Context context)
 {
     string key1 = "UT_CacheSetObject1";
     context.Cache.Remove(key1);
     var users = GetUsers();
     var rs = context.Collections.GetRedisSet<User>(key1);
     rs.AddRange(users);
     // Test GetEnumerator
     foreach (var item in rs)
     {
         Assert.IsTrue(users.Any(u => u.Id == item.Id));
     }
     // Test Count
     Assert.AreEqual(users.Count, rs.Count);
     // Test Contains
     Assert.IsTrue(rs.Contains(users[2]));
     // Test Add
     var newUser = new User() {Id = 5};
     rs.Add(newUser);
     Assert.IsTrue(rs.Contains(newUser));
     // Test Remove
     rs.Remove(users[2]);
     Assert.IsFalse(rs.Contains(users[2]));
     // Test CopyTo
     User[] array = new User[50];
     rs.CopyTo(array, 10);
     Assert.AreEqual(users.Count, array.Count(x => x != null));
     // Test Clear
     rs.Clear();
     Assert.AreEqual(0, rs.Count);
     rs.AddRange(new []{  new User() {Id = 3},  new User() {Id = 1},  new User() {Id = 2} });
     Assert.AreEqual(3, rs.Count);
     rs.Remove(new User() { Id = 1 });
     rs.Remove(new User() { Id = 2 });
     Assert.AreEqual(1, rs.Count);
     Assert.IsTrue(rs.Contains(new User() { Id = 3 }));
     // Test GetRandomMember
     var user = rs.GetRandomMember();
     Assert.AreEqual(3, user.Id);
     // Test Pop
     user = rs.Pop();
     Assert.AreEqual(3, user.Id);
     user = rs.Pop();
     Assert.IsNull(user);
 }
Пример #2
0
        public void UT_CacheSetObject(Context context)
        {
            string key1 = "UT_CacheSetObject1";

            context.Cache.Remove(key1);
            var users = GetUsers();
            var rs    = context.Collections.GetRedisSet <User>(key1);

            rs.AddRange(users);
            // Test GetEnumerator
            foreach (var item in rs)
            {
                Assert.IsTrue(users.Any(u => u.Id == item.Id));
            }
            // Test Count
            Assert.AreEqual(users.Count, rs.Count);
            // Test Contains
            Assert.IsTrue(rs.Contains(users[2]));
            // Test Add
            var newUser = new User()
            {
                Id = 5
            };

            rs.Add(newUser);
            Assert.IsTrue(rs.Contains(newUser));
            // Test Remove
            rs.Remove(users[2]);
            Assert.IsFalse(rs.Contains(users[2]));
            // Test CopyTo
            User[] array = new User[50];
            rs.CopyTo(array, 10);
            Assert.AreEqual(users.Count, array.Count(x => x != null));
            // Test Clear
            rs.Clear();
            Assert.AreEqual(0, rs.Count);
            rs.AddRange(new [] { new User()
                                 {
                                     Id = 3
                                 }, new User()
                                 {
                                     Id = 1
                                 }, new User()
                                 {
                                     Id = 2
                                 } });
            Assert.AreEqual(3, rs.Count);
            rs.Remove(new User()
            {
                Id = 1
            });
            rs.Remove(new User()
            {
                Id = 2
            });
            Assert.AreEqual(1, rs.Count);
            Assert.IsTrue(rs.Contains(new User()
            {
                Id = 3
            }));
            // Test GetRandomMember
            var user = rs.GetRandomMember();

            Assert.AreEqual(3, user.Id);
            // Test Pop
            user = rs.Pop();
            Assert.AreEqual(3, user.Id);
            user = rs.Pop();
            Assert.IsNull(user);
        }