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);
        }