public void CompileOccurrences() { //Arrange KeywordExtractor extractor = new KeywordExtractor(); string[] tokens = extractor.Tokenize(this.Sample1); string[] phrases = extractor.ToPhrases(tokens); WordCooccurrenceMatrix matrix = new WordCooccurrenceMatrix(extractor.UniqueWordIndex); //Act matrix.CompileOccurrences(phrases); //Assert Assert.AreEqual(2, matrix[matrix.IndexOf("algorithms"), matrix.IndexOf("algorithms")], "'algorithms' diagonal count"); Assert.AreEqual(1, matrix[matrix.IndexOf("bounds"), matrix.IndexOf("bounds")], "'bounds' diagonal count"); Assert.AreEqual(1, matrix[matrix.IndexOf("corresponding"), matrix.IndexOf("algorithms")], "'corresponding'->'algorithms' count"); Assert.AreEqual(2, matrix[matrix.IndexOf("minimal"), matrix.IndexOf("set")], "'minimal'->'set' count"); Assert.AreEqual(2, matrix[matrix.IndexOf("set"), matrix.IndexOf("minimal")], "'set'->'minimal' count"); }
public void ComputeLeagueTable() { //Arrange KeywordExtractor extractor = new KeywordExtractor(); string[] tokens = extractor.Tokenize(this.Sample1); string[] phrases = extractor.ToPhrases(tokens); WordCooccurrenceMatrix matrix = new WordCooccurrenceMatrix(extractor.UniqueWordIndex); //Act matrix.CompileOccurrences(phrases); SortedList <string, WordScore> leagueTable = matrix.LeagueTable; //Assert Assert.AreEqual(3, leagueTable["algorithms"].Degree, "Degree 1"); Assert.AreEqual(2, leagueTable["algorithms"].Frequency, "Frequency 1"); Assert.AreEqual(1.5, leagueTable["algorithms"].Ratio, "Ratio 1"); Assert.AreEqual(8, leagueTable["minimal"].Degree, "Degree 1"); Assert.AreEqual(5, leagueTable["minimal"].Frequency, "Frequency 1"); Assert.AreEqual(1.6, leagueTable["minimal"].Ratio, "Ratio 1"); }