public async Task ParkingRightShouldntBeSavedIfMessageIsnotPublished() { var repo = new Mock <IParkingRightRepository>(); var sns = new Mock <ISnsConnector>(); sns.Setup(m => m.PublishMessage( It.IsAny <string>(), It.IsAny <MessageType>(), It.IsAny <string>(), It.IsAny <string>())) .Returns(() => Task.FromResult(false)); var parkingRightProcessor = new ParkingRightProcessor(repo.Object, _mapper, sns.Object, new Mock <IConfigurationProvider>().Object); await Assert.ThrowsAsync <Exception>(async() => await parkingRightProcessor.SaveParkingRight(new ParkingRightModel())); repo.Verify(r => r.Add(It.IsAny <ParkingRightEntity>()), Times.Never); }
public async Task SaveParkingRightShouldTriggerSaveRepo() { var repo = new Mock <IParkingRightRepository>(); var sns = new Mock <ISnsConnector>(); repo.Setup(m => m.Add(It.IsAny <ParkingRightEntity>())) .Returns(() => Task.FromResult(true)); sns.Setup(m => m.PublishMessage( It.IsAny <string>(), It.IsAny <MessageType>(), It.IsAny <string>(), It.IsAny <string>())) .Returns(() => Task.FromResult(true)); var parkingRightProcessor = new ParkingRightProcessor(repo.Object, _mapper, sns.Object, new Mock <IConfigurationProvider>().Object); await parkingRightProcessor.SaveParkingRight(new ParkingRightModel()); repo.Verify(r => r.Add(It.IsAny <ParkingRightEntity>()), Times.Once); }