public void Query_InvalidPredicate_ExceptionThrown(Predicate <User> predicate)
        {
            // Arrange
            var userMemoryCache = new UserMemoryRepository();

            InitUserRepository(userMemoryCache);

            // Act
            userMemoryCache.Query(predicate);
        }
        public int Search_ExistingUser_FindSomeUsers(Predicate <User> predicate)
        {
            // Arrange
            var userMemoryCache = new UserMemoryRepository();

            InitUserRepository(userMemoryCache);

            // Act
            var users = userMemoryCache.Query(predicate);

            // Assert
            return(users.Count());
        }
        public void Query_NotExistingUser_FindNoUsers()
        {
            // Arrange
            var userMemoryCache = new UserMemoryRepository();

            InitUserRepository(userMemoryCache);
            Predicate <User> predicate = (u) => u.FirstName == "NotExistingName";

            // Act
            var users = userMemoryCache.Query(predicate);

            // Assert
            Assert.AreEqual(0, users.Count());
        }