public void Add(TopicSubmission submission) { if (submission == null) { throw new ArgumentNullException("Submission should not be null"); } this.submissions.Add(submission); this.submissions.Save(); }
public void PercentageCorrectTranslationsShouldBeSetCorrectly(double percent) { // Arrange var submission = new TopicSubmission(); // Act submission.PercentageCorrectTranslations = percent; // Assert Assert.AreEqual(percent, submission.PercentageCorrectTranslations); }
public void TimeElapsedInSecondsShouldBeSetCorrectly(int number) { // Arrange var submission = new TopicSubmission(); // Act submission.TimeElapsedInSeconds = number; // Assert Assert.AreEqual(number, submission.TimeElapsedInSeconds); }
public void TImeElapsedShouldBeSetCorrectly(string time) { // Arrange var submission = new TopicSubmission(); // Act submission.TimeElapsed = time; // Assert Assert.AreEqual(time, submission.TimeElapsed); }
public void ByUserIdShouldBeSetCorrectly(string text) { // Arrange var submission = new TopicSubmission(); // Act submission.ByUserId = text; // Assert Assert.AreEqual(text, submission.ByUserId); }
public void ForTopicIdShouldBeSetCorrectly(int number) { // Arrange var submission = new TopicSubmission(); // Act submission.ForTopicId = number; // Assert Assert.AreEqual(number, submission.ForTopicId); }
public ActionResult Solve(int id) { var topic = this.topics.GetById(id); this.ViewBag.NumWords = topic.NumberOfWordsToTranslate; var ts = new TopicSubmission() { ForTopic = topic }; return(this.View(ts)); }
public ActionResult Solve(int id, TopicSubmission topicSubmission, string elapsedTime, int elapsedTimeInSeconds) { var topic = this.topics.GetById(id); topicSubmission.ForTopic = topic; topicSubmission.ForTopicId = topic.Id; var correctTopic = topicSubmission.ForTopic; int correctAnswers = 0; int numberWords = correctTopic.WordsToTranslate.Count; var wrongTranslations = new List <object>(); for (int i = 0; i < numberWords; i++) { if (correctTopic.WordsToTranslate[i].Translation == topicSubmission.SelectedTranslations[i]) { correctAnswers += 1; } else { //wrongTranslations.Add(new TranslationResult() //{ // Text = correctTopic.WordsToTranslate[i].Text, // WrongTranslation = topic.SelectedTranslations[i].Translation, // CorrectTranslation = correctTopic.WordsToTranslate[i].Translation //}); } } double percent = (correctAnswers * 100) / numberWords; this.TempData["time-elapsed"] = elapsedTime; this.TempData["time-elapsed-seconds"] = elapsedTimeInSeconds; this.TempData["result"] = percent + "% correct answers"; this.TempData["percentage"] = percent; if (this.User.Identity.IsAuthenticated) { var userId = this.User.Identity.GetUserId(); topicSubmission.ByUserId = userId; topicSubmission.TimeElapsed = elapsedTime; topicSubmission.TimeElapsedInSeconds = elapsedTimeInSeconds; topicSubmission.PercentageCorrectTranslations = percent; this.submissions.Add(topicSubmission); } //this.TempData["wrong"] = wrongTranslations.ToArray(); return(this.RedirectToAction("Results")); }