public void TestCtor3() { var settings = new Tailviewer.Settings.DataSourceSettings { new DataSource("test1.log") { Id = DataSourceId.CreateNew() }, new DataSource("test2.log") { Id = DataSourceId.CreateNew() }, new DataSource("test.log") { Id = DataSourceId.CreateNew() } }; var merged1 = new DataSource { Id = DataSourceId.CreateNew() }; settings.Add(merged1); var merged2 = new DataSource { Id = DataSourceId.CreateNew() }; settings.Add(merged2); var merged3 = new DataSource { Id = DataSourceId.CreateNew() }; settings.Add(merged3); settings[0].ParentId = merged1.Id; settings[1].ParentId = merged2.Id; settings[2].ParentId = merged3.Id; using (var dataSources = new Tailviewer.BusinessLogic.DataSources.DataSources(_logFileFactory, _scheduler, _filesystem, settings, _bookmarks.Object)) { dataSources.Count.Should().Be(6, "Because we've loaded 6 data sources"); var mergedDataSource1 = dataSources[3] as MergedDataSource; mergedDataSource1.Should().NotBeNull(); mergedDataSource1.OriginalSources.Should().Equal(new object[] { dataSources[0] }); var mergedDataSource2 = dataSources[4] as MergedDataSource; mergedDataSource2.Should().NotBeNull(); mergedDataSource2.OriginalSources.Should().Equal(new object[] { dataSources[1] }); var mergedDataSource3 = dataSources[5] as MergedDataSource; mergedDataSource3.Should().NotBeNull(); mergedDataSource3.OriginalSources.Should().Equal(new object[] { dataSources[2] }); } }
public void TestCtor2() { var settings = new Tailviewer.Settings.DataSourceSettings { new DataSource("test1.log") { Id = DataSourceId.CreateNew() }, new DataSource("test2.log") { Id = DataSourceId.CreateNew() }, new DataSource("test.log") { Id = DataSourceId.CreateNew() } }; var merged = new DataSource { Id = DataSourceId.CreateNew() }; settings.Add(merged); settings[0].ParentId = merged.Id; settings[1].ParentId = merged.Id; using (var dataSources = new Tailviewer.BusinessLogic.DataSources.DataSources(_logFileFactory, _scheduler, _filesystem, settings, _bookmarks.Object)) { dataSources.Count.Should().Be(4, "Because we've loaded 4 data sources"); var mergedDataSource = dataSources[3] as MergedDataSource; mergedDataSource.Should().NotBeNull(); mergedDataSource.DataSourceCount.Should().Be(2, "Because 2 of the data sources are part of this group"); IDataSource dataSource1 = dataSources[0]; IDataSource dataSource2 = dataSources[1]; mergedDataSource.OriginalSources.Should().Equal(new object[] { dataSource1, dataSource2 }); dataSource1.ParentId.Should().Be(merged.Id); dataSource2.ParentId.Should().Be(merged.Id); } }