public async Task TestCreate() { Character newCharacter = new Character() { Name = "Leia Organa", Episodes = new string[] { "NEWHOPE", "EMPIRE", "JEDI" }, Planet = "Alderaan", Friends = new string[] { "Luke Skywalker", "Han Solo", "C-3PO", "R2-D2" } }; using (StarWarsContext context = await CreateContext("TestCreate")) { Repository <Character> repository = new Repository <Character>(context); Character result = await repository.Create(newCharacter); Assert.AreEqual(3, context.Set <Character>().Count()); Assert.IsTrue(newCharacter.IsDataEqual(result)); } }
private async Task <StarWarsContext> CreateContext(string databaseName) { DbContextOptions <StarWarsContext> options = new DbContextOptionsBuilder <StarWarsContext>().UseInMemoryDatabase(databaseName).Options; StarWarsContext context = new StarWarsContext(options); context.Set <Character>().AddRange(TestData.GetCharacters()); await context.SaveChangesAsync(); return(context); }
public async Task TestDelete() { using (StarWarsContext context = await CreateContext("TestDelete")) { Repository <Character> repository = new Repository <Character>(context); Character result = await repository.Delete(2); Assert.AreEqual(1, context.Set <Character>().Count()); Assert.IsTrue(TestData.GetCharacters()[1].IsDataEqual(result)); } }
public async Task <T> Create(T entity) { T item = (await dbContext.Set <T>().AddAsync(entity)).Entity; await dbContext.SaveChangesAsync(); return(item); }
public async Task TestUpdate() { using (StarWarsContext context = await CreateContext("TestUpdate")) { Character updatedCharacter = context.Set <Character>().Find(1); updatedCharacter.Name = "Lucas Skywalker"; Repository <Character> repository = new Repository <Character>(context); Character result = await repository.Update(updatedCharacter); Assert.IsTrue(updatedCharacter.IsDataEqual(result)); } }
public CharacterRepository(StarWarsContext context) { this.context = context; entities = context.Set <Character>(); }
//zwraca całą kolekcję w postaci listy public async Task <ICollection <T> > GetAllAsync() { return(await _db.Set <T>().ToListAsync()); }
public Repository(StarWarsContext context) { this.context = context; entities = context.Set <T>(); }