private async Task RunUrlTestAsync(UrlTest test, ReverseTestOptions?options = null) { await RunTestAsync( test.Remote, test.Settings, test.Result, options ); }
public IActionResult AddUrlTest(int id) { var urlTest = new UrlTest() { TestId = id }; return(View(urlTest)); }
public IActionResult AddUrlTest(UrlTest urlTest) { if (ModelState.IsValid) { if (string.IsNullOrEmpty(urlTest.Url)) { urlTest.Url = Guid.NewGuid().ToString(); } context.UrlTests.Add(urlTest); context.SaveChanges(); return(RedirectToAction("AddUrlTestUrl", urlTest)); } return(View(urlTest)); }
private QuestionPageViewModel CreateQuestionPage(UrlTest urlTest) { var questionPage = new QuestionPageViewModel(); var test = context.Tests.AsNoTracking().First(a => a.Id == urlTest.TestId & !a.IsDel); questionPage.TestName = test.Name; questionPage.UrlTestName = urlTest.Name; var questions = context.Questions.AsNoTracking().Where(a => a.TestId == test.Id & !a.IsDel).OrderBy(a => a.Id) .ToList(); if (questions.Count != 0) { questionPage.QuestionId = questions[0].Id; } return(questionPage); }
public IActionResult AddUrlTestUrl(UrlTest urlTest) { return(View(urlTest)); }
private List <Question> NewQuestion(int id, QuestionPageViewModel userQuestionPage, Test test, UrlTest urlTest, UrlTestAttend urlAttendBase, List <Result> resultsBase) { userQuestionPage.TestName = test.Name; userQuestionPage.UrlTestName = urlTest.Name; userQuestionPage.UrlTestAttendId = urlAttendBase.Id; var questions = context.Questions.AsNoTracking().Where(a => a.TestId == test.Id & !a.IsDel) .OrderBy(a => a.Id) .ToList(); userQuestionPage.Answers = context.Answers.AsNoTracking().Where(a => a.QuestionId == id & !a.IsDel).ToList(); var answersPage = new List <Answer>(); foreach (var result in resultsBase) { var answer = context.Answers.FirstOrDefault(a => a.Id == result.AnswerId & a.QuestionId == id); if (answer != null) { answersPage.Add(answer); } } if (answersPage.Count != 0) { foreach (var answer in answersPage) { userQuestionPage.Answers.Find(a => a.Id == answer.Id).Selected = true; } } return(questions); }