public void Node_NoReloadAfterSave()
{
//-- initialization if it is the first test
var content = Content.CreateNew("Car", TestRoot, null);
content.Save();
content.DeletePhysical();
//-- test
using (var loggedDataProvider = new LoggedDataProvider())
{
content = Content.CreateNew("Car", TestRoot, null);
content.Save();
var log = loggedDataProvider._GetLogAndClear();
Assert.IsTrue(!log.Contains("LoadNodes(buildersByVersionId="), "Node is reloaded from database.");
}
var proc = DataProvider.CreateDataProcedure("SELECT N.[Timestamp], V.[Timestamp] FROM Nodes N JOIN Versions V ON N.NodeId = V.NodeId WHERE N.NodeId = @NodeId");
proc.CommandType = System.Data.CommandType.Text;
var prm = DataProvider.CreateParameter();
prm.ParameterName = "@NodeId";
prm.DbType = System.Data.DbType.Int32;
prm.Value = content.Id;
proc.Parameters.Add(prm);
long nodeTimestamp, versionTimestamp;
using (var r = proc.ExecuteReader())
{
r.Read();
nodeTimestamp = DataProvider.GetLongFromBytes((byte[])r[0]);
versionTimestamp = DataProvider.GetLongFromBytes((byte[])r[1]);
}
Assert.IsTrue(content.ContentHandler.NodeTimestamp == nodeTimestamp, "Nodetimestamps are not equal.");
Assert.IsTrue(content.ContentHandler.VersionTimestamp == versionTimestamp, "Versiontimestamps are not equal.");
}