public void TestNonGenricEnumerator() { CacheLoggingService service = GetLogsService(); Tuple <Foobar, BarredFoo> objects = CreateObjects(); service.LogMessage("Logging object 1", objects.Item1, LogLevel.Debug, "Foobar log"); service.LogMessage("Logging object 2", objects.Item2, LogLevel.Debug, "BarredFoo log"); ILogEnumerable <Foobar> collection = service.GetLogs <Foobar>(); Log <Foobar>[] logs = collection.ToArray(); int index = 0; foreach (Log <Foobar> log in ((IEnumerable)collection)) { Assert.Equal(log, logs[index]); index++; } int collectionCount = collection.Count(); Assert.Equal(1, collectionCount); index = 0; foreach (Log <Foobar> log in ((IEnumerable)collection)) { Assert.Equal(log, logs[index]); index++; } }
public void TestCachedEnumeration() { TextLoggingService service = GetLogsService(); ClearTestLogDirectory(service); Tuple <Foobar, BarredFoo> objects = CreateObjects(); service.LogMessage("Logging object 1", objects.Item1, LogLevel.Debug, "Foobar log"); service.LogMessage("Logging object 2", objects.Item2, LogLevel.Debug, "BarredFoo log"); ILogEnumerable <object> collection = service.GetLogs <object>(); Log <object>[] logs = collection.ToArray(); int index = 0; foreach (Log <object> log in collection) { Assert.Equal(log, logs[index]); index++; } int collectionCount = collection.Count(); Assert.Equal(2, collectionCount); index = 0; foreach (Log <object> log in collection) { Assert.Equal(log, logs[index]); index++; } ClearTestLogDirectory(service); }