Example #1
0
        public void TestFillDefault_SingleColumn()
        {
            var entries = new LogBufferList(Core.Columns.RawContent, Core.Columns.LogLevel);

            entries.Add(new ReadOnlyLogEntry(new Dictionary <IColumnDescriptor, object> {
                { Core.Columns.RawContent, "I" }, { Core.Columns.LogLevel, LevelFlags.Debug }
            }));
            entries.Add(new ReadOnlyLogEntry(new Dictionary <IColumnDescriptor, object> {
                { Core.Columns.RawContent, "want" }, { Core.Columns.LogLevel, LevelFlags.Info }
            }));
            entries.Add(new ReadOnlyLogEntry(new Dictionary <IColumnDescriptor, object> {
                { Core.Columns.RawContent, "a" }, { Core.Columns.LogLevel, LevelFlags.Warning }
            }));
            entries.Add(new ReadOnlyLogEntry(new Dictionary <IColumnDescriptor, object> {
                { Core.Columns.RawContent, "Clondyke" }, { Core.Columns.LogLevel, LevelFlags.Error }
            }));
            entries.Add(new ReadOnlyLogEntry(new Dictionary <IColumnDescriptor, object> {
                { Core.Columns.RawContent, "Bar" }, { Core.Columns.LogLevel, LevelFlags.Fatal }
            }));

            entries.FillDefault(Core.Columns.RawContent, 1, 3);
            entries.Count.Should().Be(5, "because the count shouldn't have been modified");

            entries[0].RawContent.Should().Be("I", "because the first entry's raw content should NOT have been overwritten");
            entries[0].LogLevel.Should().Be(LevelFlags.Debug, "because the first entry's raw content should NOT have been overwritten");

            entries[1].RawContent.Should().Be(null, "because the second entry's raw content should have been overwritten");
            entries[1].LogLevel.Should().Be(LevelFlags.Info, "because the second entry's raw content should NOT have been overwritten");

            entries[2].RawContent.Should().Be(null, "because the third entry's raw content should have been overwritten");
            entries[2].LogLevel.Should().Be(LevelFlags.Warning, "because the third entry's log level should NOT have been overwritten");

            entries[3].RawContent.Should().Be(null, "because the fourth entry's raw content should have been overwritten");
            entries[3].LogLevel.Should().Be(LevelFlags.Error, "because the fourth entry's log level should NOT have been overwritten");

            entries[4].RawContent.Should().Be("Bar", "because the fifth entry's raw content should NOT have been overwritten");
            entries[4].LogLevel.Should().Be(LevelFlags.Fatal, "because the fifth entry's log level should NOT have been overwritten");
        }