public void CanBundleCssWithRemote() { var mockDebugStatusReader = new StubDebugStatusReader(false); var mockFileWriterFactory = new StubFileWriterFactory(); var mockFileReaderFactory = new StubFileReaderFactory(); mockFileReaderFactory.SetContents(css); ICssBundle cssBundle = new CssBundle(mockDebugStatusReader, mockFileWriterFactory, mockFileReaderFactory); string tag = cssBundle .AddRemote("/css/first.css", "http://www.someurl.com/css/first.css") .Add("/css/second.css") .Render("/css/output_remote.css"); Assert.AreEqual("<link rel=\"stylesheet\" type=\"text/css\" href=\"http://www.someurl.com/css/first.css\" /><link rel=\"stylesheet\" type=\"text/css\" href=\"/css/output_remote.css?r=67F81278D746D60E6F711B5A29747388\" />", tag); Assert.AreEqual(1, mockFileWriterFactory.Files.Count); Assert.AreEqual("li{margin-bottom:.1em;margin-left:0;margin-top:.1em}th{font-weight:normal;vertical-align:bottom}.FloatRight{float:right}.FloatLeft{float:left}", mockFileWriterFactory.Files[@"C:\css\output_remote.css"]); }