public async Task GetLegalHoldPolicy_ValidResponse() { /*** Arrange ***/ var responseString = @"{ ""type"": ""legal_hold_policy"", ""id"": ""166757"", ""policy_name"": ""Policy 4"", ""description"": ""Postman created policy"", ""status"": ""active"", ""assignment_counts"": { ""user"": 1, ""folder"": 0, ""file"": 0, ""file_version"": 0 }, ""created_by"": { ""type"": ""user"", ""id"": ""2030388321"", ""name"": ""Steve Boxuser"", ""login"": ""*****@*****.**"" }, ""created_at"": ""2016-05-18T10:28:45-07:00"", ""modified_at"": ""2016-05-18T11:25:59-07:00"", ""deleted_at"": null, ""filter_started_at"": ""2016-05-17T01:00:00-07:00"", ""filter_ended_at"": ""2016-05-21T01:00:00-07:00"" }"; IBoxRequest boxRequest = null; var legalHoldsPoliciesUri = new Uri(Constants.LegalHoldPoliciesEndpointString); Config.SetupGet(x => x.LegalHoldPoliciesEndpointUri).Returns(legalHoldsPoliciesUri); Handler.Setup(h => h.ExecuteAsync <BoxLegalHoldPolicy>(It.IsAny <IBoxRequest>())) .Returns(Task.FromResult <IBoxResponse <BoxLegalHoldPolicy> >(new BoxResponse <BoxLegalHoldPolicy>() { Status = ResponseStatus.Success, ContentString = responseString })) .Callback <IBoxRequest>(r => boxRequest = r); /*** Act ***/ BoxLegalHoldPolicy result = await _legalHoldPoliciesManager.GetLegalHoldPolicyAsync("166757"); /*** Assert ***/ //Request check Assert.IsNotNull(boxRequest); Assert.AreEqual(RequestMethod.Get, boxRequest.Method); Assert.AreEqual(legalHoldsPoliciesUri + "166757", boxRequest.AbsoluteUri.AbsoluteUri); //Response check Assert.AreEqual("legal_hold_policy", result.Type); Assert.AreEqual("166757", result.Id); Assert.AreEqual("Policy 4", result.PolicyName); Assert.AreEqual("Postman created policy", result.Description); Assert.AreEqual("active", result.Status); Assert.AreEqual(1, result.AssignmentCounts.User); Assert.AreEqual(0, result.AssignmentCounts.Folder); Assert.AreEqual(0, result.AssignmentCounts.File); Assert.AreEqual(0, result.AssignmentCounts.Version); Assert.AreEqual(DateTimeOffset.Parse("2016-05-18T10:28:45-07:00"), result.CreatedAt); Assert.AreEqual(DateTimeOffset.Parse("2016-05-18T11:25:59-07:00"), result.ModifiedAt); Assert.IsNull(result.DeletedAt); Assert.AreEqual(DateTimeOffset.Parse("2016-05-17T01:00:00-07:00"), result.FilterStartedAt); Assert.AreEqual(DateTimeOffset.Parse("2016-05-21T01:00:00-07:00"), result.FilterEndedAt); }
public async Task UpdateLegalHoldPolicy_ValidResponse() { /*** Arrange ***/ var responseString = @"{ ""type"": ""legal_hold_policy"", ""id"": ""166921"", ""policy_name"": ""New Policy 3"", ""description"": ""Policy 3 New Description"", ""created_by"": { ""type"": ""user"", ""id"": ""2030388321"", ""name"": ""Ryan Churchill"", ""login"": ""*****@*****.**"" }, ""created_at"": ""2016-05-18T16:18:49-07:00"", ""modified_at"": ""2016-05-18T16:20:47-07:00"", ""deleted_at"": null, ""filter_started_at"": ""2016-05-11T01:00:00-07:00"", ""filter_ended_at"": ""2016-05-13T01:00:00-07:00"" }"; IBoxRequest boxRequest = null; var legalHoldsPoliciesUri = new Uri(Constants.LegalHoldPoliciesEndpointString); Config.SetupGet(x => x.LegalHoldPoliciesEndpointUri).Returns(legalHoldsPoliciesUri); Handler.Setup(h => h.ExecuteAsync <BoxLegalHoldPolicy>(It.IsAny <IBoxRequest>())) .Returns(Task.FromResult <IBoxResponse <BoxLegalHoldPolicy> >(new BoxResponse <BoxLegalHoldPolicy>() { Status = ResponseStatus.Success, ContentString = responseString })) .Callback <IBoxRequest>(r => boxRequest = r); /*** Act ***/ var updateRequest = new BoxLegalHoldPolicyRequest() { PolicyName = "New Policy 3", Description = "Policy 3 New Description" }; BoxLegalHoldPolicy result = await _legalHoldPoliciesManager.UpdateLegalHoldPolicyAsync("166921", updateRequest); /*** Assert ***/ //Request check Assert.IsNotNull(boxRequest); Assert.AreEqual(RequestMethod.Put, boxRequest.Method); Assert.AreEqual(legalHoldsPoliciesUri + "166921", boxRequest.AbsoluteUri.AbsoluteUri); BoxLegalHoldPolicyRequest payLoad = JsonConvert.DeserializeObject <BoxLegalHoldPolicyRequest>(boxRequest.Payload); Assert.AreEqual("New Policy 3", payLoad.PolicyName); Assert.AreEqual("Policy 3 New Description", payLoad.Description); //Response check Assert.AreEqual("legal_hold_policy", result.Type); Assert.AreEqual("166921", result.Id); Assert.AreEqual("New Policy 3", result.PolicyName); Assert.AreEqual("Policy 3 New Description", result.Description); Assert.IsNull(result.Status); Assert.AreEqual("2030388321", result.CreatedBy.Id); Assert.AreEqual("Ryan Churchill", result.CreatedBy.Name); Assert.AreEqual(DateTimeOffset.Parse("2016-05-18T16:18:49-07:00"), result.CreatedAt); Assert.AreEqual(DateTimeOffset.Parse("2016-05-18T16:20:47-07:00"), result.ModifiedAt); Assert.AreEqual(DateTimeOffset.Parse("2016-05-11T01:00:00-07:00"), result.FilterStartedAt); Assert.AreEqual(DateTimeOffset.Parse("2016-05-13T01:00:00-07:00"), result.FilterEndedAt); }