public async Task WHEN_valid_request_SHOULD_succeed() { //Arrange var notes = new List <Note> { new Note() }; _container.GetMock <IOvertureClient>() .Setup(r => r.SendAsync(It.IsAny <GetShipmentNotesRequest>())) .ReturnsAsync(notes); var orderRepository = _container.CreateInstance <OrderRepository>(); //Act var param = new GetShipmentNotesParam { ShipmentId = Guid.NewGuid(), Scope = GetRandom.String(32), }; var result = await orderRepository.GetShipmentNotesAsync(param).ConfigureAwait(false); //Assert result.Should().NotBeNull(); result.Count.ShouldBeEquivalentTo(1); }
/// <summary> /// Returns the notes of a specified shipment. /// </summary> /// <param name="param"></param> /// <returns></returns> public virtual Task <List <Note> > GetShipmentNotesAsync(GetShipmentNotesParam param) { if (param == null) { throw new ArgumentNullException(nameof(param)); } if (param.ShipmentId == Guid.Empty) { throw new ArgumentException(GetMessageOfEmpty(nameof(param.ShipmentId)), nameof(param)); } if (string.IsNullOrWhiteSpace(param.Scope)) { throw new ArgumentException(GetMessageOfNullWhiteSpace(nameof(param.Scope)), nameof(param)); } var request = new GetShipmentNotesRequest { ScopeId = param.Scope, ShipmentId = param.ShipmentId }; return(OvertureClient.SendAsync(request)); }