public void CurrentPath_WithWrongAlternatePath_ReturnsCorrectPath() { var asset = new CssAsset(_context, _settings) { Path = "original-path" }; asset.AlternatePaths.Add("test-alt-name2", "test-value"); Assert.That(asset.CurrentAlternateName, Is.EqualTo("test-alt-name")); Assert.That(asset.CurrentPath, Is.EqualTo("original-path")); }
public void CssAsset_GetKey_GetsCorrectEquality() { var asset = new CssAsset(_context, _settings) { Path = "valid-path", ConditionalEquality = IE.Equality.GreaterThan }; var key = asset.Key; Assert.That(key, Is.Not.Null); Assert.That(key.Equality, Is.EqualTo(IE.Equality.GreaterThan)); }
public void CssAsset_GetKey_GetsCorrectBrowser() { var asset = new CssAsset(_context, _settings) { Path = "valid-path", ConditionalBrowser = IE.Version.IE7 }; var key = asset.Key; Assert.That(key, Is.Not.Null); Assert.That(key.Browser, Is.EqualTo(IE.Version.IE7)); }
public bool Equals(CssAsset other) { if (ReferenceEquals(null, other)) { return false; } if (ReferenceEquals(this, other)) { return true; } return Equals(other.Path, Path) && Equals(other.Media, Media) && Equals(other.ConditionalEquality, ConditionalEquality) && Equals(other.ConditionalBrowser, ConditionalBrowser); }
public void CssAsset_GetKey_GetsCorrectMediaType() { var asset = new CssAsset(_context, _settings) { Path = "valid-path", Media = "test-media" }; var key = (CssAssetKey) asset.Key; Assert.That(key, Is.Not.Null); Assert.That(key.Media, Is.EqualTo("test-media")); }
public void BuildHtml_NeitherMinimizedNorCombined_BuildsNormalLink() { var asset = new CssAsset(_context, _settings) { Path = "://test-path" }; var assets = new List<IAsset> { asset }; var result = _outputManager.BuildHtml(assets); Assert.That(_htmlBuilderCalls.Count, Is.EqualTo(1)); var call = _htmlBuilderCalls.First(); Assert.IsFalse(call.IsHandler); Assert.That(call.Asset, Is.EqualTo(asset)); Assert.That(result.Contains(asset.Path)); }
public void Add_CssAsset_WithGroup_CorrectlyAddsAsset() { var newAsset = new CssAsset(_context, _settings) { Path = "test-path" }; _assetManager.Add(newAsset, null); _assetManager.Render(AssetType.Css, null); Assert.That(_buildHtmlCalls.Count, Is.EqualTo(1)); var call = _buildHtmlCalls.First(); Assert.That(call.Assets.Count(), Is.EqualTo(1)); var asset = call.Assets.First(); Assert.IsInstanceOf<CssAsset>(asset); Assert.That(asset.Path, Is.EqualTo("test-path")); }
public bool Equals(CssAsset other) { if (ReferenceEquals(null, other)) { return(false); } if (ReferenceEquals(this, other)) { return(true); } return(Equals(other.Path, Path) && Equals(other.Media, Media) && Equals(other.ConditionalEquality, ConditionalEquality) && Equals(other.ConditionalBrowser, ConditionalBrowser)); }
public void AbsolutePath_IsNotProcessed() { var reader = GetReader("body { background: url(http://domain.com/a/url.png); }"); var asset = new CssAsset(_context, _settings) { Path = "", Reader = reader }; var processer = new CssRelativePathProcessor(_urlManager.Object); processer.Process(new[] { asset }); _urlManager.Verify(manager => manager.GetAbsoluteUrl(It.IsAny<string>(), It.IsAny<string>()), Times.Never()); Assert.That(asset.Reader.Content, Is.Not.ContainsSubstring(_fakeAbsoluteUrlPrefix)); }
public void IgnoredProcessing_DoesNotProcess() { var reader = GetReader("body { background: url(a/url.png); }"); var asset = new CssAsset(_context, _settings) { Path = "", IgnoreProcessing = true, Reader = reader }; var processer = new CssRelativePathProcessor(_urlManager.Object); var results = processer.Process(new[] { asset }); _urlManager.Verify(manager => manager.GetAbsoluteUrl(It.IsAny<string>(), It.IsAny<string>()), Times.Never()); Assert.That(ReferenceEquals(results.Single().Reader, reader)); Assert.That(asset.Reader.Content, Is.Not.ContainsSubstring(_fakeAbsoluteUrlPrefix)); }
public void Add_DuplicateCssAssetWithDifferentAltPaths_SameGroup_OnlyAddsOneAsset() { var newAsset1 = new CssAsset(_context, _settings) { Path = "test-path" }; newAsset1.AlternatePaths.Add("test-alt-name", "alt-path"); var newAsset2 = new CssAsset(_context, _settings) { Path = "test-path" }; _assetManager.Add(newAsset1, "test-group"); _assetManager.Add(newAsset2, "test-group"); _assetManager.Render(AssetType.Css, "test-group"); Assert.That(_buildHtmlCalls.Count, Is.EqualTo(1)); var call = _buildHtmlCalls.First(); Assert.That(call.Assets.Count(), Is.EqualTo(1)); var asset = call.Assets.First(); Assert.IsInstanceOf<CssAsset>(asset); Assert.That(asset.Path, Is.EqualTo("test-path")); }
public void CssAsset_GetKey_GetsCorrectExternalFlag() { var asset = new CssAsset(_context, _notExternalAltSettings) { Path = "valid-path" }; asset.AlternatePaths.Add("notExternal", "/relative-path.css"); asset.AlternatePaths.Add("external", "http://www.fullpath.com/file.css"); var notExternalKey = asset.Key; Assert.That(notExternalKey, Is.Not.Null); Assert.That(notExternalKey.IsExternal, Is.False); asset = new CssAsset(_context, _externalAltSettings) { Path = "valid-path" }; asset.AlternatePaths.Add("notExternal", "/relative-path.css"); asset.AlternatePaths.Add("external", "http://www.fullpath.com/file.css"); var externalKey = asset.Key; Assert.That(externalKey, Is.Not.Null); Assert.That(externalKey.IsExternal, Is.True); }
public void Add_DuplicateCssAsset_DifferentGroups_AddsTwoAssets() { var newAsset1 = new CssAsset(_context, _settings) { Path = "test-path" }; var newAsset2 = new CssAsset(_context, _settings) { Path = "test-path" }; _assetManager.Add(newAsset1, "test-group1"); _assetManager.Add(newAsset2, "test-group2"); _assetManager.Render(AssetType.Css, "test-group1"); Assert.That(_buildHtmlCalls.Count, Is.EqualTo(1)); var call = _buildHtmlCalls.First(); Assert.That(call.Assets.Count(), Is.EqualTo(1)); var asset = call.Assets.First(); Assert.IsInstanceOf<CssAsset>(asset); Assert.That(asset.Path, Is.EqualTo("test-path")); _buildHtmlCalls.Clear(); _assetManager.Render(AssetType.Css, "test-group2"); Assert.That(_buildHtmlCalls.Count, Is.EqualTo(1)); call = _buildHtmlCalls.First(); Assert.That(call.Assets.Count(), Is.EqualTo(1)); asset = call.Assets.First(); Assert.IsInstanceOf<CssAsset>(asset); Assert.That(asset.Path, Is.EqualTo("test-path")); }
public void BuildHtml_OnAndOffLayoutPage_RendersInCorrectOrder() { var onLayoutAsset1 = new CssAsset(_context, _settings) { Path = "://onLayout1" }; var onLayoutAsset2 = new CssAsset(_context, _settings) { Path = "://onLayout2" }; var notOnLayoutAsset1 = new CssAsset(_context, _settings) { Path = "://notOnLayout1" }; var notOnLayoutAsset2 = new CssAsset(_context, _settings) { Path = "://notOnLayout2" }; var assets = new List<IAsset> { notOnLayoutAsset1, onLayoutAsset1, notOnLayoutAsset2, onLayoutAsset2 }; var result = _outputManager.BuildHtml(assets); Assert.That(_htmlBuilderCalls.Count, Is.EqualTo(4)); var call = _htmlBuilderCalls[0]; Assert.That(call.Asset, Is.EqualTo(notOnLayoutAsset1)); call = _htmlBuilderCalls[1]; Assert.That(call.Asset, Is.EqualTo(onLayoutAsset1)); call = _htmlBuilderCalls[2]; Assert.That(call.Asset, Is.EqualTo(notOnLayoutAsset2)); call = _htmlBuilderCalls[3]; Assert.That(call.Asset, Is.EqualTo(onLayoutAsset2)); Assert.That(result.IndexOf(notOnLayoutAsset1.Path), Is.LessThan(result.IndexOf(onLayoutAsset1.Path))); Assert.That(result.IndexOf(onLayoutAsset1.Path), Is.LessThan(result.IndexOf(notOnLayoutAsset2.Path))); Assert.That(result.IndexOf(notOnLayoutAsset2.Path), Is.LessThan(result.IndexOf(onLayoutAsset2.Path))); }
public void Equals_Null_IsNotEqual() { var asset = new CssAsset(_context, _settings); Assert.IsFalse(asset.Equals(null)); }
public void CurrentPathIsExternal_RelativePath_ReturnsFalse() { var asset = new CssAsset(_context, _settings) { Path = "original-path" }; Assert.That(asset.CurrentPath, Is.EqualTo("original-path")); Assert.That(asset.CurrentPathIsExternal, Is.False); }
public void CurrentPathIsExternal_ExternalPath_ReturnsTrue() { var asset = new CssAsset(_context, _settings) { Path = "http://original-path" }; Assert.That(asset.CurrentPath, Is.EqualTo("http://original-path")); Assert.That(asset.CurrentPathIsExternal, Is.True); }
public void CurrentFilePath_RelativePath_CallsMapPath() { var asset = new CssAsset(_context, _settings) { Path = "original-path" }; Assert.That(asset.CurrentPath, Is.EqualTo("original-path")); Assert.That(asset.CurrentFilePath.StartsWith(@"c:\full\path\")); }
public void CurrentFilePath_ExternalPath_ReturnsUnmodifiedPath() { var asset = new CssAsset(_context, _settings) { Path = "http://original-path" }; Assert.That(asset.CurrentPath, Is.EqualTo("http://original-path")); Assert.That(asset.CurrentFilePath, Is.EqualTo(null)); }
public void NotEqualsOperator_Nulls_AreNotEqual() { var asset = new CssAsset(_context, _settings); Assert.IsTrue(null != asset); Assert.IsTrue(asset != null); }
public void Equals_AssetWithSameMedia_IsEqual() { var asset = new CssAsset(_context, _settings) { Media = "test-media" }; var equalAsset = new CssAsset(_context, _settings) { Media = "test-media" }; Assert.IsTrue(asset.Equals(equalAsset)); }
public void Setup() { _cssAsset = new CssAsset(_context, _setitngs); _jsAsset = new JavascriptAsset(_context, _setitngs); }
public void EqualsOperator_Nulls_AreNotEqual() { var asset = new CssAsset(_context, _settings); Assert.IsFalse(null == asset); Assert.IsFalse(asset == null); }
public void Equals_AssetWithSameProperties_IsEqual() { var asset = new CssAsset(_context, _settings) { Media = "test-media", Path = "test-path", ConditionalEquality = IE.Equality.GreaterThan, ConditionalBrowser = IE.Version.IE5 }; var equalAsset = new CssAsset(_context, _settings) { Media = "test-media", Path = "test-path", ConditionalEquality = IE.Equality.GreaterThan, ConditionalBrowser = IE.Version.IE5 }; Assert.IsTrue(asset.Equals(equalAsset)); }
public void Equals_AssetWithSamePath_IsEqual() { var asset = new CssAsset(_context, _settings) { Path = "test-path" }; var equalAsset = new CssAsset(_context, _settings) { Path = "test-path" }; Assert.IsTrue(asset.Equals(equalAsset)); }
public void Equals_AssetWithDifferentBrowser_IsNotEqual() { var asset = new CssAsset(_context, _settings) { ConditionalBrowser = IE.Version.IE5 }; var equalAsset = new CssAsset(_context, _settings) { ConditionalBrowser = IE.Version.IE6 }; Assert.IsFalse(asset.Equals(equalAsset)); }
public void Equals_SameAsset_IsEqual() { var asset = new CssAsset(_context, _settings); Assert.IsTrue(asset.Equals(asset)); }
public void Equals_AssetWithUnselectedAltPath_IsEqual() { var asset = new CssAsset(_context, _settings) { ConditionalBrowser = IE.Version.IE5 }; asset.AlternatePaths.Add("unselected-alt-name", "/other-path.css"); var equalAsset = new CssAsset(_context, _settings) { ConditionalBrowser = IE.Version.IE5 }; Assert.IsTrue(asset.Equals(equalAsset)); }
public void CurrentAlternateName_ReturnsFromSettings() { var asset = new CssAsset(_context, _settings); Assert.That(asset.CurrentAlternateName, Is.EqualTo("test-alt-name")); }
public void FixtureInit() { var cssConfig = new Mock<AssetConfiguration>(); cssConfig.Setup(c => c.AlternateName).Returns(String.Empty); var jsConfig = new Mock<AssetConfiguration>(); jsConfig.Setup(c => c.AlternateName).Returns(String.Empty); var settings = new Mock<IAssetManagerSettings>(); settings.Setup(s => s.Css).Returns(cssConfig.Object); settings.Setup(s => s.Javascript).Returns(jsConfig.Object); _settings = settings.Object; var request = new Mock<HttpRequestBase>(); request.Setup(r => r.MapPath(It.IsAny<string>())) .Returns<string>(s => @"c:\full\path\" + s); var context = new Mock<HttpContextBase>(); context.Setup(c => c.Request).Returns(request.Object); _context = context.Object; _builder = new CssHtmlBuilder(); _conditionalAsset = new CssAsset(context.Object, settings.Object) { Path = "~/test-path.css", ConditionalBrowser = IE.Version.IE7, ConditionalEquality = IE.Equality.LessThan }; _conditionalAsset2 = new CssAsset(context.Object, settings.Object) { Path = "~/test-path.css", ConditionalBrowser = IE.Version.IE8, ConditionalEquality = IE.Equality.EqualTo }; _asset = new CssAsset(context.Object, settings.Object) { Path = "~/test-path2.css", }; }
public void Equals_NonCssAsset_IsNotEqual() { var asset = new CssAsset(_context, _settings); Assert.IsFalse(asset.Equals("test")); }