public async Task WhenGetMemberAsyncCalled_UserIsMappedToMemberDTOAsync()
        {
            //ARRANGE
            //mock a dependency
            //var mockRepo = new Mock<IAppUserRepository>();

            AppUser fakeUser = new AppUser
            {
                City            = "FakeTown",
                CountryOfOrigin = "FakeCountry",
                Gender          = "Fake",
                Interests       = "Fake it",
                Name            = "Faker McGee",
                DateOfBirth     = new System.DateTime(1969, 4, 20)
            };

            //Fake the return value of a mock dependency
            mockRepo.Setup(x => x.GetUserAsync(It.IsAny <int>())).ReturnsAsync(fakeUser);

            //initialize AutoMapper for Unit Tests
            //var config = new MapperConfiguration(x =>
            //x.AddProfile<AutoMapperProfile>());

            //inject fake dependencies and automapper
            var service = new AppUserService(mockRepo.Object, config.CreateMapper());

            //ACT
            var result = await service.GetMemberAsync(1);

            //ASSERT
            Assert.NotNull(result);
            Assert.AreEqual("FakeTown", result.City);
        }
Пример #2
0
        public async Task WhenGetMemberAsyncCalled_UserIsMappedToMemberDtoAsync()
        {
            /*
             *
             * UNIT TESTING WITH DEPENDENCY INJECTION & API
             *
             * **/

            // - - - ARRANGE - - -

            //create mock version of Interface (to fake dependency injection)
            var mockRepo = new Mock <IAppUserRepository>();


            //Fake the return value of a Mock Dependency
            mockRepo.Setup(x => x.GetUser(It.IsAny <int>())).ReturnsAsync(fakeUser);

            //Initialize AutoMapper for Unit Tests (not faked/mocked)
            var config = new MapperConfiguration(x => x.AddProfile <AutoMapperProfile>());

            //pass mocked interface to fake dependency injection
            var service = new AppUserService(mockRepo.Object, config.CreateMapper());


            // - - - ACT - - -

            MemberDTO result = await service.GetMemberAsync(1);

            // - - - ASSERT - - -

            Assert.NotNull(result);
            Assert.AreEqual("faketown", result.City);
        }