public async Task CreateReportAsync_CreateReport_ReportCreated(int userId1, int userId2, string report) { Mock <IFriendRequestListRepo> friendRequestListRepo = new Mock <IFriendRequestListRepo>( ); Mock <IFriendBlockListRepo> friendBlockListRepo = new Mock <IFriendBlockListRepo>( ); Mock <IFriendListRepo> friendListRepo = new Mock <IFriendListRepo>( ); Mock <IUserReportsRepo> userReportsRepo = new Mock <IUserReportsRepo>( ); Mock <IValidationService> validationService = new Mock <IValidationService>(); IUserInteractionService userInteractionService = new UserInteractionService(friendBlockListRepo.Object, friendListRepo.Object, friendRequestListRepo.Object, userReportsRepo.Object, validationService.Object); UserReportsModel model = new UserReportsModel(); model.ReportedId = userId1; model.ReportingId = userId2; model.Report = report; try { await userInteractionService.CreateReportAsync(model); Assert.IsTrue(true); } catch { Assert.IsTrue(false); } }
public async Task CreateReportAsync_CreateReport_ReportCreated(int userId1, int userId2, string report) { IDataGateway dataGateway = new SQLServerGateway(); IConnectionStringData connectionString = new ConnectionStringData(); IFriendRequestListRepo friendRequestListRepo = new FriendRequestListRepo(dataGateway, connectionString); IFriendBlockListRepo friendBlockListRepo = new FriendBlockListRepo(dataGateway, connectionString); IFriendListRepo friendListRepo = new FriendListRepo(dataGateway, connectionString); IUserReportsRepo userReportsRepo = new UserReportsRepo(dataGateway, connectionString); IUserAccountRepository userAccountRepository = new UserAccountRepository(dataGateway, connectionString); IUserProfileRepository userProfileRepository = new UserProfileRepository(dataGateway, connectionString); IUserProfileService userProfileService = new UserProfileService(userProfileRepository); IUserAccountService userAccountService = new UserAccountService(userAccountRepository); IValidationService validationService = new ValidationService(userAccountService, userProfileService); IUserInteractionService userInteractionService = new UserInteractionService(friendBlockListRepo, friendListRepo, friendRequestListRepo, userReportsRepo, validationService); UserReportsModel model = new UserReportsModel(); model.ReportedId = userId1; model.ReportingId = userId2; model.Report = report; try { await userInteractionService.CreateReportAsync(model); IEnumerable <UserReportsModel> userReports = await userReportsRepo.GetAllReports(); if (userReports == null) { Assert.IsTrue(false); } if (userReports.Count() == 0) { Assert.IsTrue(false); } foreach (var userReport in userReports) { if (userReport.Report == report && userReport.ReportedId == userId1 && userReport.ReportingId == userId2) { Assert.IsTrue(true); } } } catch { Assert.IsTrue(false); } }
public async Task <int> CreateReport(UserReportsModel model) { var storedProcedure = "dbo.UserReports_Create"; DynamicParameters p = new DynamicParameters(); p.Add("Report", model.Report); p.Add("ReportingId", model.ReportingId); p.Add("Date", model.Date); p.Add("ReportedId", model.ReportedId); p.Add("Id", DbType.Int32, direction: ParameterDirection.Output); await _dataGateway.Execute(storedProcedure, p, _connectionString.SqlConnectionString); return(p.Get <int>("Id")); }
private void FillDataGrid() { var entities = (from n in DataContext.LP_UserReports where n.DateDeleted == null orderby n.OrderIndex, n.DateCreated select n).ToList(); var converter = new UserReportEntityModelConverter(DataContext); var models = (from n in entities let m = converter.Convert(n) select m).ToList(); var model = new UserReportsModel(); model.List = models; userReportsControl.Model = model; }
private void FillUserReports() { var parentID = DataConverter.ToNullableGuid(Request["ID"]); var currentLanguage = LanguageUtil.GetLanguage(); var query = from n in DataContext.LP_UserReports where n.DateDeleted == null && (n.Language == currentLanguage || n.Language == null || n.Language == "") select n; if (parentID == null) { query = from n in query where n.ParentID == null select n; } else { query = from n in query where n.ParentID == parentID select n; } query = from n in query orderby n.OrderIndex, n.DateCreated select n; var entities = query.ToList(); var converter = new UserReportEntityModelConverter(DataContext); var models = (from n in entities let m = converter.Convert(n) select m).ToList(); var model = new UserReportsModel(); model.List = models; userReportsControl.Model = model; }
public async Task <bool> CreateReportAsync(UserReportsModel model) { if (_validationService.IsNull(model)) { try { model.Date = DateTime.UtcNow; int result = await _userReportsRepo.CreateReport(model); if (result != 1) { return(false); } return(true); } catch { return(false); } } return(false); }
public async Task RemoveReportAsync_RemoveReport_ReportRemoved(int userId1, int userId2, string report) { Mock <IDataGateway> dataGateway = new Mock <IDataGateway>(); Mock <IConnectionStringData> connectionString = new Mock <IConnectionStringData>(); Mock <IFriendRequestListRepo> friendRequestListRepo = new Mock <IFriendRequestListRepo>( ); Mock <IFriendBlockListRepo> friendBlockListRepo = new Mock <IFriendBlockListRepo>( ); Mock <IFriendListRepo> friendListRepo = new Mock <IFriendListRepo>( ); Mock <IUserReportsRepo> userReportsRepo = new Mock <IUserReportsRepo>( ); Mock <IUserAccountRepository> userAccountRepository = new Mock <IUserAccountRepository>( ); Mock <IUserProfileRepository> userProfileRepository = new Mock <IUserProfileRepository>( ); Mock <IUserProfileService> userProfileService = new Mock <IUserProfileService>(); Mock <IUserAccountService> userAccountService = new Mock <IUserAccountService>(); Mock <IValidationService> validationService = new Mock <IValidationService>(); IUserInteractionService userInteractionService = new UserInteractionService(friendBlockListRepo.Object, friendListRepo.Object, friendRequestListRepo.Object, userReportsRepo.Object, validationService.Object); UserReportsModel model = new UserReportsModel(); model.ReportedId = userId1; model.ReportingId = userId2; model.Report = report; try { await userInteractionService.CreateReportAsync(model); await userInteractionService.RemoveReportAsync(1); } catch { Assert.IsTrue(false); } }
public async Task <ActionResult <bool> > ReportUser([FromBody] UserReportsModel model) { try { var token = ExtractHeader(HttpContext, "Authorization", ',', 1); var claims = new List <BusinessModels.UserAccessControl.UserClaimModel>(); var accessPolicy = _authorizationPolicyManager.ConfigureCustomPolicy(new List <string>() { "user_profile:report" }, claims); if (!_authorizationResolutionManager.Authorize(token, accessPolicy)) { return(StatusCode(403)); } await _userInteractionService.CreateReportAsync(model); return(Ok(true)); } catch { return(Ok(false)); } }