Example #1
0
        public async Task can_delete_a_document_by_id_and_tenant_long()
        {
            var target = new LongDoc {
                Id = 5
            };

            using (var session = theStore.LightweightSession("Red"))
            {
                session.Store(target);
                await session.SaveChangesAsync();
            }

            using (var session = theStore.LightweightSession("Blue"))
            {
                session.Store(target);
                await session.SaveChangesAsync();
            }

            using (var session = theStore.LightweightSession())
            {
                session.Logger = new TestOutputMartenLogger(_output);
                session.ForTenant("Blue").Delete <LongDoc>(target.Id);
                await session.SaveChangesAsync();
            }

            var red = theStore.QuerySession("Blue");

            (await red.LoadAsync <LongDoc>(target.Id)).ShouldBeNull();

            var blue = theStore.QuerySession("Red");

            (await blue.LoadAsync <LongDoc>(target.Id)).ShouldNotBeNull();
        }
Example #2
0
        public async Task hard_delete_by_document_and_tenant_by_long()
        {
            var doc1 = new LongDoc {
                Id = 5000
            };

            theSession.ForTenant("red").Store(doc1);
            theSession.ForTenant("blue").Store(doc1);

            await theSession.SaveChangesAsync();

            theSession.ForTenant("red").HardDelete(doc1);

            using var query = theStore.QuerySession();

            var redCount = await query.Query <LongDoc>().Where(x => x.TenantIsOneOf("red"))
                           .CountAsync();

            redCount.ShouldBe(0);

            var blueCount = await query.Query <LongDoc>().Where(x => x.TenantIsOneOf("blue"))
                            .CountAsync();

            blueCount.ShouldBe(1);
        }
Example #3
0
        public void hard_delete_a_document_row_state_long()
        {
            using var session = theStore.OpenSession();
            var doc = new LongDoc();

            session.Store(doc);
            session.SaveChanges();

            session.HardDelete <LongDoc>(doc.Id);
            session.SaveChanges();

            assertDocumentIsHardDeleted <LongDoc>(session, doc.Id);
        }
Example #4
0
        public async Task persist_and_load()
        {
            var LongDoc = new LongDoc {
                Id = 456
            };

            theSession.Store(LongDoc);
            await theSession.SaveChangesAsync();

            using var session = theStore.OpenSession();
            session.Load <LongDoc>(456).ShouldNotBeNull();

            session.Load <LongDoc>(222).ShouldBeNull();
        }
        public async Task stream_by_long_id_hit()
        {
            var doc = new LongDoc();

            theSession.Store(doc);
            await theSession.SaveChangesAsync();

            var stream = new MemoryStream();
            var found  = await theSession.Json.StreamById <LongDoc>(doc.Id, stream);

            found.ShouldBeTrue();

            var target = deserialize <LongDoc>(stream);

            target.Id.ShouldBe(doc.Id);
        }
Example #6
0
        public void persist_and_delete()
        {
            var LongDoc = new LongDoc {
                Id = 567
            };

            theSession.Store(LongDoc);
            theSession.SaveChanges();

            using (var session = theStore.OpenSession())
            {
                session.Delete <LongDoc>((int)LongDoc.Id);
                session.SaveChanges();
            }

            using (var session = theStore.OpenSession())
            {
                SpecificationExtensions.ShouldBeNull(session.Load <LongDoc>(LongDoc.Id));
            }
        }
Example #7
0
        public void auto_assign_id_for_0_id()
        {
            var doc = new LongDoc {
                Id = 0
            };

            theSession.Store(doc);

            SpecificationExtensions.ShouldBeGreaterThan(doc.Id, 0L);

            var doc2 = new LongDoc {
                Id = 0
            };

            theSession.Store(doc2);

            doc2.Id.ShouldNotBe(0L);

            doc2.Id.ShouldNotBe(doc.Id);
        }