public void checkNumberOf_GuidanceItemsInLibraries() { var libraries = ie.getJsObject <int>("TM.WebServices.Data.AllLibraries.length"); for (int i = 0; i < libraries; i++) { var libraryId = ie.getJsObject <string>("TM.WebServices.Data.AllLibraries[{0}].libraryId".format(i)); var libraryCaption = ie.getJsObject <string>("TM.WebServices.Data.AllLibraries[{0}].name".format(i)); var guidanceItemsRaw_viaIE = ie.getJsObject("TM.WebServices.Data.AllLibraries[{0}].guidanceItems".format(i)); var guidanceItems_via_IE = guidanceItemsRaw_viaIE.extractList <string>(false).removeEmpty();; var guidanceItems_via_WSDL = tmWebServices.GetGuidanceItemsInLibrary(libraryId.guid()); "Checking view '{0} - {1}' : # of guidanceItems via IE: {2} , via WSDL {3}".info(libraryCaption, libraryId, guidanceItems_via_IE.size(), guidanceItems_via_WSDL.size()); //if (guidanceItems_via_IE.size() != guidanceItems_via_WSDL.size()) // return "ERROR: " + libraryId; Assert.AreEqual(guidanceItems_via_IE.size(), guidanceItems_via_WSDL.size(), "GuidanceItems size didn't match for folderId: {0}".format(libraryId)); foreach (var guidanceItem in guidanceItems_via_WSDL) { Assert.IsTrue(guidanceItems_via_IE.contains(guidanceItem.Id.str())); // note that the guidanceItem is complete, so we could do more checks on content here } } }