public void LoggedDataProvider_RightWrappingAndRestoring() { var dataProvider = DataProvider.Current; using (var loggedDataProvider = new LoggedDataProvider()) { Assert.ReferenceEquals(loggedDataProvider, DataProvider.Current); } Assert.ReferenceEquals(dataProvider, DataProvider.Current); }
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."); }
public void NodeData_RemoveStreamsAndLongTexts_CalledOnce() { using (var loggedDataProvider = new LoggedDataProvider()) { var content = Content.CreateNew("Car", TestRoot, null); content["Description"] = "desc"; content.Save(); var id = content.Id; var log1 = loggedDataProvider._GetLogAndClear(); Assert.IsTrue(log1.Contains("IsCacheableText("), "IsCacheableText method is not called."); content = Content.Load(id); var log2 = loggedDataProvider._GetLogAndClear(); Assert.IsTrue(!log2.Contains("IsCacheableText("), "IsCacheableText method is called."); } }