public void Wipe() { string testFolder = Path.Join(AppDomain.CurrentDomain.BaseDirectory, this.GetType().Name); if (Directory.Exists(testFolder)) { Directory.Delete(testFolder, true); } Directory.CreateDirectory(testFolder); Core.ITetriSettings settings = new Core.TetriSettings(new TestLogger <Core.TetriSettings>()) { TempPath = Path.Join(testFolder, "Temp") }; Directory.CreateDirectory(settings.TempPath); string testFilePath = Path.Join(settings.TempPath, "test"); File.WriteAllText(testFilePath, string.Empty); Core.ITagsService tagService = new Core.TagsService( settings, new TestLogger <Core.ITagsService>(), new Core.PackageListCache(MemoryCacheHelper.GetInstance())); Core.IIndexReader reader = new Core.IndexReader(settings, new Core.ThreadDefault(), tagService, new TestLogger <Core.IIndexReader>(), new FileSystem(), HashServiceHelper.Instance()); reader.Initialize(); Assert.False(File.Exists(testFilePath)); }
public void LockedTag() { TestPackage testPackage = PackageHelper.CreatePackage(this.Settings); IMemoryCache _memoryCache = MemoryCacheHelper.GetInstance(); PackageListCache PackageListCache = new PackageListCache(_memoryCache); ITagsService tagsService = new Core.TagsService(this.Settings, new TestLogger <ITagsService>(), PackageListCache); tagsService.AddTag(testPackage.Name, "mytag"); string[] tagDirectories = Directory.GetDirectories(Path.Join(this.Settings.TagsPath)); Assert.Single(tagDirectories); // should be 1 only string[] tagSubscribers = Directory.GetFiles(tagDirectories.First()); Assert.Single(tagSubscribers); // should be 1 only // lock the tag by opening a read stream on it using (new FileStream(tagSubscribers.First(), FileMode.Open, FileAccess.Read, FileShare.Read)) { // no need to assert, this test is for coverage, and all we want is no exception to be thrown here this.IndexReader.DeletePackage(testPackage.Name); } }