protected virtual void PrintMetadataCollection(BoxMetadataTemplateCollection <Dictionary <string, object> > mdt) { foreach (var md in mdt.Entries) { this.PrintMetadata(md); } }
public async Task GetAllFileMetadataTemplates_ValidResponse_ValidEntries() { /*** Arrange ***/ string responseString = @"{ ""entries"": [ { ""currentDocumentStage"": ""Init"", ""$type"": ""documentFlow-452b4c9d-c3ad-4ac7-b1ad-9d5192f2fc5f"", ""$parent"": ""file_5010739061"", ""$id"": ""50ba0dba-0f89-4395-b867-3e057c1f6ed9"", ""$version"": 4, ""$typeVersion"": 2, ""needsApprovalFrom"": ""Smith"", ""$template"": ""documentFlow"", ""$scope"": ""enterprise_12345"" }, { ""$type"": ""productInfo-9d7b6993-b09e-4e52-b197-e42f0ea995b9"", ""$parent"": ""file_5010739061"", ""$id"": ""15d1014a-06c2-47ad-9916-014eab456194"", ""$version"": 2, ""$typeVersion"": 1, ""skuNumber"": 45334223, ""description"": ""Watch"", ""$template"": ""productInfo"", ""$scope"": ""enterprise_12345"" }, { ""Popularity"": ""25"", ""$type"": ""properties"", ""$parent"": ""file_5010739061"", ""$id"": ""b6f36cbc-fc7a-4eda-8889-130f350cc057"", ""$version"": 0, ""$typeVersion"": 2, ""$template"": ""properties"", ""$scope"": ""global"" }, ], ""limit"": 100 }"; IBoxRequest boxRequest = null; Handler.Setup(h => h.ExecuteAsync <BoxMetadataTemplateCollection <Dictionary <string, object> > >(It.IsAny <IBoxRequest>())) .Returns(Task.FromResult <IBoxResponse <BoxMetadataTemplateCollection <Dictionary <string, object> > > >(new BoxResponse <BoxMetadataTemplateCollection <Dictionary <string, object> > >() { Status = ResponseStatus.Success, ContentString = responseString })).Callback <IBoxRequest>(r => boxRequest = r); /*** Act ***/ BoxMetadataTemplateCollection <Dictionary <string, object> > result = await _metadataManager.GetAllFileMetadataTemplatesAsync("5010739061"); /*** Request ***/ Assert.AreEqual(string.Format("{0}/metadata", "5010739061"), boxRequest.Path); /*** Response ***/ Assert.AreEqual("Init", result.Entries[0]["currentDocumentStage"]); Assert.AreEqual("50ba0dba-0f89-4395-b867-3e057c1f6ed9", result.Entries[0]["$id"]); Assert.AreEqual("file_5010739061", result.Entries[1]["$parent"]); Assert.AreEqual((long)2, result.Entries[1]["$version"]); Assert.AreEqual("25", result.Entries[2]["Popularity"]); Assert.AreEqual((long)2, result.Entries[2]["$typeVersion"]); }