コード例 #1
0
        public void CoreCacheTests()
        {
            string cacheDir = TempFileManager.Instance.CreateTempDir();

            LocalCabResourceCache cache = new LocalCabResourceCache(cacheDir, GetSupportingCab("Unsigned_1529.0310.cab"), true);
            SetEnforceSigning(cache, false);
            cache.Refresh(10000, true);

            if (!cache.RecentlyRefreshed)
                throw new Exception("Empty cache wasn't refreshed. Cache should be marked as recently refreshed!");

            if (cache.CabVersion != new Version("12.0.1529.310"))
                throw new Exception("Empty cache wasn't refreshed. Cab version is incorrect");

            using (Stream blogProviders = cache.GetResource("BlogProvidersB5.xml"))
            {
                if (blogProviders == null)
                    throw new Exception("Cache doesn't contain blog providers file!");
            }

            cache = new LocalCabResourceCache(cacheDir, GetSupportingCab("Unsigned_1532.0311.cab"), true);
            cache.Refresh(10000, false);

            if (!cache.RecentlyRefreshed)
                throw new Exception("Old cache wasn't refreshed. Cache should be marked as recently refreshed!");

            if (cache.CabVersion != new Version("12.0.1532.311"))
                throw new Exception("Old cache wasn't refreshed. Cab version is incorrect");

            cache = new LocalCabResourceCache(cacheDir, GetSupportingCab("Unsigned_1529.0310.cab"), true);
            cache.Refresh(10000, false);

            if (cache.CabVersion == new Version("12.0.1529.310"))
                throw new Exception("Old cab file should be ignored- rolling back to old version is not allowed!");
        }
コード例 #2
0
        public void DisableCabDownload()
        {
            LocalCabResourceCache cache = new LocalCabResourceCache(TempFileManager.Instance.CreateTempDir(), GetSupportingCab("Unsigned_1532.0311.cab"), false);
            cache.Refresh(10000, false);

            if (cache.RecentlyRefreshed)
                throw new Exception("Cache appears to have downloaded even though downloading was disabled!");
        }
コード例 #3
0
        public void RefreshDoesntThrow()
        {
            LocalCabResourceCache cache =
                new LocalCabResourceCache(TempFileManager.Instance.CreateTempDir(),
                                          UrlHelper.CreateUrlFromPath(@"c:\foo.cab"), true);

            cache.Refresh(10000, false);
        }
コード例 #4
0
        public void SigningIsEnforced()
        {
            LocalCabResourceCache cache = new LocalCabResourceCache(TempFileManager.Instance.CreateTempDir(), GetSupportingCab("Unsigned_1532.0311.cab"), true);

            SetEnforceSigning(cache, true);

            cache.Refresh(10000, false);

            if (cache.RecentlyRefreshed)
                throw new Exception("Signing wasn't enforced!");
        }
コード例 #5
0
        public void DisableCabDownload()
        {
            LocalCabResourceCache cache = new LocalCabResourceCache(TempFileManager.Instance.CreateTempDir(), GetSupportingCab("Unsigned_1532.0311.cab"), false);

            cache.Refresh(10000, false);

            if (cache.RecentlyRefreshed)
            {
                throw new Exception("Cache appears to have downloaded even though downloading was disabled!");
            }
        }
コード例 #6
0
        public void SigningIsEnforced()
        {
            LocalCabResourceCache cache = new LocalCabResourceCache(TempFileManager.Instance.CreateTempDir(), GetSupportingCab("Unsigned_1532.0311.cab"), true);

            SetEnforceSigning(cache, true);

            cache.Refresh(10000, false);

            if (cache.RecentlyRefreshed)
            {
                throw new Exception("Signing wasn't enforced!");
            }
        }
コード例 #7
0
        public void CoreCacheTests()
        {
            string cacheDir = TempFileManager.Instance.CreateTempDir();

            LocalCabResourceCache cache = new LocalCabResourceCache(cacheDir, GetSupportingCab("Unsigned_1529.0310.cab"), true);

            SetEnforceSigning(cache, false);
            cache.Refresh(10000, true);

            if (!cache.RecentlyRefreshed)
            {
                throw new Exception("Empty cache wasn't refreshed. Cache should be marked as recently refreshed!");
            }

            if (cache.CabVersion != new Version("12.0.1529.310"))
            {
                throw new Exception("Empty cache wasn't refreshed. Cab version is incorrect");
            }

            using (Stream blogProviders = cache.GetResource("BlogProvidersB5.xml"))
            {
                if (blogProviders == null)
                {
                    throw new Exception("Cache doesn't contain blog providers file!");
                }
            }

            cache = new LocalCabResourceCache(cacheDir, GetSupportingCab("Unsigned_1532.0311.cab"), true);
            cache.Refresh(10000, false);

            if (!cache.RecentlyRefreshed)
            {
                throw new Exception("Old cache wasn't refreshed. Cache should be marked as recently refreshed!");
            }

            if (cache.CabVersion != new Version("12.0.1532.311"))
            {
                throw new Exception("Old cache wasn't refreshed. Cab version is incorrect");
            }

            cache = new LocalCabResourceCache(cacheDir, GetSupportingCab("Unsigned_1529.0310.cab"), true);
            cache.Refresh(10000, false);

            if (cache.CabVersion == new Version("12.0.1529.310"))
            {
                throw new Exception("Old cab file should be ignored- rolling back to old version is not allowed!");
            }
        }
コード例 #8
0
 public void RefreshDoesntThrow()
 {
     LocalCabResourceCache cache =
         new LocalCabResourceCache(TempFileManager.Instance.CreateTempDir(),
                                   UrlHelper.CreateUrlFromPath(@"c:\foo.cab"), true);
     cache.Refresh(10000, false);
 }
コード例 #9
0
 private static void SetEnforceSigning(LocalCabResourceCache cache, bool enforce)
 {
     FieldInfo signingField = cache.GetType().GetField("_enforceSigning", BindingFlags.Instance | BindingFlags.Static | BindingFlags.NonPublic);
     signingField.SetValue(cache, enforce);
 }
コード例 #10
0
        private static void SetEnforceSigning(LocalCabResourceCache cache, bool enforce)
        {
            FieldInfo signingField = cache.GetType().GetField("_enforceSigning", BindingFlags.Instance | BindingFlags.Static | BindingFlags.NonPublic);

            signingField.SetValue(cache, enforce);
        }