Beispiel #1
0
        public void MinSyntacticUnitSizeTest1()
        {
            CSyntacticInfo target   = new CSyntacticInfo();
            long           expected = 345;

            target.MinSyntacticUnitSize = expected;
            Assert.AreEqual(expected, target.MinSyntacticUnitSize);
        }
Beispiel #2
0
        public void TotalSyntacticUnitsCountTest1()
        {
            CSyntacticInfo target   = new CSyntacticInfo();
            long           expected = 345;

            target.TotalSyntacticUnitsCount = expected;
            Assert.AreEqual(expected, target.TotalSyntacticUnitsCount);
        }
Beispiel #3
0
        public void MediumSyntacticUnitSizeTest1()
        {
            CSyntacticInfo target   = new CSyntacticInfo();
            double         expected = 345.546456;

            target.MediumSyntacticUnitSize = expected;
            Assert.AreEqual(expected, target.MediumSyntacticUnitSize);
        }
        private void ResetResults()
        {
            m_Info = new CSyntacticInfo();
            LANGUAGES LangID = (ChooseLangComboBox.SelectedItem as ICloneExtension).LanguageID();

            m_Counter = new CCodeSizeDetector(LangID, new CLoadFilesOptions(CodeLocationTextBox.Text, ChoosenFilesExtensionsTextBox.Text));
            m_StopWatch.Reset();
        }
Beispiel #5
0
        public void DateTest()
        {
            CSyntacticInfo target   = new CSyntacticInfo();
            DateTime       expected = DateTime.Now;

            target.Date = expected;
            Assert.AreEqual(expected, target.Date);
        }
Beispiel #6
0
        public void DispersionTest2()
        {
            CSyntacticInfo target = new CSyntacticInfo();

            target.MinSyntacticUnitSize    = 15;
            target.MediumSyntacticUnitSize = 15;
            double expected = 0;

            target.Dispersion = expected;
            Assert.AreEqual(expected, target.Dispersion);
            Assert.AreEqual(0, target.MeanSquareDeviation);
            Assert.AreEqual(15, target.Kmin);
        }
        public void CalculateTest4()
        {
            CSyntacticInfo actual = calc("MimeTypeDetection.cs");

            Assert.AreEqual(4, actual.TotalSyntacticUnitsCount);
            Assert.AreEqual(68, actual.MaxSyntacticUnitSize);
            Assert.AreEqual(12, actual.MinSyntacticUnitSize);
            Assert.AreEqual(39.000, Math.Round(actual.MediumSyntacticUnitSize, 3));
            Assert.AreEqual(18.744, Math.Round(actual.Dispersion, 3));
            Assert.AreEqual(4.32939, Math.Round(actual.MeanSquareDeviation, 5));

            Assert.AreEqual(24, actual.Kmin);
        }
        public void CalculateTest3()
        {
            CSyntacticInfo actual = calc("UnitTestSampleFile3.cs");

            Assert.AreEqual(3, actual.TotalSyntacticUnitsCount);
            Assert.AreEqual(26, actual.MaxSyntacticUnitSize);
            Assert.AreEqual(10, actual.MinSyntacticUnitSize);
            Assert.AreEqual(17.000, Math.Round(actual.MediumSyntacticUnitSize, 3));
            Assert.AreEqual(2.519, Math.Round(actual.Dispersion, 3));
            Assert.AreEqual(1.58721, Math.Round(actual.MeanSquareDeviation, 5));

            Assert.AreEqual(6, actual.Kmin);
        }
        public void CalculateTest2()
        {
            CSyntacticInfo actual = calc("UnitTestSampleFile2.cs");

            Assert.AreEqual(12, actual.TotalSyntacticUnitsCount);
            Assert.AreEqual(61, actual.MaxSyntacticUnitSize);
            Assert.AreEqual(12, actual.MinSyntacticUnitSize);
            Assert.AreEqual(28.000, Math.Round(actual.MediumSyntacticUnitSize, 3));
            Assert.AreEqual(7.33, Math.Round(actual.Dispersion, 3));
            Assert.AreEqual(2.70747, Math.Round(actual.MeanSquareDeviation, 5));

            Assert.AreEqual(14, actual.Kmin);
        }
        public void CalculateTest1()
        {
            CSyntacticInfo actual = calc("UnitTestSampleFile.cs");

            Assert.AreEqual(103, actual.TotalSyntacticUnitsCount);
            Assert.AreEqual(116, actual.MaxSyntacticUnitSize);
            Assert.AreEqual(7, actual.MinSyntacticUnitSize);
            Assert.AreEqual(21.000, Math.Round(actual.MediumSyntacticUnitSize, 3));
            Assert.AreEqual(11.933, Math.Round(actual.Dispersion, 3));
            Assert.AreEqual(3.45446, Math.Round(actual.MeanSquareDeviation, 5));

            Assert.AreEqual(12, actual.Kmin);
        }
