예제 #1
0
        public void GetSiteModels()
        {
            var sm = new TRex.SiteModels.SiteModels(TRex.Storage.Models.StorageMutability.Immutable);

            sm.GetSiteModels().Should().NotBeNull();
            sm.GetSiteModels().Count.Should().Be(0);

            var siteModel = sm.GetSiteModel(Guid.NewGuid(), true);

            sm.GetSiteModels().Should().NotBeNull();
            sm.GetSiteModels().Count.Should().Be(1);
            sm.GetSiteModels()[0].Should().BeEquivalentTo(siteModel);
        }
예제 #2
0
        public void GetSiteModel_WithMarkedForDeletion_Suppression()
        {
            var sm = new TRex.SiteModels.SiteModels(TRex.Storage.Models.StorageMutability.Immutable);

            var siteModelId = Guid.NewGuid();
            var siteModel   = sm.GetSiteModel(siteModelId, true);

            siteModel.SetStorageRepresentationToSupply(StorageMutability.Mutable);

            siteModel.MarkForDeletion();

            sm.GetSiteModel(siteModelId, false).Should().BeNull("Site models marked for deletion cannot be returned for standard query operations");
        }
예제 #3
0
        public void GetSiteModelRaw_WithoutMarkedForDeletion()
        {
            var sm = new TRex.SiteModels.SiteModels(TRex.Storage.Models.StorageMutability.Immutable);

            var siteModelId = Guid.NewGuid();
            var siteModel   = sm.GetSiteModel(siteModelId, true);

            siteModel.SaveMetadataToPersistentStore(siteModel.PrimaryStorageProxy, true);

            var queriedSiteModel = sm.GetSiteModelRaw(siteModelId);

            queriedSiteModel.Should().NotBeNull();
            queriedSiteModel.ID.Should().Be(siteModelId);
        }
예제 #4
0
        public void GetSiteModelRaw_WithMarkedForDeletion()
        {
            var sm = new TRex.SiteModels.SiteModels(TRex.Storage.Models.StorageMutability.Immutable);

            var siteModelId = Guid.NewGuid();
            var siteModel   = sm.GetSiteModel(siteModelId, true);

            siteModel.SetStorageRepresentationToSupply(StorageMutability.Mutable);

            siteModel.MarkForDeletion();

            var queriedSiteModel = sm.GetSiteModelRaw(siteModelId);

            queriedSiteModel.Should().NotBeNull();
            queriedSiteModel.ID.Should().Be(siteModelId);
        }
예제 #5
0
        public void Creation()
        {
            var sm = new TRex.SiteModels.SiteModels(TRex.Storage.Models.StorageMutability.Immutable);

            sm.Should().NotBeNull();
        }