public void ToString_Mandatory() { var param = new VkMethodParam { Name = "user_id", Type = ReturnType.Long, IsMandatory = true}; string result = param.ToString(); result.ShouldEqual("long userId"); }
public void ToString_NormalCase() { var param = new VkMethodParam {Name = "user_id", Type = ReturnType.Long}; string result = param.ToString(); result.ShouldEqual("long? userId = null"); }
public void ToString_Offset() { var param = new VkMethodParam { Name = "offset", Type = ReturnType.Long }; string result = param.ToString(); result.ShouldEqual("int? offset = null"); }
public void ToString_CountDigitMandatory() { var param = new VkMethodParam { Name = "count", Type = ReturnType.Long, IsMandatory = true }; string result = param.ToString(); result.ShouldEqual("int count"); }
internal static VkMethodParamsCollection GetParams(HtmlDocument html) { if (html == null) { throw new ArgumentNullException("html"); } var result = new VkMethodParamsCollection(); HtmlNode paramsSection = html.DocumentNode.SelectSingleNode("(//div[@class='wk_header dev_block_header'])[1]"); HtmlNode div = paramsSection.ParentNode; HtmlNode table = div.SelectSingleNode("table"); if (table == null) { return(result); } Debug.Assert(table != null); var isMandatoryParams = new List <VkMethodParam>(); var isNotMandatoryParams = new List <VkMethodParam>(); HtmlNodeCollection rows = table.SelectNodes("tr"); foreach (HtmlNode row in rows) { HtmlNodeCollection columns = row.SelectNodes("td"); Debug.Assert(columns.Count == 2); var param = new VkMethodParam { Name = columns[0].InnerText, Description = HtmlHelper.RemoveHtmlComment(columns[1].InnerText).Capitalize().TransformXmlDocCommentes(), Restrictions = VkMethodParam.GetRestrictions(columns[1]), IsMandatory = VkMethodParam.GetIsMandatory(columns[1]) }; if (param.IsMandatory) { isMandatoryParams.Add(param); } else { isNotMandatoryParams.Add(param); } } isMandatoryParams.AddRange(isNotMandatoryParams); return(new VkMethodParamsCollection(isMandatoryParams)); }
internal static VkMethodParamsCollection GetParams(HtmlDocument html) { if (html == null) throw new ArgumentNullException("html"); var result = new VkMethodParamsCollection(); HtmlNode paramsSection = html.DocumentNode.SelectSingleNode("(//div[@class='wk_header dev_block_header'])[1]"); HtmlNode div = paramsSection.ParentNode; HtmlNode table = div.SelectSingleNode("table"); if (table == null) return result; Debug.Assert(table != null); var isMandatoryParams = new List<VkMethodParam>(); var isNotMandatoryParams = new List<VkMethodParam>(); HtmlNodeCollection rows = table.SelectNodes("tr"); foreach (HtmlNode row in rows) { HtmlNodeCollection columns = row.SelectNodes("td"); Debug.Assert(columns.Count == 2); var param = new VkMethodParam { Name = columns[0].InnerText, Description = HtmlHelper.RemoveHtmlComment(columns[1].InnerText).Capitalize().TransformXmlDocCommentes(), Restrictions = VkMethodParam.GetRestrictions(columns[1]), IsMandatory = VkMethodParam.GetIsMandatory(columns[1]) }; if (param.IsMandatory) isMandatoryParams.Add(param); else isNotMandatoryParams.Add(param); } isMandatoryParams.AddRange(isNotMandatoryParams); return new VkMethodParamsCollection(isMandatoryParams); }
public void CanonicalName_TwoWords() { var param = new VkMethodParam {Name = "user_id"}; param.CanonicalName.ShouldEqual("userId"); }
public void CanonicalName_EmptyName() { var param = new VkMethodParam(); param.CanonicalName.ShouldEqual(string.Empty); }
public void CanonicalName_OneWord() { var param = new VkMethodParam {Name = "sort"}; param.CanonicalName.ShouldEqual("sort"); }