Esempio n. 1
0
        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);
        }
Esempio n. 2
0
        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);
        }