Пример #1
0
        public async Task GetRandomUserGeneratorDataHolder_Valid()
        {
            int numUsers = 1;

            var randomUserRetriever = new Mock <IRandomUserRetriever>(MockBehavior.Strict);

            var userList = new List <User>
            {
                new User
                {
                    Gender    = "Male",
                    FirstName = "Jon",
                    LastName  = "Snow",
                    Country   = "House Stark"
                }
            };

            randomUserRetriever.Setup(x => x.GetUsersAsync(numUsers))
            .ReturnsAsync(userList);

            var logic = new RandomUserGeneratorLogic(randomUserRetriever.Object);

            var result = await logic.GetRandomUserGeneratorDataHolder(numUsers);

            // Only checking that it is not null because the actual logic to
            // populate the values in the result are done in the object's constructor.
            Assert.IsNotNull(result);
            randomUserRetriever.VerifyAll();
        }
Пример #2
0
        public async Task GetRandomUserGeneratorDataHolder_Negative_Invalid()
        {
            int numUsers = -1;

            var randomUserRetriever = new Mock <IRandomUserRetriever>(MockBehavior.Strict);

            var logic = new RandomUserGeneratorLogic(randomUserRetriever.Object);

            var ex = await Assert.ThrowsExceptionAsync <InvalidOperationException>(() => logic.GetRandomUserGeneratorDataHolder(numUsers));

            Assert.AreEqual($"numUsers must be at least 1. Value of numUsers: {numUsers}.", ex.Message);
            randomUserRetriever.VerifyAll();
        }