public int CreateUserTest(UserTest usertest) { int result = 0; try { result = _usertest_object.CreateUserTest(usertest); if (result > 0) { return(result); } else { throw new OASCustomException("Operation failed."); } } catch (SqlException sqlex) { log.Error(sqlex); } catch (OASCustomException customex) { log.Error(customex.Message); } catch (Exception ex) { log.Error(ex.Message); } return(result); }
public async Task <ActionResult> Put(string id, [FromBody] UserTest value) { try { //kiểm tra giống ID hay không if (id.Equals(value.Id, StringComparison.OrdinalIgnoreCase)) { //get user from DB UserTest dbUser = await _serviceUserTest.GetByIDAsync(value.Code); value.Code = value.Code.ToLower().Trim(); if (!String.IsNullOrEmpty(value.Email)) { value.Email = value.Email.ToLower()?.Trim(); } //CỐ TÌNH - ÉP KHÔNG CHO ĐỔI PASSWORD Ở ĐÂY value.Password = dbUser.Password; //cập nhật UpdatedOn value.UpdatedOn = DateTime.Now; value.UpdatedBy = UserClaim.UserId; //gọi hàm update var result = await _serviceUserTest.UpdateAsync(id, value); return(Ok(result)); } return(BadRequest(StaticVar.MessageNotFound)); } catch (Exception e) { return(BadRequest(e.Message)); } }
/// <summary> /// 读取分数 /// </summary> private void getTestUser() { string sql = "select a.userId,b.userName from tbl_Test_User a,tbl_User b where a.userId=b.ID and a.testId=" + testId.ToString(); DataSet ds = db.ReturnDataSet(sql); if (ds.Tables[0].Rows.Count > 0) { int userCount = ds.Tables[0].Rows.Count; if (userCount > Max_User_Count) { userCount = Max_User_Count; } userTests = new UserTest[userCount]; for (int i = 0; i < userCount; i++) { userTests[i] = new UserTest(db); string userName = (string)ds.Tables[0].Rows[i]["userName"]; userTests[i].setUserName(userName); int userId = (int)ds.Tables[0].Rows[i]["userId"]; userTests[i].setUserId(userId); userTests[i].Parent = this; userTests[i].Top = 346 + (i / 5) * (userTests[i].Height + 2); userTests[i].Left = 44 + (i % 5) * (userTests[i].Width + 2); userTests[i].OnClick += new UserTest.ClickHandler(btn_OnClick); } } else { MessageBox.Show("没有参赛者!"); } }
public IActionResult Login(ClubModel club) { iClubRetrieveContext context = HttpContext.RequestServices.GetService(typeof(BarBoekASP.Data.MySQL.ClubMySQLContext)) as iClubRetrieveContext; iUserRetrieveContext ucontext = HttpContext.RequestServices.GetService(typeof(BarBoekASP.Data.MySQL.UserMySQLContext)) as iUserRetrieveContext; UserTest user = new UserTest(); user.UEmail = club.ClubNumber; user.Password = club.Postcode; bool check = context.Inloggen(club); bool ucheck = ucontext.Inloggen(user); if (check) { return(View("Confirm")); } else { if (ucheck) { int?test = HttpContext.Session.GetInt32("loggedIn"); HttpContext.Session.SetInt32("loggedIn", 1); return(RedirectToAction("Index", "Dashboard")); } else { ModelState.AddModelError("Postcode", "Password incorrect."); return(View("Index")); } } }
public void 途中でNGユーザに指定された時に非表示になるか() { var userId = "abc"; var options = new Mock <ICommentOptions>(); var nicoOptions = new Mock <INicoSiteOptions>(); nicoOptions.Setup(o => o.IsShow184).Returns(true); nicoOptions.Setup(o => o.IsAutoSetNickname).Returns(true); var user = new UserTest(userId) { IsNgUser = false }; var chat = new Chat() { UserId = userId, Text = "", }; var ms = new Mock <IMs>(); var roomInfo = new Mock <RoomInfo>(ms.Object, ""); var commentProvider = new Mock <ICommentProvider>(); var cvm = new NicoCommentViewModel2(options.Object, nicoOptions.Object, chat, roomInfo.Object.RoomLabel, user, commentProvider.Object, false); Assert.IsTrue(cvm.IsVisible); user.IsNgUser = true; Assert.IsFalse(cvm.IsVisible); }
private void ThrowIfTestAlreadyEnded(UserTest userTest) { if (userTest.End < DateTime.UtcNow) { throw new InvalidOperationException("Can't add answer to test which is already ended"); } }
public TestHandler() { xAnswer = new List <Answer>(); xQuestions = new List <Questions>(); xTest = new Test(); xUserTest = new UserTest(); }
public void GetUserTestsMethod_Should_Return_Correct_TestsObject() { // Arrange var result = new UserTest(); var test = new Test(); test.TestName = "Test1"; var category = new Category(); var id = Guid.NewGuid(); test.Category = category; result.UserId = id.ToString(); result.Test = test; var resultDto = new TestDto(); var all = new List <UserTest>() { result }; var results = new List <TestDto>() { resultDto }; resultRepoMock.Setup(x => x.All).Verifiable(); resultRepoMock.Setup(x => x.All).Returns(all.AsQueryable()); mapperMock.Setup(x => x.ProjectTo <TestDto>(It.IsAny <IQueryable <Test> >())).Returns(results.AsQueryable()); // Act var actual = resultService.GetUserResults(id.ToString()); // Assert Assert.AreEqual(resultDto, actual.First()); }
public void GetUserTestsMethod_Should_Call_ResultRepo_All() { // Arrange var result = new UserTest(); var test = new Test(); var category = new Category(); var id = Guid.NewGuid(); test.Category = category; result.Id = id; result.Test = test; var all = new List <UserTest>() { result }; resultRepoMock.Setup(x => x.All).Verifiable(); resultRepoMock.Setup(x => x.All).Returns(all.AsQueryable()); // Act var tests = resultService.GetUserResults("some id"); // Assert resultRepoMock.Verify(x => x.All, Times.Once); }
public IHttpActionResult PutUserTest(UserTest usertest) { int result = 0; try { if (ModelState.IsValid) { result = _blusertest.UpdateUserTest(usertest); if (result > 0) { return(Ok()); } else { log.Error("User test failed to update"); return(BadRequest(ModelState)); } } else { log.Error("Invalid model state encountered."); return(BadRequest(ModelState)); } } catch (Exception ex) { log.Error(ex); return(BadRequest(ModelState)); } }
public void AddResult_Should_Call_Saver_SaveChanges() { // Arrange var id = Guid.NewGuid(); var entity = new UserTest() { Id = id }; var result = new UserTestDto() { Id = id }; var all = new List <UserTest>() { entity }; resultRepoMock.Setup(x => x.All).Returns(all.AsQueryable()); resultRepoMock.Setup(x => x.Add(It.IsAny <UserTest>())).Verifiable(); saverMock.Setup(x => x.SaveChanges()).Verifiable(); // Act resultService.AddResult(result); // Assert saverMock.Verify(x => x.SaveChanges(), Times.Once); }
private List <UserTest> AddUserTest() { List <UserTest> lxUserTest = new List <UserTest>(); UserTest xUserTets = new UserTest() { UserFk = 5, TestFk = 5, }; UserTest xUserTets1 = new UserTest() { UserFk = 5, TestFk = 6, }; UserTest xUserTets2 = new UserTest() { UserFk = 6, TestFk = 6, }; UserTest xUserTets3 = new UserTest() { UserFk = 6, TestFk = 5, }; lxUserTest.Add(xUserTets); lxUserTest.Add(xUserTets1); lxUserTest.Add(xUserTets2); lxUserTest.Add(xUserTets3); return(lxUserTest); }
private void UserTestResultPermission(UserTest userTest) { if (GetUserId(userTest.IsPrerequisite) != userTest.UserId) { throw new PermissionException(GetUserId(userTest.IsPrerequisite) + " != " + userTest.UserId); } }
private void SendTestResult(string testName, UserTest userTest, int?companyId) { var courseName = DictionaryUtils.GetValueNotDefaultKey( CourseService.GetAllActiveCourseNames(), userTest.Course_TC); var userTestLink = Url.UserTestLink(userTest, courseName ?? testName).AbsoluteHref(); if (companyId.HasValue) { var email = UserService.GetAll(x => x.CompanyID == companyId).Select(x => x.Email).First(); MailService.Send(Services.Common.MailService.info, new MailAddress(email), userTestLink.ToString(), "Результат тестирования " + User.FullName); } if (!userTest.IsPass || !userTest.NormalTest) { return; } var courseTC = RecomendCourseTCs(userTest).ToList(); if (courseTC.Any()) { var courseLink = CourseService.GetCourseLinkList(courseTC); if (courseLink.Any()) { MailService.TestResult(AuthService.CurrentUser, userTestLink, courseLink.Select(cl => Html.CourseLinkAnchor(cl.UrlName, cl.GetName()).AbsoluteHref()).ToList(), userTest); } } }
public int CreateUserTest(UserTest usertest) { int result = 0; string exceptionMessage; try { ctx.UserTests.Add(usertest); result = ctx.SaveChanges(); return(result); } catch (SqlException sqlex) { exceptionMessage = sqlex.Message; } catch (OASCustomException customex) { exceptionMessage = customex.Message; } catch (Exception ex) { exceptionMessage = ex.Message; } return(result); }
public void CheckForTakenTest_Should_Return_3_When_Test_Found_And_Submitted() { // Arrange var userId = Guid.NewGuid().ToString(); var user = new User() { Id = userId }; var test = new Test() { Category = new Category() { Name = "Java" } }; var result = new UserTest() { UserId = userId, Test = test, SubmittedOn = DateTime.Now }; var all = new List <UserTest>() { result }; resultRepoMock.Setup(x => x.All).Returns(all.AsQueryable()); // Act var actual = resultService.CheckForTakenTest(userId, "Java"); // Assert Assert.AreEqual(StatusType.TestSubmitted, actual); }
private void ThrowIfUserTestAlreadyStarted(UserTest userTest) { if (userTest.Start != null) { throw new InvalidOperationException("Can't start test which is already started"); } }
public void Update_Should_Call_Repo_Update() { // Arrange var id = Guid.NewGuid(); var entity = new UserTest() { Id = id }; var result = new UserTestDto() { Id = id, Score = 0.0, SubmittedOn = DateTime.Now, AnsweredQuestions = new List <AnsweredQuestionDto>() }; var all = new List <UserTest>() { entity }; var aq = new List <AnsweredQuestion>(); resultRepoMock.Setup(x => x.All).Returns(all.AsQueryable()); mapperMock.Setup(x => x.ProjectTo <AnsweredQuestion>(It.IsAny <IQueryable <AnsweredQuestionDto> >())).Returns(aq.AsQueryable()); resultRepoMock.Setup(x => x.Update(It.IsAny <UserTest>())).Verifiable(); saverMock.Setup(x => x.SaveChanges()).Verifiable(); // Act resultService.Update(result); // Assert resultRepoMock.Verify(x => x.Update(It.IsAny <UserTest>()), Times.Once); }
private void TestCertificatePermission(OrderDetail orderDetail, UserTest userTest) { if (userTest.UserId != User.UserID || orderDetail == null) { throw new PermissionException(); } }
public void コメント中にコテハンがあった場合にコテハンがちゃんと付くか() { var serverMock = new Mock <IDataServer>(); var loggerMock = new Mock <ILogger>(); var optionsMock = new Mock <ICommentOptions>(); var siteOptionsMock = new Mock <IMirrativSiteOptions>(); siteOptionsMock.Setup(s => s.NeedAutoSubNickname).Returns(true); var userStoreMock = new Mock <IUserStoreManager>(); var user = new UserTest("5867403"); userStoreMock.Setup(u => u.GetUser(SiteType.Mirrativ, "5867403")).Returns(user); var server = serverMock.Object; var logger = loggerMock.Object; var options = optionsMock.Object; var siteOptions = siteOptionsMock.Object; var userStore = userStoreMock.Object; var cp = new MirrativCommentProvider(server, logger, options, siteOptions, userStore); var commentText = "test@nick"; var comment = MessageProvider.ParseMessage("{\"push_image_url\":\"\",\"speech\":\"abc\",\"d\":1,\"ac\":\"Ryu\",\"burl\":\"\",\"iurl\":\"https://cdn.mirrativ.com/mirrorman-prod/image/profile_image/c6d0a7dc58221445c3945e9cda3037de7fa4f089e4caf3f61d91c2bc120ac8b3_m.jpeg?1551989435\",\"cm\":\"" + commentText + "\",\"created_at\":1552156435,\"u\":\"5867403\",\"is_moderator\":0,\"lci\":\"1654341365\",\"t\":1}", (msg, type) => { }); var method = typeof(MirrativCommentProvider).GetMethod("CreateMessageContext", BindingFlags.InvokeMethod | BindingFlags.NonPublic | BindingFlags.Instance, Type.DefaultBinder, new[] { typeof(IMirrativMessage) }, null); var context = method.Invoke(cp, new[] { comment }) as MirrativMessageContext; Assert.AreEqual("nick", user.Nickname); }
public static IUser FromJson(string json) { dynamic d = Newtonsoft.Json.JsonConvert.DeserializeObject(json); var userId = d.userid.Value; var nick = d.nickname.Value; var backColor = d.backcolor.Value; var foreColor = d.forecolor.Value; var isNg = d.is_ng.Value.ToLower() == "true"; var name = d.name; var nameItems = new List <IMessagePart>(); foreach (var nameItem in d.name) { if (nameItem.type == "text") { var val = nameItem.value.Value; nameItems.Add(MessagePartFactory.CreateMessageText(val)); } } var user = new UserTest(userId) { Name = nameItems, Nickname = nick, BackColorArgb = backColor, ForeColorArgb = foreColor, IsNgUser = isNg }; return(user); }
public async Task <UserTest> GetUserTestResult(UserAnswer userAnswer) { var userId = userAnswer.UserId; var question = await _db.TestQuestions .Include(q => q.Test) .ThenInclude(t => t.TestQuestions) .SingleAsync(q => q.Id == userAnswer.TestQuestionId); var test = question.Test; var testQuestions = test.TestQuestions.ToList(); var userAnswers = await _db.UserAnswers .Where(ua => ua.UserId == userId && testQuestions.Select(tq => tq.Id).Contains(ua.TestQuestionId)) .ToListAsync(); var correctAnswersCount = userAnswers.Count(ua => ua.IsCorrect); var result = (double)correctAnswersCount / testQuestions.Count * 100; var userTest = new UserTest { CorrectAnswers = correctAnswersCount, TotalQuestions = testQuestions.Count, PassingTime = DateTime.Now, Result = (int)result, TestId = test.Id, UserId = userId }; var userResult = await _db.UserTests.AddAsync(userTest); await _db.SaveChangesAsync(); return(userResult.Entity); }
internal void UpdateEntity(UserTest entity) { entity.UserId = UserId; entity.TestId = TestId; entity.Start = Start; entity.End = End; }
public IActionResult Reset(int UserTestId) { var checkUserTest = _dbContext.tbl_UserTests.Where(w => w.Id == UserTestId).FirstOrDefault(); if (checkUserTest != null) { checkUserTest.IsReset = true; _dbContext.SaveChanges(); UserTest userTest = new UserTest { TestId = checkUserTest.TestId, UserId = checkUserTest.UserId, IsReset = false, IsLocked = false, QuestionsAttend = 0, QuestionsRight = 0, StartDate = DateTime.Now }; _dbContext.tbl_UserTests.Add(userTest); _dbContext.SaveChanges(); } return(RedirectToAction("List", "CareGiver")); }
public void 途中でNGユーザに指定された時に非表示になるか() { var userId = "abc"; var lineLiveUserMock = new Mock <LineLiveSitePlugin.ParseMessage.IUser>(); lineLiveUserMock.Setup(u => u.Id).Returns(123); var messageMock = new Mock <LineLiveSitePlugin.ParseMessage.IMessageData>(); var senderMock = new Mock <LineLiveSitePlugin.ParseMessage.IUser>(); var optionsMock = new Mock <ICommentOptions>(); var siteOptionsMock = new Mock <ILineLiveSiteOptions>(); siteOptionsMock.Setup(s => s.IsAutoSetNickname).Returns(true); var cpMock = new Mock <ICommentProvider>(); var user = new UserTest(userId); user.IsNgUser = false; var message = messageMock.Object; var sender = senderMock.Object; var cvm = new LineLiveCommentViewModel(optionsMock.Object, siteOptionsMock.Object, message, sender, user, cpMock.Object); Assert.IsTrue(cvm.IsVisible); user.IsNgUser = true; Assert.IsFalse(cvm.IsVisible); }
public void Invoke_SaveChanges_DataSaver() { // Arrange var fakeTestId = new Guid(); string fakeUserId = "userId"; bool fakeIsPassed = true; var fakeUserTest = new UserTest() { UserId = fakeUserId, TestId = fakeTestId }; var fakeUserTests = new List <UserTest>() { fakeUserTest }.AsQueryable(); var testRepoStub = new Mock <IDataRepository <Test> >(); var mockDataSaver = new Mock <IDataSaver>(); var mappingProviderStub = new Mock <IMappingProvider>(); var categoryRepoStub = new Mock <IDataRepository <Category> >(); var userTestRepoStub = new Mock <IDataRepository <UserTest> >(); var timeProviderStub = new Mock <TimeProvider>(); var userTestService = new UserTestService(testRepoStub.Object, mockDataSaver.Object, mappingProviderStub.Object, userTestRepoStub.Object, timeProviderStub.Object); userTestRepoStub.SetupGet(utr => utr.All).Returns(fakeUserTests); // Act userTestService.SubmitUserTest(fakeTestId.ToString(), fakeUserId, fakeIsPassed); // Assert mockDataSaver.Verify(ds => ds.SaveChanges(), Times.Once); }
public async Task <IActionResult> ChangePassword([FromBody] Authenticate user) { if (user == null) { return(BadRequest(StaticVar.MessageNotFound)); } //get user from DB UserTest dbUser = await _serviceUserTest.GetByIDAsync(user.Code).ConfigureAwait(false); if (dbUser == null) { return(BadRequest(StaticVar.MessageNotFound)); } //kiểm tra password cũ có đúng không if (CustomPasswordHasher.VerifyPassword(dbUser.Password, user.OldPassword)) { var passwordHashed = CustomPasswordHasher.HashPassword(user.Password); //đúng thì cho đổi password BsonDocument objBSON = new BsonDocument { { "Password", passwordHashed } }; await _serviceUserTest.UpdateCustomizeFieldByIdAsync(dbUser.Id, objBSON); return(Ok("Đổi password thành công")); } else { //sai thì báo lỗi return(BadRequest("User hoặc mật khẩu cũ không hợp lệ")); } }
public IEnumerable <Test> GetTestsProfile(int id) { List <UserTest> tests = new List <UserTest>(); using (MySqlCommand cmd = new MySqlCommand()) { cmd.Connection = connection; cmd.CommandText = @"SELECT distinctrow tests.* FROM tests INNER JOIN test_departments ON tests.id = test_department_test INNER JOIN user_tests ON test_department_test = test_id WHERE user_id = @userId AND NOT test_finished "; cmd.Parameters.AddWithValue("@userId", id); using (MySqlDataReader reader = cmd.ExecuteReader()) { while (reader.Read()) { UserTest test = new UserTest { Id = (int)reader["id"], Title = reader["title"].ToString(), Status = (int)ResultStatus.WaitingToBePassed, }; tests.Add(test); } } } return(tests); }
public void SendCallsSmtpWrapper() { var wrapper = new Mock <ISmtpWrapper>(); var resultMessage = new EmailMessage(); wrapper.Setup(w => w.Send(It.IsAny <EmailMessage>())) .Returns(SmtpStatusCode.Ok) .Callback <EmailMessage>(msg => resultMessage = msg); const string mailerAddress = "*****@*****.**"; const string forumTitle = "superawesome"; var user = UserTest.GetTestUser(); var settings = new Settings { MailerAddress = mailerAddress, ForumTitle = forumTitle }; var settingsManager = new Mock <ISettingsManager>(); settingsManager.Setup(s => s.Current).Returns(settings); var mailer = new NewAccountMailer(settingsManager.Object, wrapper.Object); var result = mailer.Send(user, "http://blah/"); Assert.Equal(SmtpStatusCode.Ok, result); Assert.Equal(resultMessage.ToName, user.Name); Assert.Equal(resultMessage.ToEmail, user.Email); Assert.Equal(resultMessage.FromName, forumTitle); Assert.Equal(resultMessage.FromEmail, mailerAddress); }
public UserTest GetUserTestDetails(int id) { UserTest existingUserTest = new UserTest(); try { existingUserTest = _usertest_object.GetUserTestDetails(id); if (existingUserTest != null) { return(existingUserTest); } else { throw new OASCustomException("Null data encountered."); } } catch (SqlException sqlex) { log.Error(sqlex); } catch (OASCustomException customex) { log.Error(customex.Message); } catch (Exception ex) { log.Error(ex.Message); } return(existingUserTest); }