public void GetHtmlHeadElements_PlacesStyleSheetImportRulesBeforeStyleSheetElements() { var libraryElement1 = MockRepository.GenerateStub <StyleSheetElement>(); _htmlHeadAppender.RegisterHeadElement("libraryElement1", libraryElement1, HtmlHeadAppender.Priority.Library); var libraryRule1 = new StyleSheetImportRule(new StaticResourceUrl("url.css")); _htmlHeadAppender.RegisterHeadElement("libraryRule1", libraryRule1, HtmlHeadAppender.Priority.Library); var libraryElement2 = MockRepository.GenerateStub <StyleSheetElement>(); _htmlHeadAppender.RegisterHeadElement("libraryElement2", libraryElement2, HtmlHeadAppender.Priority.Library); var libraryRule2 = new StyleSheetImportRule(new StaticResourceUrl("url.css")); _htmlHeadAppender.RegisterHeadElement("libraryRule2", libraryRule2, HtmlHeadAppender.Priority.Library); var libraryElement3 = MockRepository.GenerateStub <StyleSheetElement>(); _htmlHeadAppender.RegisterHeadElement("libraryElement3", libraryElement3, HtmlHeadAppender.Priority.Library); var userControlRule1 = new StyleSheetImportRule(new StaticResourceUrl("url.css")); _htmlHeadAppender.RegisterHeadElement("userControlRule1", userControlRule1, HtmlHeadAppender.Priority.UserControl); var userControlElement1 = MockRepository.GenerateStub <StyleSheetElement>(); _htmlHeadAppender.RegisterHeadElement("userControlElement1", userControlElement1, HtmlHeadAppender.Priority.UserControl); var htmlHeadElements = _htmlHeadAppender.GetHtmlHeadElements().ToArray(); Assert.That(htmlHeadElements.Length, Is.EqualTo(4)); var libraryBlock1 = (StyleSheetBlock)htmlHeadElements[0]; Assert.That(libraryBlock1.StyleSheetElements.Count, Is.EqualTo(2)); Assert.That(libraryBlock1.StyleSheetElements[0], Is.SameAs(libraryRule1)); Assert.That(libraryBlock1.StyleSheetElements[1], Is.SameAs(libraryRule2)); var libraryBlock2 = (StyleSheetBlock)htmlHeadElements[1]; Assert.That(libraryBlock2.StyleSheetElements.Count, Is.EqualTo(3)); Assert.That(libraryBlock2.StyleSheetElements[0], Is.SameAs(libraryElement1)); Assert.That(libraryBlock2.StyleSheetElements[1], Is.SameAs(libraryElement2)); Assert.That(libraryBlock2.StyleSheetElements[2], Is.SameAs(libraryElement3)); var userControlBlock1 = (StyleSheetBlock)htmlHeadElements[2]; Assert.That(userControlBlock1.StyleSheetElements.Count, Is.EqualTo(1)); Assert.That(userControlBlock1.StyleSheetElements[0], Is.SameAs(userControlRule1)); var userControlBlock2 = (StyleSheetBlock)htmlHeadElements[3]; Assert.That(userControlBlock2.StyleSheetElements.Count, Is.EqualTo(1)); Assert.That(userControlBlock2.StyleSheetElements[0], Is.SameAs(userControlElement1)); }
public void Render() { IResourceUrl resourceUrl = MockRepository.GenerateStub <IResourceUrl>(); resourceUrl.Stub(stub => stub.GetUrl()).Return("myStylesheetUrl.js"); var javaScriptInclude = new StyleSheetImportRule(resourceUrl); javaScriptInclude.Render(_htmlHelper.Writer); Assert.That(_htmlHelper.GetDocumentText(), Is.EqualTo("@import url(\"myStylesheetUrl.js\");\r\n")); }