public void ToString_FormsEntryRepresentation() { String actual = new LoggableEntry(entry).ToString(); String expected = FormExpectedMessage(entry); Assert.AreEqual(expected, actual); }
public void LoggableEntry_SetsEntityBaseTypeThenEntityIsProxied() { Type actual = new LoggableEntry(entry).EntityType; Type expected = model.GetType(); Assert.AreEqual("System.Data.Entity.DynamicProxies", entry.Entity.GetType().Namespace); Assert.AreEqual(expected, actual); }
public void LoggableEntry_SetsState() { entry.State = EntityState.Deleted; String expected = entry.State.ToString().ToLower(); String actual = new LoggableEntry(entry).State; Assert.AreEqual(expected, actual); }
public void LoggableEntry_SetsEntityTypeThenEntityIsNotProxied() { entry = context.Entry(context.Set <Role>().Add(new Role())); Type actual = new LoggableEntry(entry).EntityType; Type expected = model.GetType(); Assert.AreNotEqual("System.Data.Entity.DynamicProxies", entry.Entity.GetType().Namespace); Assert.AreEqual(expected, actual); }
public void LoggableEntry_CreatesProperties() { DbPropertyValues originalValues = entry.GetDatabaseValues(); IEnumerable <String> properties = originalValues.PropertyNames; IEnumerable <LoggablePropertyEntry> expected = properties.Select(name => new LoggablePropertyEntry(entry.Property(name), originalValues[name])); IEnumerable <LoggablePropertyEntry> actual = new LoggableEntry(entry).Properties; TestHelper.EnumPropertyWiseEqual(expected, actual); }
public void Log_LogsFormattedMessage() { entry.State = EntityState.Added; logger.Log(new[] { entry }); logger.Save(); String actual = context.Set <Log>().Single().Message; String expected = new LoggableEntry(entry).ToString(); Assert.AreEqual(expected, actual); }
private String FormExpectedMessage(DbEntityEntry entry) { LoggableEntry loggableEntry = new LoggableEntry(entry); StringBuilder messageBuilder = new StringBuilder(); messageBuilder.AppendFormat("{0} {1}:{2}", loggableEntry.EntityType.Name, loggableEntry.State, Environment.NewLine); foreach (LoggablePropertyEntry property in loggableEntry.Properties) { messageBuilder.AppendFormat(" {0}{1}", property, Environment.NewLine); } return(messageBuilder.ToString()); }