Esempio n. 1
0
        public void MultiTenantEntity_BasicCrud([Values("sqlserver", "sqlite")] string databaseEngine)
        {
            using (var dataContext = this.BuildDataContext(databaseEngine))
            {
                Assert.AreEqual(TENANT_ID, dataContext.TenantId, "Wrong data context tenant id.");

                //insert

                dataContext.MockMultiTenantEntityRepository.Insert(new MockMultiTenantEntity
                {
                    //IsDeleted = false,
                    //TenantId = 0,
                    //Id = 1,
                    Name = "Name"
                });

                dataContext.Save();

                MockMultiTenantEntity mockMultiTenantEntity = dataContext.MockMultiTenantEntityRepository.FindOneBy(x => x.Name == "Name");

                Assert.IsNotNull(mockMultiTenantEntity, "Entity is null.");
                Assert.AreEqual(TENANT_ID, mockMultiTenantEntity.TenantId, "Wrong tenant id.");
                Assert.AreEqual("Name", mockMultiTenantEntity.Name, "Wrong name.");

                //update (range)

                mockMultiTenantEntity.Name = "NAME";

                dataContext.MockMultiTenantEntityRepository.Update(new List <MockMultiTenantEntity>()
                {
                    mockMultiTenantEntity
                });

                dataContext.Save();

                mockMultiTenantEntity = dataContext.MockMultiTenantEntityRepository.FindManyBy(x => x.Name == "NAME").FirstOrDefault();

                Assert.IsNotNull(mockMultiTenantEntity, "Entity is null.");
                Assert.AreEqual("NAME", mockMultiTenantEntity.Name, "Wrong name.");

                //delete

                dataContext.MockMultiTenantEntityRepository.Delete(new List <MockMultiTenantEntity>()
                {
                    mockMultiTenantEntity
                });

                dataContext.Save();

                mockMultiTenantEntity = dataContext.MockMultiTenantEntityRepository.FindOneBy(x => x.Name == "NAME");

                Assert.IsNull(mockMultiTenantEntity, "Entity is not null.");

                dataContext.Rollback();
            }
        }
Esempio n. 2
0
        public void TenantLessDataContext_BasicCrud([Values("sqlserver", "sqlite")] string databaseEngine)
        {
            using (var dataContext = this.BuildDataContext(databaseEngine, null, IsolationLevel.ReadUncommitted))
            {
                Assert.IsNull(dataContext.TenantId, "Wrong data context tenant id.");

                //insert

                dataContext.MockMultiTenantEntityRepository.Insert(new MockMultiTenantEntity
                {
                    //IsDeleted = false,
                    //TenantId = 0,
                    //Id = 1,
                    Name = "Name"
                });

                dataContext.Save();

                MockMultiTenantEntity mockMultiTenantEntity = dataContext.MockMultiTenantEntityRepository.FindOneBy(x => x.Name == "Name");

                Assert.IsNotNull(mockMultiTenantEntity, "Entity is null.");
                Assert.AreEqual(0, mockMultiTenantEntity.TenantId, "Wrong tenant id after update.");
                Assert.AreEqual("Name", mockMultiTenantEntity.Name, "Wrong name.");

                //update

                mockMultiTenantEntity.Name     = "NAME";
                mockMultiTenantEntity.TenantId = TENANT_ID;

                dataContext.MockMultiTenantEntityRepository.Update(mockMultiTenantEntity);

                dataContext.Save();

                mockMultiTenantEntity = dataContext.MockMultiTenantEntityRepository.FindOneBy(x => x.Name == "NAME");

                Assert.IsNotNull(mockMultiTenantEntity, "Entity is null.");
                Assert.AreEqual("NAME", mockMultiTenantEntity.Name, "Wrong name.");
                Assert.AreEqual(TENANT_ID, mockMultiTenantEntity.TenantId, "Wrong tenant id after update.");

                dataContext.Rollback();
            }
        }