Example #1
0
        public void TestGCSubfolderFiles()
        {
            var subfolderCache = new CacheFileSystem(root, IONull.That, null);
            var path           = Path.Combine(root, "foo/bar.zip");

            Directory.CreateDirectory(Path.Combine(root, "foo"));

            File.WriteAllText(path, zero);
            Assert.AreEqual(zero, subfolderCache.Read("foo/bar.zip").ToText());

            var file = new FileInfo(path);

            file.LastAccessTime = DateTime.Now.AddSeconds(-1000);

            cache.GC(600, 1024 * 1024 * 1024);
            Assert.AreEqual(false, subfolderCache.Contains("foo/bar.zip"));
        }
Example #2
0
 public void TestWrite()
 {
     cache.Write("foo", "foo");
     Assert.AreEqual("foo", cache.Read("foo").ToText());
 }
        public static void LoadCache(CacheFileSystem fileSystem, ExtendedFrameworkVersion frameworkVersion)
        {
            if (assemblyCache.ContainsKey(frameworkVersion))
            assemblyCache[frameworkVersion].Clear();
              else
            assemblyCache.Add(frameworkVersion, new List<string>());

              string fileName = GetFileName(frameworkVersion);
              Stream stream = fileSystem.Read(fileName);
              if (stream == null)
            return;

              using (BinaryReader reader = new BinaryReader(stream))
              {
            bool hasAssemblyCache = reader.ReadBoolean();
            if (hasAssemblyCache)
              assemblyCache[frameworkVersion].AddRange(ReadStrings(reader));

            namespaceCache.Clear();
            namespaceCache.AddRange(ReadStrings(reader));
              }
        }