SquishIt.Framework.CSS.CSSAssetsFileHasher.AppendFileHash C# (CSharp) Method

AppendFileHash() public method

public AppendFileHash ( string cssFilePath, string url ) : string
cssFilePath string
url string
return string
        public string AppendFileHash(string cssFilePath, string url)
        {
            if (url.StartsWith("http", StringComparison.InvariantCultureIgnoreCase))
            {
                return url;
            }

            var assetFilePath = GetAssetFilePath(cssFilePath, url);
            var fileInfo = new FileInfo(assetFilePath);

            if (!fileInfo.Exists)
            {
                return url;
            }

            if (!string.IsNullOrEmpty(HashQueryStringKeyName))
            {
                var hash = Hasher.GetHash(fileInfo);
                url = AppendQueryStringPairValue(url, HashQueryStringKeyName, hash);
            }

            return url;
        }

Usage Example

Example #1
0
        public void DoesNotAppendHashIfFileDoesNotExists()
        {
            var hashQueryStringKeyName = "v";
            var fileResolver = new FileSystemResolver();
            var hasher = new StubHasher("hash");
            var pathTranslator = new PathTranslator();

            var cssFilePath = TestUtilities.PreparePath(@"C:\somepath\output.css");
            var url = "/doesnotexist.jpg";

            var assetsFileHasher = new CSSAssetsFileHasher(hashQueryStringKeyName, fileResolver, hasher, pathTranslator);

            var rewrittenUrl = assetsFileHasher.AppendFileHash(cssFilePath, url);

            Assert.That(rewrittenUrl, Is.EqualTo(url));
        }
All Usage Examples Of SquishIt.Framework.CSS.CSSAssetsFileHasher::AppendFileHash