public CssEvaluationResult Evaluate(string filename, string[] contents, bool mergeBlocks) { var joinedString = string.Join("", contents); if (!joinedString.Contains("style", StringComparison.OrdinalIgnoreCase)) { return(null); } var page = CssBlockContentEvaluator.Split(contents, PageEvaluationMode.Any, mergeBlocks); var block = CssBlockEvaluator.Evaluate(joinedString); var razor = CssRazorEvaluator.Evaluate(joinedString); if (page.Any() || block.Any() || razor.Any()) { return(new CssEvaluationResult { FileName = filename, Page = page.Select(x => x.Lines.Count()).ToList(), Inline = block, Razor = razor }); } return(null); }
public void Razor() { var raw = AssetRetriever.GetFileAndContent(AvailableTestingResources.TestingResource); var evaluator = new CssRazorEvaluator(); var result = evaluator.Evaluate(string.Join("", raw.Contents)); Assert.AreEqual(18, result.Count); Assert.AreEqual("{ id = \"ID\", style = \"width:50%\", @readonly = \"readonly\", onclick = \"test\" }", result[0].Value); }