finish in memory
continuous-integration/drone/push Build is failing Details

pull/2/head
Bastien OLLIER 2 years ago
parent 7d1c4cec96
commit 43a5e6c351

@ -45,48 +45,58 @@ namespace TestUnitaire
} }
[Fact] [Fact]
public void ModifyTestInMemory() public void ModifyTestInMemory()
{ {//connection must be opened to use In-memory database
var options = new DbContextOptionsBuilder<ChampionContext>() var connection = new SqliteConnection("DataSource=:memory:");
.UseInMemoryDatabase(databaseName: "Modify_Test_database") connection.Open();
.Options;
var options = new DbContextOptionsBuilder<ChampionContext>()
//prepares the database with one instance of the context .UseSqlite(connection)
.Options;
using (var context = new ChampionContext(options))
{ //prepares the database with one instance of the context
ChampionEntity chewie = new ChampionEntity { Name = "Chewbacca", Bio = "Zeus is the king of the gods." }; using (var context = new ChampionContext(options))
ChampionEntity yoda = new ChampionEntity { Name = "Yoda", Bio = "Zeus is the king of the gods." }; {
ChampionEntity ewok = new ChampionEntity { Name = "Ewok", Bio = "Zeus is the king of the gods." }; //context.Database.OpenConnection();
context.Database.EnsureCreated();
context.Champions.Add(chewie);
context.Champions.Add(yoda); ChampionEntity chewie = new ChampionEntity { Name = "Chewbacca", Bio = "Zeus is the king of the gods." };
context.Champions.Add(ewok); ChampionEntity yoda = new ChampionEntity { Name = "Yoda", Bio = "Zeus is the king of the gods." };
context.SaveChanges(); ChampionEntity ewok = new ChampionEntity { Name = "Ewok", Bio = "Zeus is the king of the gods." };
}
//prepares the database with one instance of the context context.Champions.Add(chewie);
using (var context = new ChampionContext(options)) context.Champions.Add(yoda);
{ context.Champions.Add(ewok);
string nameToFind = "ew"; context.SaveChanges();
Assert.Equal(2, context.Champions.Where(n => n.Name.ToLower().Contains(nameToFind)).Count()); }
nameToFind = "ewo";
Assert.Equal(1, context.Champions.Where(n => n.Name.ToLower().Contains(nameToFind)).Count()); //uses another instance of the context to do the tests
var ewok = context.Champions.Where(n => n.Name.ToLower().Contains(nameToFind)).First(); using (var context = new ChampionContext(options))
ewok.Name = "Wicket"; {
context.SaveChanges(); context.Database.EnsureCreated();
}
string nameToFind = "ew";
//prepares the database with one instance of the context Assert.Equal(2, context.Champions.Where(n => n.Name.ToLower().Contains(nameToFind)).Count());
using (var context = new ChampionContext(options)) nameToFind = "wo";
{ Assert.Equal(1, context.Champions.Where(n => n.Name.ToLower().Contains(nameToFind)).Count());
string nameToFind = "ew"; var ewok = context.Champions.Where(n => n.Name.ToLower().Contains(nameToFind)).First();
Assert.Equal(1, context.Champions.Where(n => n.Name.ToLower().Contains(nameToFind)).Count()); ewok.Name = "Wicket";
nameToFind = "wick"; context.SaveChanges();
Assert.Equal(1, context.Champions.Where(n => n.Name.ToLower().Contains(nameToFind)).Count()); }
}
} //uses another instance of the context to do the tests
} using (var context = new ChampionContext(options))
{
context.Database.EnsureCreated();
string nameToFind = "ew";
Assert.Equal(1, context.Champions.Where(n => n.Name.ToLower().Contains(nameToFind)).Count());
nameToFind = "wick";
Assert.Equal(1, context.Champions.Where(n => n.Name.ToLower().Contains(nameToFind)).Count());
}
}
}
} }

Loading…
Cancel
Save