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));
 }
Esempio n. 4
0
 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"));
 }
Esempio n. 8
0
 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"));
 }