private Topic AddTestData(Topic topic)
        {
            var rand = new Random();

            foreach (Card card in topic)
            {
                long lastEndTime = DateTime.Now.Ticks - TimeSpan.FromDays(10).Ticks;
                lastEndTime += (long)rand.NextDouble() * (int)TimeSpan.FromHours(10).Ticks;
                if (rand.NextDouble() > 0.5)
                {
                    for (int i = 0; i < 30; i++)
                    {
                        CardAnswer cardAnswer = new CardAnswer();
                        cardAnswer.IsAnswerCorrect = rand.NextDouble() > 0.5;
                        cardAnswer.Start           = lastEndTime;
                        lastEndTime   += TimeSpan.FromMinutes(rand.NextDouble()).Ticks + TimeSpan.FromSeconds(5).Ticks;
                        cardAnswer.End = lastEndTime;
                        if (rand.NextDouble() > 0.6)
                        {
                            lastEndTime += TimeSpan.FromDays(1).Ticks;
                        }
                        card.cardAnswers.Add(cardAnswer);
                    }
                }
            }

            return(topic);
        }
示例#2
0
 public CardAnswerStatistics(CardAnswer cardAnswer)
 {
     Count   = 1;
     Wrong   = cardAnswer.IsAnswerCorrect ? 0 : 1;
     Correct = cardAnswer.IsAnswerCorrect ? 1 : 0;
     TimeMin = cardAnswer.GetSpan();
     TimeMax = cardAnswer.GetSpan();
     TimeAvg = cardAnswer.GetSpan();
 }
 public void StartAnswering()
 {
     CurrentCardAnswer = new CardAnswer();
     CurrentCardAnswer.SetStart();
 }