public void use_the_folder_if_it_exists_for_the_name()
        {
            var combination1 = new StyleFileCombination("f1", _files);
            var combination2 = new StyleFileCombination("f1/f2", _files);

            combination1.Name.ShouldStartWith("f1/");
            combination2.Name.ShouldStartWith("f1/f2/");
        }
        public void find_combination_in_the_underlying_storage()
        {
            var theCache = new AssetCombinationCache();
            var scriptCombo1 = new ScriptFileCombination("script1", files(5));
            theCache.StoreCombination(MimeType.Javascript, scriptCombo1);
            theCache.StoreCombination(MimeType.Javascript, new ScriptFileCombination("script2", files(6)));
            theCache.StoreCombination(MimeType.Javascript, new ScriptFileCombination("script3", files(7)));
            theCache.StoreCombination(MimeType.Javascript, new ScriptFileCombination("script4", files(4)));

            theCache.StoreCombination(MimeType.Css, new StyleFileCombination("css1", null, files(10)));
            theCache.StoreCombination(MimeType.Css, new StyleFileCombination("css2", null, files(8)));
            var cssCombo3 = new StyleFileCombination("css3", null, files(12));
            theCache.StoreCombination(MimeType.Css, cssCombo3);
            theCache.StoreCombination(MimeType.Css, new StyleFileCombination("css4", null, files(15)));

            theCache.FindCombination("script1").ShouldBeTheSameAs(scriptCombo1);
            theCache.FindCombination("css3").ShouldBeTheSameAs(cssCombo3);

            theCache.FindCombination("something that does not exist").ShouldBeNull();
        }
 public void mime_type_has_to_be_css()
 {
     var combination = new StyleFileCombination(null, new AssetFile[0]);
     combination.MimeType.ShouldEqual(MimeType.Css);
 }
 public void asset_folder_has_to_be_styles()
 {
     var combination = new StyleFileCombination(null, new AssetFile[0]);
     combination.Folder.ShouldEqual(AssetFolder.styles);
 }