public void SimpleCodeFirstSelect() { MovieDBContext db = new MovieDBContext(); var l = db.Movies.ToList(); foreach (var i in l) { } }
public void AlterTableTest() { MovieDBContext db = new MovieDBContext(); var l = db.MovieFormats.ToList(); foreach (var i in l) { } MovieFormat m = new MovieFormat(); m.Format = 8.0f; db.MovieFormats.Add(m); db.SaveChanges(); }
public void ConcurrencyCheck() { using (MovieDBContext db = new MovieDBContext()) { db.Database.ExecuteSqlCommand( @"DROP TABLE IF EXISTS `test3`.`MovieReleases`"); db.Database.ExecuteSqlCommand( @"CREATE TABLE `MovieReleases` ( `Id` int(11) NOT NULL, `Name` varbinary(45) NOT NULL, `Timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`Id`) ) ENGINE=InnoDB DEFAULT CHARSET=binary"); MySqlTrace.Listeners.Clear(); MySqlTrace.Switch.Level = SourceLevels.All; GenericListener listener = new GenericListener(); MySqlTrace.Listeners.Add(listener); try { MovieRelease mr = db.MovieReleases.Create(); mr.Id = 1; mr.Name = "Commercial"; db.MovieReleases.Add(mr); db.SaveChanges(); mr.Name = "Director's Cut"; db.SaveChanges(); } finally { db.Database.ExecuteSqlCommand(@"DROP TABLE IF EXISTS `MovieReleases`"); } // Check sql Regex rx = new Regex(@"Query Opened: (?<item>UPDATE .*)", RegexOptions.Compiled | RegexOptions.Singleline); foreach (string s in listener.Strings) { Match m = rx.Match(s); if (m.Success) { CheckSql(m.Groups["item"].Value, SQLSyntax.UpdateWithSelect); Assert.Pass(); } } Assert.Fail(); } }
public void CallStoredProcedure() { using (MovieDBContext context = new MovieDBContext()) { int count = context.Database.SqlQuery<int>("GetCount").First(); Assert.AreEqual(5, count); } }
public void CheckByteArray() { MovieDBContext db = new MovieDBContext(); string dbCreationScript = ((IObjectContextAdapter)db).ObjectContext.CreateDatabaseScript(); Regex rx = new Regex(@"`Data` (?<type>[^\)]*)", RegexOptions.Compiled | RegexOptions.Singleline); Match m = rx.Match(dbCreationScript); Assert.AreEqual(m.Groups["type"].Value, "longblob"); }