public void SetNewLocation_GivenVisitorHasNoHistory_ExpectRandomRequested() { Visitor visitor = new Visitor(); VisitorFairyTaleStrategy strategy = new VisitorFairyTaleStrategy(eventProducerMock.Object, fairyTaleClientMock.Object); strategy.SetNewLocation(visitor); fairyTaleClientMock.Verify(client => client.GetRandomFairyTale(), Times.Once); fairyTaleClientMock.Verify(client => client.GetNewFairyTaleLocation(It.IsAny <Guid>(), It.IsAny <List <Guid> >()), Times.Never); }
public void SetNewLocation_GivenVisitorHasRideAsLatestLocation_ExpectRandomRequested() { Visitor visitor = new Visitor(); RideDto location = new RideDto(); location.LocationType = LocationType.RIDE; visitor.VisitedLocations.Add(DateTime.Now, location); VisitorFairyTaleStrategy strategy = new VisitorFairyTaleStrategy(eventProducerMock.Object, fairyTaleClientMock.Object); strategy.SetNewLocation(visitor); fairyTaleClientMock.Verify(client => client.GetRandomFairyTale(), Times.Once); fairyTaleClientMock.Verify(client => client.GetNewFairyTaleLocation(It.IsAny <Guid>(), It.IsAny <List <Guid> >()), Times.Never); }
public void StartLocationActivity_GivenCorrectData_ExpectCorrectCalls() { Visitor visitor = new Visitor(); FairyTaleDto fairyTaleDto = new FairyTaleDto(); visitor.TargetLocation = fairyTaleDto; VisitorFairyTaleStrategy strategy = new VisitorFairyTaleStrategy(eventProducerMock.Object, fairyTaleClientMock.Object); strategy.StartLocationActivity(visitor); var eventPayload = new Dictionary <string, string> { { "Visitor", visitor.Guid.ToString() }, { "FairyTale", fairyTaleDto.Guid.ToString() } }; Event producedEvent = new Event(EventType.ArrivedAtFairyTale, EventSource.Visitor, eventPayload); eventProducerMock.Verify(producer => producer.Produce(It.Is <Event>(a => a.Equals(producedEvent))), Times.Once); }