public void GetMetadata_ResourceNameNotExistLayerNameNotExist_ReturnedNull() { var documentSessionProvider = new DocumentSessionProvider(Store); var repository = new MetadataRepository(documentSessionProvider, new FakeMetadataMerger()); IMetadata metadata = repository.GetMetadata("Not Existed Resource", "Not Existed Layer"); Assert.IsNull(metadata); }
public void FindMetadata_SearchStringIsResourceNameLayerNameIsInvalid_ReturnedEmpty() { var documentSessionProvider = new DocumentSessionProvider(Store); var repository = new MetadataRepository(documentSessionProvider, new FakeMetadataMerger()); var metadataList = repository.FindMetadata(ResourceName1, "Not Existed Layer"); Assert.AreEqual(0, metadataList.Count()); }
public void GetById_WithValidId_Succeed() { var fakeEntity = CreateFakeEntity(); var documentSessionProvider = new DocumentSessionProvider(Store); var fakeRepository = new FakeRepository(documentSessionProvider); var fakeEntity2 = fakeRepository.GetById(fakeEntity.Id); Assert.IsNotNull(fakeEntity2); }
public void GetMetadata_ResourceNameExistLayerNameExist_ReturnedTheMetadata() { var documentSessionProvider = new DocumentSessionProvider(Store); var repository = new MetadataRepository(documentSessionProvider, new FakeMetadataMerger()); IMetadata metadata = repository.GetMetadata(ResourceName1, LayerName1); Assert.IsNotNull(metadata); Assert.AreEqual(ResourceName1, metadata.ResourceName); }
public void FindMetadata_SearchStringIsResourceNameLayerNameIsValid_ReturnedOneMetadata() { var documentSessionProvider = new DocumentSessionProvider(Store); var repository = new MetadataRepository(documentSessionProvider, new FakeMetadataMerger()); var metadataList = repository.FindMetadata(ResourceName1, LayerName1); Assert.AreEqual(1, metadataList.Count()); Assert.AreEqual(ResourceName1, metadataList.First().ResourceName); }
public void FindMetadata_SearchStringIsWildchardResourceName_ReturnedTwoMetadata() { var documentSessionProvider = new DocumentSessionProvider(Store); var repository = new MetadataRepository(documentSessionProvider, new FakeMetadataMerger()); var metadataList = repository.FindMetadata("PatientModule.Web.PatientDto.*"); Assert.AreEqual(2, metadataList.Count()); Assert.AreEqual(1, metadataList.Where(x => x.ResourceName == ResourceName1).Count()); Assert.AreEqual(1, metadataList.Where(x => x.ResourceName == ResourceName2).Count()); }
public void MakePersistent_UpdateEntity_Succeed() { var fakeEntity = CreateFakeEntity(); var documentSessionProvider = new DocumentSessionProvider(Store); var fakeRepository = new FakeRepository(documentSessionProvider); fakeEntity.Name = "Changed"; fakeRepository.MakePersistent(fakeEntity); fakeRepository.SaveChanges(); using (var session = Store.OpenSession()) { var fakeEntity2 = session.Load <FakeEntity> (fakeEntity.Id); Assert.AreEqual("Changed", fakeEntity2.Name); } }
public void MakePersistent_AddNewEntity_Succeed() { var fakeEntity = new FakeEntity { Name = "Fake" }; var documentSessionProvider = new DocumentSessionProvider(Store); var fakeRespository = new FakeRepository(documentSessionProvider); fakeRespository.MakePersistent(fakeEntity); fakeRespository.SaveChanges(); using (var session = Store.OpenSession()) { var fakeEntity2 = session.Load <FakeEntity> (fakeEntity.Id); Assert.IsNotNull(fakeEntity2); } }
public void MakeTransient_WithValidEntity_Succeed() { var fakeEntity = CreateFakeEntity(); var documentSessionProvider = new DocumentSessionProvider(Store); var fakeRepository = new FakeRepository(documentSessionProvider); var deletingEntity = fakeRepository.GetById(fakeEntity.Id); fakeRepository.MakeTransient(deletingEntity); fakeRepository.SaveChanges(); using (var session = Store.OpenSession()) { var entities = session.Query <FakeEntity> (); Assert.AreEqual(0, entities.Count()); } }
protected virtual IDocumentSession CreateSession(Action <StoreOptions>?storeOptions = null) { return(DocumentSessionProvider.Get(SchemaName, storeOptions)); }
public DatabaseInitializationService( IDocumentStore documentStore,DocumentSessionProvider sessionProvider,Optional<SiteSettingsDocument> siteSettings ) { this.documentStore = documentStore; this.sessionProvider = sessionProvider; this.siteSettings = siteSettings; }