public void ShouldRemoveEventDataWhenEventDataRemovedEventIsRaised()
        {
            var presentationModel = this.CreatePresentationModel();

            MockLogEntryCollection collection = new MockLogEntryCollection();
            var eventData = new EventData("1", TimeSpan.FromSeconds(1), "Testing text 1");

            collection.ItemCollection.Add(eventData);
            presentationModel.SetInStreamData(collection);

            Assert.AreEqual(1, presentationModel.Metadata.Count);

            collection.InvokeEventDataRemoved(eventData);

            Assert.AreEqual(0, presentationModel.Metadata.Count);
        }
        public void ShouldAddEventDataWhenEventDataAddedEventIsRaised()
        {
            var presentationModel = this.CreatePresentationModel();

            MockLogEntryCollection collection = new MockLogEntryCollection();

            presentationModel.SetInStreamData(collection);

            Assert.AreEqual(0, presentationModel.Metadata.Count);

            collection.InvokeEventDataAdded(new EventData("1", TimeSpan.FromSeconds(1), "Testing text 1"));

            Assert.AreEqual("1", presentationModel.Metadata[0].Id);
            Assert.AreEqual(TimeSpan.FromSeconds(1), presentationModel.Metadata[0].Time);
            Assert.AreEqual("Testing text 1", presentationModel.Metadata[0].Text);
        }
        public void ShouldAddEventDataWhenSettingInStreamData()
        {
            var presentationModel = this.CreatePresentationModel();

            MockLogEntryCollection collection = new MockLogEntryCollection();

            collection.ItemCollection.Add(new EventData("1", TimeSpan.FromSeconds(1), "Testing text 1"));
            collection.ItemCollection.Add(new EventData("2", TimeSpan.FromSeconds(2), "Testing text 2"));
            collection.ItemCollection.Add(new EventData("3", TimeSpan.FromSeconds(3), "Testing text 3"));

            Assert.AreEqual(0, presentationModel.Metadata.Count);
            presentationModel.SetInStreamData(collection);
            Assert.AreEqual(3, presentationModel.Metadata.Count);
            Assert.AreEqual("1", presentationModel.Metadata[0].Id);
            Assert.AreEqual(TimeSpan.FromSeconds(1), presentationModel.Metadata[0].Time);
            Assert.AreEqual("Testing text 1", presentationModel.Metadata[0].Text);
            Assert.AreEqual("2", presentationModel.Metadata[1].Id);
            Assert.AreEqual(TimeSpan.FromSeconds(2), presentationModel.Metadata[1].Time);
            Assert.AreEqual("Testing text 2", presentationModel.Metadata[1].Text);
            Assert.AreEqual("3", presentationModel.Metadata[2].Id);
            Assert.AreEqual(TimeSpan.FromSeconds(3), presentationModel.Metadata[2].Time);
            Assert.AreEqual("Testing text 3", presentationModel.Metadata[2].Text);
        }