Пример #1
0
        public BitsMeanStatistics EvaluateBitsMeanStatistics(List <SymbolStatistics> symbolStatisticsList)
        {
            double inputFileBitsMean  = EvaluateInputFileBitsMean(symbolStatisticsList);
            double outputFileBitsMean = EvaluateOutputFileBitsMean(symbolStatisticsList);
            double bitsMeanProportion = Math.Round(outputFileBitsMean / inputFileBitsMean, DECIMAL_DIGITS);

            BitsMeanStatistics statistics = new BitsMeanStatistics();

            statistics.InputFileBitsMean  = inputFileBitsMean;
            statistics.OutputFileBitsMean = outputFileBitsMean;
            statistics.BitsMeanProportion = bitsMeanProportion;

            return(statistics);
        }
        public void BitsMean_EvaluateStatistics()
        {
            var helper = new HuffmanStatisticsHelper();

            BitsMeanStatistics expectedStatistics = new BitsMeanStatistics();

            expectedStatistics.InputFileBitsMean  = 2;
            expectedStatistics.OutputFileBitsMean = 1;
            expectedStatistics.BitsMeanProportion = 0.5;

            BitsMeanStatistics statistics = helper.EvaluateBitsMeanStatistics(symbolStatisticsList);

            Assert.AreEqual(expectedStatistics.InputFileBitsMean, statistics.InputFileBitsMean);
            Assert.AreEqual(expectedStatistics.OutputFileBitsMean, statistics.OutputFileBitsMean);
            Assert.AreEqual(expectedStatistics.BitsMeanProportion, statistics.BitsMeanProportion);
        }