public void AddLinesFromFile()
        {
            string   path    = "input.txt";
            IChecker checker = new DublicateChecker(new CommaDelimitedParser());

            checker.AddLinesFromFile(path);
            Assert.AreEqual(checker.ValidInputs.Count, 26);
            Assert.AreEqual(checker.InvalidInputs.Count, 6);
        }
        public void AddLine()
        {
            IChecker checker = new DublicateChecker(new CommaDelimitedParser());

            Assert.AreEqual(checker.AddLine("1,2,3,4,5"), AddLineResult.New);
            Assert.AreEqual(checker.AddLine("1,2,3,4,"), AddLineResult.Invalid);
            Assert.AreEqual(checker.AddLine("1,2,3"), AddLineResult.New);
            Assert.AreEqual(checker.AddLine("1,2,3,4,5"), AddLineResult.Dublicate);
            Assert.AreEqual(checker.AddLine("2,1,3"), AddLineResult.Dublicate);
            Assert.AreEqual(checker.InvalidInputs.Count, 1);
        }
        public void CheckDublicates()
        {
            IChecker checker = new DublicateChecker(new CommaDelimitedParser());

            checker.AddLine("1,2,3,4,5");
            checker.AddLine("1,2,3,4");
            checker.AddLine("1,2,3");
            checker.AddLine("1,2,3,4,5");
            checker.AddLine("2,1,3");

            Assert.AreEqual(checker.DublicateCount, 2);
            Assert.AreEqual(checker.NonDublicateCount, 1);
        }
        public void GetInvalidReport()
        {
            IChecker checker = new DublicateChecker(new CommaDelimitedParser());

            checker.AddLine("1,2,3,4,5,");
            checker.AddLine("");
            checker.AddLine("1,2,a");
            checker.AddLine("invalid");
            checker.AddLine(",,,,");
            checker.AddLine("1,2,a");

            Assert.AreEqual(checker.InvalidInputs.Count, 5);
            Assert.IsTrue(checker.InvalidInputs.ContainsKey(""));
            Assert.AreEqual(checker.InvalidInputs["1,2,a"], 2);
        }
        public void GetMostFrequentArray()
        {
            IChecker checker = new DublicateChecker(new CommaDelimitedParser());

            checker.AddLine("1,2,3,4,5");
            checker.AddLine("1,2,3,4");
            checker.AddLine("1,2,3");
            checker.AddLine("1,2,3,4,5");
            checker.AddLine("2,1,3");
            checker.AddLine("3,1,2");

            var mostFrequentArray = checker.GetMostFrequentArrays();

            Assert.AreEqual(mostFrequentArray.Length, 1);
            Assert.AreEqual(mostFrequentArray[0].Length, 3);
            Assert.AreEqual(mostFrequentArray[0][0], 1);
            Assert.AreEqual(mostFrequentArray[0][1], 2);
            Assert.AreEqual(mostFrequentArray[0][2], 3);

            checker.AddLine("1,2,3,4,5");
            mostFrequentArray = checker.GetMostFrequentArrays();
            Assert.AreEqual(mostFrequentArray.Length, 2);
        }
示例#6
0
 private void DeleteDublicatesBtn_Click(object sender, RoutedEventArgs e)
 {
     DublicateChecker.Run((cmbx.SelectedItem as ComboBoxItem)?.Content.ToString(), _path, progressBar1, lbl_total_files);
 }