public void InteractorCallsRepositoryToStoreInformation() { var request = new StoreInformationRequest { }; var repositorySpy = new StoreInformationRepositorySpy(); var interactor = new StoreInformationInteractor(repositorySpy); interactor.Execute(request); Assert.Equal(1, repositorySpy.NumberOfStoreInformationCalls); }
public void InteractorCallsRepositoryWithBasicInformationFromRequest() { var id = Guid.NewGuid().ToString(); var request = new StoreInformationRequest { Id = id }; var repositorySpy = new StoreInformationRepositorySpy(); var interactor = new StoreInformationInteractor(repositorySpy); interactor.Execute(request); Assert.Equal(id, repositorySpy.LastRequest.Id); }
public void StoreInformation(InformationRequest request) { var storeInformationRequest = new StoreInformationRequestFromServiceRequestFactory( new IStringToObject[] { new NullableBooleanFromStringFactory(), new NullableIntegerFromStringFactory(), new NullableDateTimeFromStringFactory() } ).CreateRequest(request); var mongoClient = new MongoClient(); var repository = new StoreInformationMongoDatabaseRepository(mongoClient.GetDatabase("information-store")); var interactor = new StoreInformationInteractor(repository); interactor.Execute(storeInformationRequest); }
public void InteractorCallsRepositoryWithInformationPropertiesFromRequest() { var id = Guid.NewGuid().ToString(); var request = new StoreInformationRequest { Properties = new[] { new InformationProperty { Name = "title", Values = new[] { "Sportschuh" } }, new InformationProperty { Name = "price", Values = new object[] { 12.45 } } } }; var repositorySpy = new StoreInformationRepositorySpy(); var interactor = new StoreInformationInteractor(repositorySpy); interactor.Execute(request); Assert.Equal( JsonConvert.SerializeObject(request.Properties), JsonConvert.SerializeObject(repositorySpy.LastRequest.Properties) ); }