From bf22c44740601df23e96fbd8868d91c6697a1afc Mon Sep 17 00:00:00 2001 From: Alexis DRAI Date: Sun, 16 Oct 2022 18:49:08 +0200 Subject: [PATCH] :recycle: Rename Player to PlayerEntity in EF project for clarity --- Sources/App/Program.cs | 4 +++- Sources/Data/EF/DiceAppDbContext.cs | 2 +- Sources/Data/EF/Players/PlayerDBManager.cs | 16 ++++++++-------- Sources/Data/EF/Players/PlayerDbManager.cs | 16 ++++++++-------- Sources/Data/EF/Players/PlayerEntity.cs | 5 ++++- .../Data_UTs/DiceAppDbContextWithStubTest.cs | 2 +- .../Data_UTs/Players/PlayerDbManagerTest.cs | 15 +++++++-------- 7 files changed, 32 insertions(+), 28 deletions(-) diff --git a/Sources/App/Program.cs b/Sources/App/Program.cs index d0bc48b..bd66be8 100644 --- a/Sources/App/Program.cs +++ b/Sources/App/Program.cs @@ -40,7 +40,9 @@ namespace App // Later, we'll use the DiceAppDbContext to get a GameDbRunner // get all the players from the DB - IEnumerable entities = db.Players; + PlayerDbManager playerDbManager = new(db); + IEnumerable entities = await playerDbManager.GetAll(); + Debug.WriteLine("Loading players"); diff --git a/Sources/Data/EF/DiceAppDbContext.cs b/Sources/Data/EF/DiceAppDbContext.cs index a2dfae8..3588584 100644 --- a/Sources/Data/EF/DiceAppDbContext.cs +++ b/Sources/Data/EF/DiceAppDbContext.cs @@ -12,7 +12,7 @@ namespace Data.EF // will be async! public virtual Task LoadApp() { throw new NotImplementedException(); } - public DbSet Players { get; set; } + public DbSet PlayerEntity { get; set; } public DbSet NumberDice { get; set; } public DbSet NumberFaces { get; set; } public DbSet ImageDice { get; set; } diff --git a/Sources/Data/EF/Players/PlayerDBManager.cs b/Sources/Data/EF/Players/PlayerDBManager.cs index 3eb17db..99b9ab8 100644 --- a/Sources/Data/EF/Players/PlayerDBManager.cs +++ b/Sources/Data/EF/Players/PlayerDBManager.cs @@ -47,7 +47,7 @@ namespace Data.EF.Players { CleanPlayerEntity(toAdd); - if (db.Players.Where(entity => entity.Name == toAdd.Name).Any()) + if (db.PlayerEntity.Where(entity => entity.Name == toAdd.Name).Any()) { throw new ArgumentException("this username is already taken", nameof(toAdd)); } @@ -57,7 +57,7 @@ namespace Data.EF.Players private async Task InternalAdd(PlayerEntity toAdd) { - EntityEntry ee = await db.Players.AddAsync(toAdd); + EntityEntry ee = await db.PlayerEntity.AddAsync(toAdd); await db.SaveChangesAsync(); return (PlayerEntity)ee.Entity; } @@ -65,7 +65,7 @@ namespace Data.EF.Players public async Task> GetAll() { List players = new(); - await Task.Run(() => players.AddRange(db.Players)); + await Task.Run(() => players.AddRange(db.PlayerEntity)); return players.AsEnumerable(); } @@ -90,7 +90,7 @@ namespace Data.EF.Players private async Task InternalGetOneByName(string name) { - return await db.Players.Where(p => p.Name == name).FirstAsync(); + return await db.PlayerEntity.Where(p => p.Name == name).FirstAsync(); } public async Task IsPresentByName(string name) @@ -100,7 +100,7 @@ namespace Data.EF.Players return false; } name = name.Trim(); - return await db.Players.Where(p => p.Name == name).FirstOrDefaultAsync() is not null; + return await db.PlayerEntity.Where(p => p.Name == name).FirstOrDefaultAsync() is not null; } /// @@ -115,7 +115,7 @@ namespace Data.EF.Players bool isPresent = IsPresentByID(toRemove.ID).Result; if (isPresent) { - db.Players.Remove(toRemove); + db.PlayerEntity.Remove(toRemove); db.SaveChanges(); } } @@ -161,12 +161,12 @@ namespace Data.EF.Players /// public async Task GetOneByID(Guid ID) { - return await db.Players.FirstAsync(p => p.ID == ID); + return await db.PlayerEntity.FirstAsync(p => p.ID == ID); } public async Task IsPresentByID(Guid ID) { - return await db.Players.FirstOrDefaultAsync(p => p.ID == ID) is not null; + return await db.PlayerEntity.FirstOrDefaultAsync(p => p.ID == ID) is not null; } } } diff --git a/Sources/Data/EF/Players/PlayerDbManager.cs b/Sources/Data/EF/Players/PlayerDbManager.cs index 3eb17db..99b9ab8 100644 --- a/Sources/Data/EF/Players/PlayerDbManager.cs +++ b/Sources/Data/EF/Players/PlayerDbManager.cs @@ -47,7 +47,7 @@ namespace Data.EF.Players { CleanPlayerEntity(toAdd); - if (db.Players.Where(entity => entity.Name == toAdd.Name).Any()) + if (db.PlayerEntity.Where(entity => entity.Name == toAdd.Name).Any()) { throw new ArgumentException("this username is already taken", nameof(toAdd)); } @@ -57,7 +57,7 @@ namespace Data.EF.Players private async Task InternalAdd(PlayerEntity toAdd) { - EntityEntry ee = await db.Players.AddAsync(toAdd); + EntityEntry ee = await db.PlayerEntity.AddAsync(toAdd); await db.SaveChangesAsync(); return (PlayerEntity)ee.Entity; } @@ -65,7 +65,7 @@ namespace Data.EF.Players public async Task> GetAll() { List players = new(); - await Task.Run(() => players.AddRange(db.Players)); + await Task.Run(() => players.AddRange(db.PlayerEntity)); return players.AsEnumerable(); } @@ -90,7 +90,7 @@ namespace Data.EF.Players private async Task InternalGetOneByName(string name) { - return await db.Players.Where(p => p.Name == name).FirstAsync(); + return await db.PlayerEntity.Where(p => p.Name == name).FirstAsync(); } public async Task IsPresentByName(string name) @@ -100,7 +100,7 @@ namespace Data.EF.Players return false; } name = name.Trim(); - return await db.Players.Where(p => p.Name == name).FirstOrDefaultAsync() is not null; + return await db.PlayerEntity.Where(p => p.Name == name).FirstOrDefaultAsync() is not null; } /// @@ -115,7 +115,7 @@ namespace Data.EF.Players bool isPresent = IsPresentByID(toRemove.ID).Result; if (isPresent) { - db.Players.Remove(toRemove); + db.PlayerEntity.Remove(toRemove); db.SaveChanges(); } } @@ -161,12 +161,12 @@ namespace Data.EF.Players /// public async Task GetOneByID(Guid ID) { - return await db.Players.FirstAsync(p => p.ID == ID); + return await db.PlayerEntity.FirstAsync(p => p.ID == ID); } public async Task IsPresentByID(Guid ID) { - return await db.Players.FirstOrDefaultAsync(p => p.ID == ID) is not null; + return await db.PlayerEntity.FirstOrDefaultAsync(p => p.ID == ID) is not null; } } } diff --git a/Sources/Data/EF/Players/PlayerEntity.cs b/Sources/Data/EF/Players/PlayerEntity.cs index b7f1714..da1546b 100644 --- a/Sources/Data/EF/Players/PlayerEntity.cs +++ b/Sources/Data/EF/Players/PlayerEntity.cs @@ -1,4 +1,5 @@ -using Microsoft.EntityFrameworkCore; +using Data.EF.Games; +using Microsoft.EntityFrameworkCore; namespace Data.EF.Players { @@ -9,6 +10,8 @@ namespace Data.EF.Players public string Name { get; set; } + public ICollection Turns { get; set; } + public override bool Equals(object obj) { if (obj is not PlayerEntity) diff --git a/Sources/Tests/Data_UTs/DiceAppDbContextWithStubTest.cs b/Sources/Tests/Data_UTs/DiceAppDbContextWithStubTest.cs index 76ae758..9d7cb40 100644 --- a/Sources/Tests/Data_UTs/DiceAppDbContextWithStubTest.cs +++ b/Sources/Tests/Data_UTs/DiceAppDbContextWithStubTest.cs @@ -41,7 +41,7 @@ namespace Tests.Data_UTs // Assert - Assert.True(db.Players.Where(p => p.Name.Equals(name)).Any()); + Assert.True(db.PlayerEntity.Where(p => p.Name.Equals(name)).Any()); } } diff --git a/Sources/Tests/Data_UTs/Players/PlayerDbManagerTest.cs b/Sources/Tests/Data_UTs/Players/PlayerDbManagerTest.cs index 6978a6b..78d43d8 100644 --- a/Sources/Tests/Data_UTs/Players/PlayerDbManagerTest.cs +++ b/Sources/Tests/Data_UTs/Players/PlayerDbManagerTest.cs @@ -368,7 +368,7 @@ namespace Tests.Data_UTs.Players { db.Database.EnsureCreated(); - Assert.DoesNotContain(toRemove, db.Players); + Assert.DoesNotContain(toRemove, db.PlayerEntity); } } @@ -656,11 +656,9 @@ namespace Tests.Data_UTs.Players PlayerDbManager mgr; Guid id = Guid.NewGuid(); - - Guid otherId = Guid.NewGuid(); + Guid otherId; PlayerEntity presentEntity; - PlayerEntity absentEntity; // Act @@ -670,9 +668,10 @@ namespace Tests.Data_UTs.Players mgr = new(db); presentEntity = new() { ID = id, Name = "Victor" }; - await mgr.Add(presentEntity); - - absentEntity = new() { ID = otherId, Name = "Victor" }; + await mgr.Add(presentEntity); + + otherId = Guid.NewGuid(); + // not added } // Assert @@ -682,7 +681,7 @@ namespace Tests.Data_UTs.Players db.Database.EnsureCreated(); mgr = new(db); - Assert.DoesNotContain(absentEntity, db.Players); + Assert.False(await mgr.IsPresentByID(otherId)); } } }