public async void TestFindAll() { // Arrange var options = new DbContextOptionsBuilder <GatewayDbContext>().UseInMemoryDatabase("device_test_findall"); var db = new GatewayDbContext(options.Options); var gateway = new Gateway { Id = 1, Name = "ZZZ", IPv4 = "127.0.0.1", SerialNumber = "qwe123" }; var device = new Device { Id = 1, CreatedDate = new DateTime(), Status = Status.Online, UID = 1, Vendor = "Vendor", GatewayId = 1 }; var data = new List <Device> { device, new Device { Id = 2, CreatedDate = new DateTime(), Status = Status.Online, UID = 1, Vendor = "Vendor", GatewayId = 1 }, new Device { Id = 3, CreatedDate = new DateTime(), Status = Status.Online, UID = 1, Vendor = "Vendor", GatewayId = 1 } }; db.Add(gateway); db.AddRange(data); db.SaveChanges(); var repo = new DeviceRepository(db); // Act var result = await repo.FindAll(); // Assert Assert.Contains(device, result); }
public async void TestDuplicateUID() { // Arrange var gateway = new Gateway { Id = 1, Name = "ZZZ", IPv4 = "127.0.0.1", SerialNumber = "qwe123" }; var device = new Device { Id = 1, CreatedDate = new DateTime(), Status = Status.Online, UID = 1, Vendor = "Vendor", Gateway = gateway }; var device1 = new Device { Id = 2, CreatedDate = new DateTime(), Status = Status.Online, UID = 1, Vendor = "Vendor", Gateway = gateway }; var options = new DbContextOptionsBuilder <GatewayDbContext>().UseInMemoryDatabase("device_test_uid"); var db = new GatewayDbContext(options.Options); db.Add(device); db.SaveChanges(); var repo = new DeviceRepository(db); // Act var result = await repo.Create(device1); // Assert Assert.False(result.Status); }
public async void TestUpdate() { // Arrange var gateway = new Gateway { Id = 1, Name = "ZZZ", IPv4 = "127.0.0.1", SerialNumber = "qwe123" }; var device = new Device { Id = 1, CreatedDate = new DateTime(), Status = Status.Online, UID = 1, Vendor = "Vendor", Gateway = gateway }; var options = new DbContextOptionsBuilder <GatewayDbContext>().UseInMemoryDatabase("device_test_update"); var db = new GatewayDbContext(options.Options); // db.RemoveRange(db.Gateways); // await db.SaveChangesAsync(); db.Add(device); db.SaveChanges(); var repo = new DeviceRepository(db); // Act device.Vendor = "Vendor 1"; var result = await repo.Update(device); // Assert Assert.True(result.Status); Assert.Equal("Vendor 1", ((Device)result.Entity).Vendor); }
public async void TestDelete() { // Arrange var gateway = new Gateway { Id = 1, Name = "wee", IPv4 = "192.168.4.12", SerialNumber = "sdsd" }; var options = new DbContextOptionsBuilder <GatewayDbContext>().UseInMemoryDatabase("gateway_test_delete"); var db = new GatewayDbContext(options.Options); db.Add(gateway); db.SaveChanges(); var repo = new GatewayRepository(db); // Act gateway.IPv4 = "192.168.4.13"; var result = await repo.Delete(1); // Assert Assert.True(result.Status); }
public async void TestDuplicateSerialNumber() { // Arrange var gateway = new Gateway { Id = 1, Name = "wee", IPv4 = "192.168.4.1", SerialNumber = "sdsd" }; var gateway2 = new Gateway { Id = 2, Name = "qwe", IPv4 = "192.168.4.2", SerialNumber = "sdsd" }; var options = new DbContextOptionsBuilder <GatewayDbContext>().UseInMemoryDatabase("gateway_test_serial"); var db = new GatewayDbContext(options.Options); db.Add(gateway); db.SaveChanges(); var repo = new GatewayRepository(db); // Act var result = await repo.Create(gateway2); // Assert Assert.False(result.Status); }
public async void TestUpdate() { // Arrange var gateway = new Gateway { Id = 1, Name = "wee", IPv4 = "192.168.4.12", SerialNumber = "sdsd" }; var options = new DbContextOptionsBuilder <GatewayDbContext>().UseInMemoryDatabase("gateway_test_update"); var db = new GatewayDbContext(options.Options); // db.RemoveRange(db.Gateways); // await db.SaveChangesAsync(); db.Add(gateway); db.SaveChanges(); var repo = new GatewayRepository(db); // Act gateway.IPv4 = "192.168.4.13"; var result = await repo.Update(gateway); // Assert Assert.True(result.Status); Assert.Equal("192.168.4.13", ((Gateway)result.Entity).IPv4); }
public async void TestFindById() { // Arrange var options = new DbContextOptionsBuilder <GatewayDbContext>().UseInMemoryDatabase("device_test_findbyid"); var db = new GatewayDbContext(options.Options); var gateway = new Gateway { Id = 1, Name = "ZZZ", IPv4 = "127.0.0.1", SerialNumber = "qwe123" }; var device = new Device { Id = 1, CreatedDate = new DateTime(), Status = Status.Online, UID = 1, Vendor = "Vendor", Gateway = gateway }; db.Add(device); await db.SaveChangesAsync(); var repo = new DeviceRepository(db); // Act var result = await repo.FindById(1); // Assert Assert.Equal(1, result.UID); }