public async Task ShouldGetStashItemsFromPoeEndpointUsingGetStashTabItemsRequest()
        {
            var service = Substitute.For <IPoeApiService>();

            var request = new GetStashTabItems.Request
            {
                AccountName  = "SomeAccountName",
                PoeSessionId = "someId",
                TabIndex     = "1"
            };

            var sut = new GetStashTabItems.Handler(service);

            await sut.Handle(request);

            await service.Received(1).GetStashTabItems(request);
        }
Beispiel #2
0
        public async Task <HttpResponseMessage> GetStashTabItems(GetStashTabItems.Request request)
        {
            var cookieContainer = new CookieContainer();

            using var handler = new HttpClientHandler()
                  {
                      CookieContainer = cookieContainer
                  };
            using var client = new HttpClient(handler)
                  {
                      BaseAddress = _baseAddress
                  };
            cookieContainer.Add(_baseAddress, new Cookie("POESESSID", request.PoeSessionId));

            var response = await client.GetAsync($"get-stash-items?accountName={request.AccountName}&league=Delirium&tabs=1&tabIndex={request.TabIndex}");

            return(response);
        }
        public async Task ShouldConvertTypeLineProperty()
        {
            var service = Substitute.For <IPoeApiService>();

            var request = new GetStashTabItems.Request
            {
                AccountName  = "SomeAccountName",
                PoeSessionId = "someId",
                TabIndex     = "1"
            };
            var expectedResponse = CreateGetStashTabItemsResponse(typeLine: "type line");

            service.GetStashTabItems(request).Returns(CreateGetStashTabItemsHttpResponseMessage(expectedResponse));

            var sut      = new GetStashTabItems.Handler(service);
            var response = await sut.Handle(request);

            response.Should().BeEquivalentTo(expectedResponse);
        }
        public async Task ShouldConvertImplicitProperty()
        {
            var service = Substitute.For <IPoeApiService>();

            var request = new GetStashTabItems.Request
            {
                AccountName  = "SomeAccountName",
                PoeSessionId = "someId",
                TabIndex     = "1"
            };
            var implicitMods = new List <string>
            {
                "mod1",
                "mod2"
            };
            var expectedResponse = CreateGetStashTabItemsResponse(implicitMods: implicitMods);

            service.GetStashTabItems(request).Returns(CreateGetStashTabItemsHttpResponseMessage(expectedResponse));

            var sut      = new GetStashTabItems.Handler(service);
            var response = await sut.Handle(request);

            response.Should().BeEquivalentTo(expectedResponse);
        }