public void 操作真實資料庫_手動取得Repository執行個體() { //arrange DefaultDbContextManager.Now = new DateTime(1900, 1, 1); DefaultDbContextManager.SetPhysicalDatabase <EmployeeDbContext>(); var repository = new EmployeeRepository(); repository.NewAsync(new NewRequest { Account = "yao", Password = "******", Name = "余小章", Age = 18, Remark = "測試案例,持續航向偉大航道" }, "TestUser").Wait(); using var db = new TestEmployeeDbContext(TestDbConnectionString1); var id = db.Employees.FirstOrDefault(p => p.Name == "余小章").Id; //act var count = repository.InsertLogAsync(new InsertOrderRequest { Employee_Id = id, Product_Id = "A001", Product_Name = "羅技滑鼠", Remark = "測試案例,持續航向偉大航道" }, "TestUser").Result; //assert Assert.AreEqual(1, count); }
public void 操作真實資料庫_預設EmployeeDbContext() { //arrange DefaultDbContextManager.Now = new DateTime(1900, 1, 1); DefaultDbContextManager.SetPhysicalDatabase <EmployeeDbContext>(); var builder = Host.CreateDefaultBuilder() .ConfigureServices(services => { services.AddSingleton <EmployeeRepository>(); }); var host = builder.Build(); var repository = host.Services.GetService <EmployeeRepository>(); //act var count = repository.NewAsync(new NewRequest { Account = "yao", Password = "******", Name = "余小章", Age = 18, }, "TestUser").Result; //assert Assert.AreEqual(2, count); using var db = new TestEmployeeDbContext(TestDbConnectionString1); var actual = db.Employees .Include(p => p.Identity) .AsNoTracking() .FirstOrDefault(); Assert.AreEqual(actual.Name, "余小章"); Assert.AreEqual(actual.Age, 18); Assert.AreEqual(actual.Identity.Account, "yao"); Assert.AreEqual(actual.Identity.Password, "123456"); }
public void 操作記憶體() { DefaultDbContextManager.Now = new DateTime(1900, 1, 1); DefaultDbContextManager.SetMemoryDatabase <EmployeeDbContext>(); var builder = Host.CreateDefaultBuilder() .ConfigureServices(services => { services.AddSingleton <EmployeeRepository>(); }); var host = builder.Build(); var repository = host.Services.GetService <EmployeeRepository>(); var count = repository.NewAsync(new NewRequest(), "TestUser").Result; Assert.AreEqual(2, count); }