public void InsertsAssetSourceFilename() { var asset = new Mock<IAsset>(); asset.SetupGet(a => a.SourceFilename).Returns("~/test/asset.js"); var app = new UrlGenerator("/"); var url = app.CreateAssetUrl(asset.Object); url.ShouldStartWith("/test/asset.js"); }
public void AppendsHashHexString() { var asset = new Mock<IAsset>(); asset.SetupGet(a => a.SourceFilename).Returns("~/test/sub/asset.js"); asset.SetupGet(a => a.Hash).Returns(new byte[] { 1, 2, 15, 16 }); var app = new UrlGenerator("/"); var url = app.CreateAssetUrl(asset.Object); url.ShouldEqual("/test/sub/asset.js?01020f10"); }
public void StartsWithApplicationVirtualDirectoryEndingInSlash() { var asset = new Mock<IAsset>(); asset.SetupGet(a => a.SourceFilename).Returns("~/test/asset.js"); var app = new UrlGenerator("/myapp"); var url = app.CreateAssetUrl(asset.Object); url.ShouldStartWith("/myapp/"); }
public void InsertsModuleDirectoryWithBackSlashesConvertedToForwardSlashes() { var asset = new Mock<IAsset>(); asset.SetupGet(a => a.SourceFilename).Returns("~/test/foo/bar/asset.js"); var app = new UrlGenerator("/myapp"); var url = app.CreateAssetUrl(asset.Object); url.ShouldStartWith("/myapp/test/foo/bar"); }