public CategoryControllerTest() { //fake data var fakeData = new FakeData(); //setup mapper var repositoriesAssembly = typeof(BannerDto).Assembly; var assemblies = new[] { repositoriesAssembly }; var allTypes = assemblies.SelectMany(a => a.ExportedTypes); var list = allTypes.Where(type => type.IsClass && !type.IsAbstract && type.GetInterfaces().Contains(typeof(IHaveCustomMapping))) .Select(type => (IHaveCustomMapping)Activator.CreateInstance(type)); var profile = new CustomMappingProfile(list); var configuration = new MapperConfiguration(cfg => cfg.AddProfile(profile)); var mapper = new Mapper(configuration); //setup ICategoryRepository var mockCategoryRepository = new Mock <ICategoryRepository>(); mockCategoryRepository.Setup(x => x.GetAllMainCat(new CancellationToken())).Returns(Task.FromResult(fakeData.FakeCategoryData(30))); //setup IRepository var mockRepository = new Mock <IRepository <Category> >(); _controller = new CategoriesController(mockRepository.Object, mapper, mockCategoryRepository.Object); }