private void SanityCheckView(TableauReportVisual view, XmlNode xmlNode) { if (string.IsNullOrWhiteSpace(view.Id)) { Login.Logger.Error(view.Name + " is missing a view ID. Not returned from server! xml=" + xmlNode.OuterXml); } }
public void WhenGivenXmlNodeReturnViewName() { XDocument testXDocument = XDocument.Load("../netcoreapp2.0/REST/Models/TestViewResponse.xml"); var nsManager = XmlHelper.CreateTableauXmlNamespaceManager("iwsOnline", "http://tableau.com/api"); var ns = nsManager.LookupNamespace("iwsOnline"); var viewElements = testXDocument.Root.Descendants(XName.Get("view", ns)); var testSiteView = new TableauReportVisual(viewElements.First().ToXmlNode(), ns); Assert.AreEqual(testSiteView.ViewName, "EconomicIndicators"); }
private TableauReportVisual ParseSiteXElement(XElement element) { try { var itemXml = element.ToXmlNode(); var siteView = new TableauReportVisual(itemXml, xmlNamespace); SanityCheckView(siteView, itemXml); return(siteView); } catch { Login.Logger.Error("Error parsing project: " + element.ToString()); } return(null); }