public void GivenOwnDefaultTimeoutValue_WhenGetTimeoutIsCalled_ThenOverridenDefaultTimeoutIsReturned() { var newDefaultTimeoutInMs = 10 * 60 * 1000; var operationsTimeouts = new ShipStationTimeouts(newDefaultTimeoutInMs); operationsTimeouts[ShipStationOperationEnum.CreateUpdateOrder].Should().Be(newDefaultTimeoutInMs); }
public void GivenListOrdersTimeoutIsSetTwice_WhenGetTimeoutIsCalled_ThenSpecificTimeoutIsReturned() { var operationsTimeouts = new ShipStationTimeouts(); var specificTimeoutInMs = 10 * 60 * 1000; operationsTimeouts.Set(ShipStationOperationEnum.ListOrders, new ShipStationOperationTimeout(specificTimeoutInMs)); operationsTimeouts.Set(ShipStationOperationEnum.ListOrders, new ShipStationOperationTimeout(specificTimeoutInMs * 2)); operationsTimeouts[ShipStationOperationEnum.ListOrders].Should().Be(specificTimeoutInMs * 2); }
public void GivenTooSmallTimeout_WhenGetOrdersAsyncIsCalled_ThenExceptionIsReturned() { var timeouts = new ShipStationTimeouts(); var tinyTimeout = new ShipStationOperationTimeout(10); timeouts.Set(ShipStationOperationEnum.ListOrders, tinyTimeout); timeouts.Set(ShipStationOperationEnum.GetOrderShipments, tinyTimeout); timeouts.Set(ShipStationOperationEnum.GetOrderFulfillments, tinyTimeout); var service = this.ShipStationFactory.CreateServiceV2(this._credentials, timeouts); var ex = Assert.Throws <TaskCanceledException>(async() => { var orders = await service.GetOrdersAsync(DateTime.UtcNow.AddDays(-3), DateTime.UtcNow, CancellationToken.None); }); ex.Should().NotBeNull(); }
public void GivenSpecificTimeoutsAreNotSet_WhenGetTimeoutIsCalled_ThenDefaultTimeoutIsReturned() { var operationsTimeouts = new ShipStationTimeouts(); operationsTimeouts[ShipStationOperationEnum.ListOrders].Should().Be(operationsTimeouts.DefaultOperationTimeout.TimeoutInMs); }
public ShipStationService(ShipStationCredentials credentials, ShipStationTimeouts timeouts, IWebRequestServices webServices = null) { this._webRequestServices = webServices ?? new WebRequestServices(credentials); this._timeouts = timeouts; }
public IShipStationService CreateServiceV2(ShipStationCredentials credentials, ShipStationTimeouts operationsTimeouts) { Condition.Requires(credentials, "credentials").IsNotNull(); if (string.IsNullOrWhiteSpace(credentials.PartnerKey)) { credentials.PartnerKey = this._partnerKey; } return(new ShipStationService(credentials, operationsTimeouts)); }