public void Render_JavascriptAssetType_RendersOnlyCorrectAssetType() { // given mixed assets, a render of AssetType.Javascript only returns Javascript assets var cssAsset = new CssAsset(_context, _settings) { Path = "test-path" }; _assetManager.Add(cssAsset, null); var jsAsset = new JavascriptAsset(_context, _settings) { Path = "test-path2" }; _assetManager.Add(jsAsset, null); _assetManager.Render(AssetType.Javascript, 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 <JavascriptAsset>(asset); Assert.That(asset.Path, Is.EqualTo("test-path2")); }
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 Render_NonExistingAssetGroup_RendersNothing() { // given assets in a group, calling a different group renders nothing var newAsset1 = new CssAsset(_context, _settings) { Path = "test-path1" }; var newAsset2 = new CssAsset(_context, _settings) { Path = "test-path2" }; var newAsset3 = new CssAsset(_context, _settings) { Path = "test-path3" }; var newAsset4 = new CssAsset(_context, _settings) { Path = "test-path4" }; _assetManager.Add(newAsset1, null); _assetManager.Add(newAsset2, null); _assetManager.Add(newAsset3, null); _assetManager.Add(newAsset4, null); _assetManager.Render(AssetType.Css, "test-group"); Assert.That(_buildHtmlCalls.Count, Is.EqualTo(0)); }
public void EqualsOperator_Nulls_AreNotEqual() { var asset = new CssAsset(_context, _settings); Assert.IsFalse(null == asset); Assert.IsFalse(asset == null); }
public void NotEqualsOperator_Nulls_AreNotEqual() { var asset = new CssAsset(_context, _settings); Assert.IsTrue(null != asset); Assert.IsTrue(asset != null); }
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 CssAsset_GetKey_ReturnsCssAssetKey() { var asset = new CssAsset(_context, _settings) { Path = "valid-path" }; Assert.That(asset.Key as CssAssetKey, Is.Not.Null); }
public void CssAsset_GetKey_ThrowsNoErrors() { var asset = new CssAsset(_context, _settings) { Path = "valid-path" }; Assert.That(asset.Key, Is.Not.Null); }
public void CssAsset_GetKey_NonExistantAlternateName_ThrowsNoErrors() { var asset = new CssAsset(_context, _notExternalAltSettings) { Path = "valid-path" }; var key = asset.Key; Assert.That(key, Is.Not.Null); }
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 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 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 CurrentPath_WithoutAlternatePath_ReturnsCorrectPath() { var asset = new CssAsset(_context, _settings) { Path = "original-path" }; Assert.That(asset.CurrentAlternateName, Is.EqualTo("test-alt-name")); Assert.That(asset.CurrentPath, Is.EqualTo("original-path")); }
public void RelativePath_IsProcessed() { var reader = GetReader("body { background: url(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.Once()); Assert.That(asset.Reader.Content, Contains.Substring(_fakeAbsoluteUrlPrefix)); }
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_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 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 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 void ProcessedWithMixedQuotes_KeepFirstQuoteStyle() { var reader = GetReader("body { background: url('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.Once()); Assert.That(asset.Reader.Content, Contains.Substring("url('")); Assert.That(asset.Reader.Content, Contains.Substring("')")); }
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_AssetWithSameBrowser_IsEqual() { var asset = new CssAsset(_context, _settings) { ConditionalBrowser = IE.Version.IE5 }; var equalAsset = new CssAsset(_context, _settings) { ConditionalBrowser = IE.Version.IE5 }; Assert.IsTrue(asset.Equals(equalAsset)); }
public void Equals_AssetWithDifferentEquality_IsNotEqual() { var asset = new CssAsset(_context, _settings) { ConditionalEquality = IE.Equality.LessThan }; var equalAsset = new CssAsset(_context, _settings) { ConditionalEquality = IE.Equality.GreaterThan }; Assert.IsFalse(asset.Equals(equalAsset)); }
public void Equals_AssetWithSameEquality_IsEqual() { var asset = new CssAsset(_context, _settings) { ConditionalEquality = IE.Equality.GreaterThan }; var equalAsset = new CssAsset(_context, _settings) { ConditionalEquality = IE.Equality.GreaterThan }; 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_AssetWithDifferentMedia_IsNotEqual() { var asset = new CssAsset(_context, _settings) { Media = "test-media" }; var equalAsset = new CssAsset(_context, _settings) { Media = "test-media2" }; Assert.IsFalse(asset.Equals(equalAsset)); }
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 Equals_AssetWithDifferentPath_IsNotEqual() { var asset = new CssAsset(_context, _settings) { Path = "test-path" }; var equalAsset = new CssAsset(_context, _settings) { Path = "test-path2" }; Assert.IsFalse(asset.Equals(equalAsset)); }
public void Remove_NonExistingCssAsset_WithGroup_DoesNotRemoveAsset() { // given a css asset that's NOT in the manager under an asset group, // the remove() call does nothing var newAsset = new CssAsset(_context, _settings) { Path = "test-path" }; _assetManager.Remove(newAsset, "test-group"); _assetManager.Render(AssetType.Css, "test-group"); Assert.That(_buildHtmlCalls.Count, Is.EqualTo(0)); }