public void Execute() { var file = File.ReadAllText(_options.FileName); var frequencyCalculator = new FrequencyCalculator(); var frequencies = frequencyCalculator.GetFrequencies(file); _tree.Build(frequencies); _visualisation = File.ReadAllText("Supporting Files\\Template.html"); _visualisation = _visualisation.Replace("{document}", Path.GetFileNameWithoutExtension(_options.FileName)); _visualisation = _visualisation.Replace("{css}", File.ReadAllText("Supporting Files\\Styles.css")); _visualisation = _visualisation.Replace("{nodes}", $"<ul>{ProcessNode(_tree.Root)}</ul>"); var tempFile = Path.GetTempFileName().Replace(".tmp", ".html"); File.WriteAllText(tempFile, _visualisation); Process.Start(new ProcessStartInfo { FileName = tempFile, UseShellExecute = true }); if (!string.IsNullOrWhiteSpace(_options.OutputFileName)) { File.WriteAllText(_options.OutputFileName, _visualisation); } }
public void CalculateWordFrequenceTest(Uri uri, int top) { var fc = new FrequencyCalculator(); var f = fc.CalculateWordFrequency(uri, top).ToList(); Assert.IsNotNull(f); }
public void CalculateWordPairFrequencyTest(Uri uri, int top) { var fc = new FrequencyCalculator(); var f = fc.CalculateWordPairFrequency(uri, top).ToList(); Assert.Greater(f.Count, 0); }
public void DayOne_B() { var input = File.ReadAllText(".\\Content\\Day01.txt"); var answer = FrequencyCalculator.GetDuplicateFrequency(input); answer.Should().Be(655); }
public void DayOne_A() { var input = File.ReadAllText(".\\Content\\Day01.txt"); var answer = FrequencyCalculator.CalculateFinalFrequency(input); answer.Should().Be(437); }
private void BackgroundWorker1_DoWork(object sender, DoWorkEventArgs e) { var startTime = DateTime.Now; var fc = new FrequencyCalculator(); var depth = Convert.ToByte(numericUpDown1.Value); var downloader = new Downloader(depth); var t = downloader.GetTextFromUrlAsync(link); while (t.Status == TaskStatus.Running || t.Status == TaskStatus.WaitingForActivation) { var progress = Math.Round((90.0f * downloader.PresentLevel) / depth); if (progress >= 90) { progress = 89; } backgroundWorker1.ReportProgress(Convert.ToInt32(progress)); Thread.Sleep(1000); } var content = t.Result; //var content = new Downloader(depth).GetTextFromUrl(link); backgroundWorker1.ReportProgress(90, content); IEnumerable <PhraseFrequency> res; if (e.Argument.ToString() == "1") { res = fc.CalculateWordFrequency(content, 10); } else { res = fc.CalculateWordPairFrequency(content, 10); } backgroundWorker1.ReportProgress(95, res); backgroundWorker1.ReportProgress(100, DateTime.Now.Subtract(startTime).TotalSeconds); }
public void TestFrequenciesOfWordsProperlyCalculated() { var calculator = new FrequencyCalculator(maxWordLength); IDictionary <string, long> actualFrequencies = calculator.CalculateFrequencies(testData); foreach (KeyValuePair <string, long> frequencyPair in actualFrequencies) { Assert.IsTrue(expectedFrequencies.ContainsKey(frequencyPair.Key)); Assert.AreEqual(expectedFrequencies[frequencyPair.Key], frequencyPair.Value); } }
public override void Run(string part) { var fileText = FileReader.ReadFile(2018, 1); var parser = new FrequencyCalculator(fileText); if (part == "A") { Console.WriteLine(parser.ParseFile()); } else if (part == "B") { Console.WriteLine(parser.FindFirstRepeatingFreq()); } }
public void Test2(string input, int expectedAnswer) { var answer = FrequencyCalculator.GetDuplicateFrequency(input); answer.Should().Be(expectedAnswer); }
public void Test1(string input, int expectedAnswer) { var answer = FrequencyCalculator.CalculateFinalFrequency(input); answer.Should().Be(expectedAnswer); }