public void PostComment_Integration_CallWebAPI_Added_NotFail_Test() { int expected = 0; int registeredUserId = 0; int sessionId = 0; int organizerId = 0; var manualResetEvent = new ManualResetEvent(false); var exceptionResult = default(Exception); using (var context = new MyEventsContext()) { var firstComment = context.Comments.First(); sessionId = firstComment.SessionId; registeredUserId = firstComment.RegisteredUserId; expected = context.Comments.Count(q => q.SessionId == sessionId && q.RegisteredUserId == registeredUserId) + 1; organizerId = context.Sessions.Include("EventDefinition") .FirstOrDefault(q => q.SessionId == sessionId).EventDefinition.OrganizerId; } string urlPrefix = testContextInstance.Properties[TestContext.AspNetDevelopmentServerPrefix + "webapiserver"].ToString(); string urlToTest = String.Format("{0}api/session/PostComment", urlPrefix); // Create object to add Client.Comment comment = new Client.Comment(); comment.SessionId = sessionId; comment.RegisteredUserId = registeredUserId; comment.Text = Guid.NewGuid().ToString(); var service = new Client.MyEventsClient(urlPrefix); service.SetAccessToken(MyEventsToken.CreateToken(organizerId)); IAsyncResult ar = service.CommentService.AddCommentAsync(comment, (int commentId) => { // Asserts using (var context = new MyEventsContext()) { int actual = context.Comments.Count(q => q.SessionId == sessionId && q.RegisteredUserId == registeredUserId); TestHelper.ValidateResult(expected, actual, manualResetEvent, ref exceptionResult); } }); TestHelper.WaitAll(manualResetEvent, ref exceptionResult); }
public void PostComment_Integration_CallWebAPI_Added_NotFail_Test() { int expected = 0; int registeredUserId = 0; int sessionId = 0; int organizerId = 0; var manualResetEvent = new ManualResetEvent(false); var exceptionResult = default(Exception); using (var context = new MyEventsContext()) { var firstComment = context.Comments.First(); sessionId = firstComment.SessionId; registeredUserId = firstComment.RegisteredUserId; expected = context.Comments.Count(q => q.SessionId == sessionId && q.RegisteredUserId == registeredUserId) + 1; organizerId = context.Sessions.Include("EventDefinition") .FirstOrDefault(q => q.SessionId == sessionId).EventDefinition.OrganizerId; } string urlPrefix = testContextInstance.Properties[TestContext.AspNetDevelopmentServerPrefix + "webapiserver"].ToString(); string urlToTest = String.Format("{0}api/session/PostComment", urlPrefix); // Create object to add Client.Comment comment = new Client.Comment(); comment.SessionId = sessionId; comment.RegisteredUserId = registeredUserId; comment.Text = Guid.NewGuid().ToString(); var service = new Client.MyEventsClient(urlPrefix); service.SetAccessToken(MyEventsToken.CreateToken(organizerId)); IAsyncResult ar = service.CommentService.AddCommentAsync(comment, (int commentId) => { // Asserts using (var context = new MyEventsContext()) { int actual = context.Comments.Count(q => q.SessionId == sessionId && q.RegisteredUserId == registeredUserId); TestHelper.ValidateResult(expected, actual, manualResetEvent, ref exceptionResult); } }); TestHelper.WaitAll(manualResetEvent, ref exceptionResult); }