예제 #1
0
        public async Task GetPetsGroupedOnOwnerGender(IApiRequest apiRequest, IPeoplePetRepository peoplePetRepository, List <PetsGroupedOnOwnerGender> expectedResult)
        {
            //Arrange
            IPeoplePetService sut = new PeoplePetservice(peoplePetRepository);

            //Act
            List <PetsGroupedOnOwnerGender> result = await sut.getPetsGroupedOnOwnerGender(apiRequest);

            string resultJson         = JsonConvert.SerializeObject(result);
            string expectedResultJson = JsonConvert.SerializeObject(expectedResult);

            //Assert
            Assert.Equal(expectedResultJson, resultJson);
        }
예제 #2
0
        // This method gets called by the runtime. Use this method to add services to the container.
        // For more information on how to configure your application, visit https://go.microsoft.com/fwlink/?LinkID=398940
        public void ConfigureServices(IServiceCollection services)
        {
            // Add framework services.
            services.AddMvc();

            //services.AddSingleton<IConfiguration>(Configuration);
            services.Configure <PeopleApiSettings>(Configuration.GetSection("PeopleApiSettings"));

            services.AddSingleton <IApiRequestBuilder, ApiRequestBuilder>();

            services.AddSingleton <IPeoplePetRepository, PeoplePetRepository>((ctx) =>
            {
                IApiRequestBuilder apiBuiler = ctx.GetRequiredService <IApiRequestBuilder>();
                return(new PeoplePetRepository(apiBuiler));
            });

            services.AddSingleton <IPeoplePetService, PeoplePetservice>((ctx) =>
            {
                //IPeoplePetRepository repo = ctx.GetService<IPeoplePetRepository>();
                IPeoplePetRepository repo = ctx.GetRequiredService <IPeoplePetRepository>();
                return(new PeoplePetservice(repo));
            });
        }
 public PeoplePetservice(IPeoplePetRepository peoplePetRepository)
 {
     _peoplePetRepository = peoplePetRepository;
 }