Exemple #1
0
        private static MostSimilarSubmissionsHistogramData GetMostSimilarSubmissionsHistogramDataMock(int binsCount)
        {
            var bins   = new List <MostSimilarSubmissionsBin>();
            var step   = 1.0 / binsCount;
            var random = new Random(12);

            for (var i = 0; i < binsCount; i += 1)
            {
                var left  = step * i;
                var right = left + step;
                if (right > 1 - 0.00001)
                {
                    right = 1.00001;
                }
                var bin = new MostSimilarSubmissionsBin
                {
                    BinRightBorder   = (decimal)Math.Round(right, 2),
                    SubmissionsCount = random.Next(0, 10)
                };
                bins.Add(bin);
            }
            return(new MostSimilarSubmissionsHistogramData
            {
                Bins = bins,
            });
        }
Exemple #2
0
        private static async Task <MostSimilarSubmissionsHistogramData> GetMostSimilarSubmissionsHistogramData(Guid taskId, int binsCount)
        {
            var mostSimilarSubmissions = await antiPlagiarismClient.GetMostSimilarSubmissionsAsync(new GetMostSimilarSubmissionsParameters
            {
                TaskId = taskId
            });

            var bins = new List <MostSimilarSubmissionsBin>();
            var step = 1.0 / binsCount;

            for (var i = 0; i < binsCount; i += 1)
            {
                var left  = step * i;
                var right = left + step;
                if (right > 1 - 0.00001)
                {
                    right = 1.00001;
                }
                var count = mostSimilarSubmissions.MostSimilarSubmissions
                            .Count(s => s.Weight >= left && s.Weight < right);
                var bin = new MostSimilarSubmissionsBin
                {
                    BinRightBorder   = (decimal)Math.Round(right, 2),
                    SubmissionsCount = count
                };
                bins.Add(bin);
            }
            return(new MostSimilarSubmissionsHistogramData
            {
                Bins = bins,
            });
        }