public override HttpStatusCode Send(IDnaHttpClient client) { var query = new SnesActivitiesQuery { FilterBy = "postedTime", FilterOp = "equals", FilterValue = PostedTime.ToString(), IdentityUserId = IdentityUserId }; var statusCode = query.Send(client); if (statusCode == HttpStatusCode.OK) { var activities = query.Content.ObjectFromJson<OpenSocialActivities>(); if (activities != null) { if (activities.TotalResults > 0) { var deleteActivity = new DeleteActivity(activities.Entries[0].Id, ApplicationId, IdentityUserId); return deleteActivity.Send(client); } else {//nothing to find so dont retry.... return HttpStatusCode.OK; } } } return HttpStatusCode.BadRequest; }
public void RevokeCommentActivity_SubmitActivityAndRevoke_Success() { var logger = MockRepository.GenerateStub<IDnaLogger>(); DateTime now = DateTime.Now; var httpClient = GetHttpClient(); var openSocialActivity = new OpenSocialActivity { PostedTime = now.MillisecondsSinceEpoch() }; var eventData = new SnesActivityData { ActivityType = 19, AppInfo = new DnaApplicationInfo { AppId = "testApplication" }, BlogUrl = "http://www.example.com/blogurl", UrlBuilder = new DnaUrlBuilder { DnaUrl = "http://www.example.com/dna/", ForumId = 1, PostId = 1, ThreadId = 1 }, IdentityUserId = "0" }; var activity = CommentActivityBase.CreateActivity(openSocialActivity, eventData); activity.Send(httpClient); var revokeActivity = RevokeCommentActivity.CreateActivity(openSocialActivity, eventData); revokeActivity.Send(httpClient); var getActivity = new SnesActivitiesQuery { FilterBy = "postedTime", FilterOp = "equals", FilterValue = now.ToString(), IdentityUserId = "0", }; var statusCode = getActivity.Send(httpClient); Assert.AreEqual(HttpStatusCode.InternalServerError, statusCode); }