public void ReaderMustIdentifyHowManyTimesARelevantWordAppearInEachArticle()
        {
            // Arrange
            reader = RSSReader.Read(simpleFeedURI);

            // Act
            var mostRelevantWords = reader.GetMostRelevantWords(1);

            // Assert
            var appearnceCountPerArticle = mostRelevantWords[0].AppearanceCountPerArticle;

            // Assert
            this.AssertAppearnceCountPerArticle(mostRelevantWords,
                                                new List <WordTest>()
            {
                // Word: "Erik"
                new WordTest()
                {
                    AppearanceCountPerArticle = new List <AppearanceCountWordArticle>()
                    {
                        new AppearanceCountWordArticle {
                            ArticleTitle = "Fisrt Article", NumberOfTimesInArticle = 2
                        },
                        new AppearanceCountWordArticle {
                            ArticleTitle = "Second Article", NumberOfTimesInArticle = 2
                        },
                        new AppearanceCountWordArticle {
                            ArticleTitle = "Third Article", NumberOfTimesInArticle = 1
                        }
                    }
                }
            });
        }
        public void ReaderMustIdentifyFeedsFiveMostRelevantWords()
        {
            // Arrange
            reader = RSSReader.Read(simpleFeedURI);

            // Act
            var mostRelevantWords = reader.GetMostRelevantWords(5);

            // Assert
            Assert.IsNotNull(mostRelevantWords);
            Assert.AreEqual(5, mostRelevantWords.Count);

            Assert.AreEqual("Erik", mostRelevantWords[0].Text);
            Assert.AreEqual(5, mostRelevantWords[0].AppearanceCount);

            Assert.AreEqual("AT&T", mostRelevantWords[1].Text);
            Assert.AreEqual(4, mostRelevantWords[1].AppearanceCount);

            Assert.AreEqual("Thor", mostRelevantWords[2].Text);
            Assert.AreEqual(4, mostRelevantWords[2].AppearanceCount);

            Assert.AreEqual("Yoshi", mostRelevantWords[3].Text);
            Assert.AreEqual(4, mostRelevantWords[3].AppearanceCount);

            Assert.AreEqual("Jim", mostRelevantWords[4].Text);
            Assert.AreEqual(3, mostRelevantWords[4].AppearanceCount);
        }
        public void ReaderMustidentifyFeedsMostRelevantWord()
        {
            // Arrange

            reader = RSSReader.Read(simpleFeedURI);

            // Act
            var mostRelevantWords = reader.GetMostRelevantWords(1);

            // Assert
            Assert.IsNotNull(mostRelevantWords);
            Assert.AreEqual(1, mostRelevantWords.Count);
            Assert.AreEqual("Erik", mostRelevantWords[0].Text);
            Assert.AreEqual(5, mostRelevantWords[0].AppearanceCount);
        }
Beispiel #4
0
        private void btnIdendify_Click(object sender, EventArgs e)
        {
            if (reader == null)
            {
                MessageBox.Show("First you need to load a feed.");
            }
            else
            {
                try
                {
                    var numberOfRelevantTherms = Convert.ToInt32(txtNumberOfWords.Text);

                    mostRelevantWords = reader.GetMostRelevantWords(numberOfRelevantTherms);

                    this.FillRelevantWords(mostRelevantWords);
                }
                catch (Exception ex)
                {
                    MessageBox.Show(string.Format("An error occured: {0}", ex.Message));
                }
            }
        }
        public void ReaderMustIdentifyHowManyTimesEachOfFiveRelevantWordsAppearInEachArticle()
        {
            // Arrange
            reader = RSSReader.Read(simpleFeedURI);

            // Act
            var mostRelevantWords = reader.GetMostRelevantWords(5);

            // Assert
            this.AssertAppearnceCountPerArticle(mostRelevantWords,
                                                new List <WordTest>()
            {
                // Word: "Erik"
                new WordTest()
                {
                    AppearanceCountPerArticle = new List <AppearanceCountWordArticle>()
                    {
                        new AppearanceCountWordArticle {
                            ArticleTitle = "Fisrt Article", NumberOfTimesInArticle = 2
                        },
                        new AppearanceCountWordArticle {
                            ArticleTitle = "Second Article", NumberOfTimesInArticle = 2
                        },
                        new AppearanceCountWordArticle {
                            ArticleTitle = "Third Article", NumberOfTimesInArticle = 1
                        }
                    }
                },
                // Word: "AT&T"
                new WordTest()
                {
                    AppearanceCountPerArticle = new List <AppearanceCountWordArticle>()
                    {
                        new AppearanceCountWordArticle {
                            ArticleTitle = "Fisrt Article", NumberOfTimesInArticle = 2
                        },
                        new AppearanceCountWordArticle {
                            ArticleTitle = "Second Article", NumberOfTimesInArticle = 2
                        },
                        new AppearanceCountWordArticle {
                            ArticleTitle = "Third Article", NumberOfTimesInArticle = 0
                        }
                    }
                },
                // Word: "Thor"
                new WordTest()
                {
                    AppearanceCountPerArticle = new List <AppearanceCountWordArticle>()
                    {
                        new AppearanceCountWordArticle {
                            ArticleTitle = "Fisrt Article", NumberOfTimesInArticle = 2
                        },
                        new AppearanceCountWordArticle {
                            ArticleTitle = "Second Article", NumberOfTimesInArticle = 1
                        },
                        new AppearanceCountWordArticle {
                            ArticleTitle = "Third Article", NumberOfTimesInArticle = 1
                        }
                    }
                },
                // Word: "Yoshi"
                new WordTest()
                {
                    AppearanceCountPerArticle = new List <AppearanceCountWordArticle>()
                    {
                        new AppearanceCountWordArticle {
                            ArticleTitle = "Fisrt Article", NumberOfTimesInArticle = 1
                        },
                        new AppearanceCountWordArticle {
                            ArticleTitle = "Second Article", NumberOfTimesInArticle = 1
                        },
                        new AppearanceCountWordArticle {
                            ArticleTitle = "Third Article", NumberOfTimesInArticle = 2
                        }
                    }
                },
                // Word: "Jim"
                new WordTest()
                {
                    AppearanceCountPerArticle = new List <AppearanceCountWordArticle>()
                    {
                        new AppearanceCountWordArticle {
                            ArticleTitle = "Fisrt Article", NumberOfTimesInArticle = 1
                        },
                        new AppearanceCountWordArticle {
                            ArticleTitle = "Second Article", NumberOfTimesInArticle = 0
                        },
                        new AppearanceCountWordArticle {
                            ArticleTitle = "Third Article", NumberOfTimesInArticle = 2
                        }
                    }
                }
            });
        }