Beispiel #11
0
        public void LoadTest()
        {
            string filename = Path.GetFullPath("syntactic_info.icch");

            Assert.IsTrue(File.Exists(filename));

            CSyntacticInfoLoader target = new CSyntacticInfoLoader(Path.GetDirectoryName(filename));
            CSyntacticInfo       actual = target.Load();

            Assert.AreEqual(new DateTime(2012, 05, 06, 18, 55, 41), actual.Date);
            Assert.AreEqual(3, actual.MinSyntacticUnitSize);
            Assert.AreEqual(3658, actual.MaxSyntacticUnitSize);
            Assert.AreEqual(25677, actual.TotalSyntacticUnitsCount);
            Assert.AreEqual(27, actual.Kmin);
        }
Beispiel #12
0
        private void InitCodeCounter()
        {
            m_Info      = new CSyntacticInfo();
            m_StopWatch = new Stopwatch();
            LANGUAGES LangID = (ChooseLangComboBox.SelectedItem as ICloneExtension).LanguageID();

            m_Counter          = new CCodeSizeDetector(LangID, new CLoadFilesOptions(CodeLocationTextBox.Text, ChoosenFilesExtensionsTextBox.Text));
            m_BackgroundThread = new BackgroundWorker();
            m_BackgroundThread.WorkerReportsProgress      = true;
            m_BackgroundThread.WorkerSupportsCancellation = true;

            m_BackgroundThread.DoWork += (o, e) =>
            {
                m_Info = m_Counter.Calculate();
            };

            m_BackgroundThread.ProgressChanged += (o, e) =>
            {
                // ВНИМАНИЕ! ЗДЕСЬ НЕ ДОЛЖНО БЫТЬ НИКАКИХ Application.DoEvents();
                ShowResults();
            };

            m_BackgroundThread.RunWorkerCompleted += (o, e) =>
            {
                ShowResults();

                if (m_Counter.GetCancelOperationFlag())
                {
                    StatusLabel.Text = ICloneLocalization.CMNMESS_OperationCancelled;
                }
                else
                {
                    if (e.Error != null)
                    {
                        StatusLabel.Text = ICloneLocalization.CMNMESS_OperationtDoneWithErrors;
                    }
                    else
                    {
                        ShowSyntacticInfo();
                        StatusLabel.Text = ICloneLocalization.CMNMESS_OperationDoneSuccesfully;
                    }
                }

                m_StopWatch.Stop();
                CancelOpButton.Enabled = false;
            };
        }
Beispiel #13
0
        private void PrepareLoadFilesOptions()
        {
            ICloneExtension     Ext              = ChooseLangComboBox.SelectedItem as ICloneExtension;
            CICloneEncodingInfo EncodeInfo       = CodeEncodingComboBox.SelectedItem as CICloneEncodingInfo;
            CLoadFilesOptions   LoadFilesOptions = new CLoadFilesOptions(CodeLocationTextBox.Text, ChoosenFilesExtensionsTextBox.Text, EncodeInfo.GetEncodingInfo().GetEncoding(), new CCodePreProcessingOptions(Ext.GetCommentSymbols()));

            LoadFilesOptions.SetSkippingFolders(Properties.Settings.Default.CSWSkippingFolders);
            LoadFilesOptions.SetIsUseParallelExtensions(Properties.Settings.Default.CSWIsUseParallelExtensions);

            m_CloneSearchExecutor.SetLoadFilesOptions(LoadFilesOptions);
            if (AutomaticKminCalculationCheckBox.Checked)
            {
                CCodeSizeDetector Counter = new CCodeSizeDetector(Ext.LanguageID(), new CLoadFilesOptions(CodeLocationTextBox.Text, ChoosenFilesExtensionsTextBox.Text));
                //Counter.LoadFilesProgress += new EventHandler(ReportProgress);
                CSyntacticInfo info = Counter.Calculate();
                CCodeFragment.SetKmin(info.Kmin);
            }
            else
            {
                CCodeFragment.SetKmin((long)KminValue.Value);
            }
            m_CloneSearchExecutor.Extension = Ext;
        }
Beispiel #14
0
        public void MinSyntacticUnitSizeTest2()
        {
            CSyntacticInfo target = new CSyntacticInfo();

            target.MinSyntacticUnitSize = 0;
        }
Beispiel #15
0
        public void TotalSyntacticUnitsCountTest2()
        {
            CSyntacticInfo target = new CSyntacticInfo();

            target.TotalSyntacticUnitsCount = 0;
        }