public void Get_should_add_entry_for_extension_once() { _iconProvider = new FileAssociatedIconProvider(); // use real file system _iconProvider.ResetCache(); var tempFile = Path.GetTempFileName(); string folder = Path.GetDirectoryName(tempFile); string file = Path.GetFileName(tempFile); _iconProvider.CacheCount.Should().Be(0); _iconProvider.Get(folder, file); _iconProvider.Get(folder, file); _iconProvider.Get(folder, file); _iconProvider.Get(folder, file); _iconProvider.CacheCount.Should().Be(1); try { File.Delete(tempFile); } catch { // do nothing } }
public void Setup() { _file = Substitute.For <FileBase>(); _fileSystem = Substitute.For <IFileSystem>(); _fileSystem.File.Returns(_file); _iconProvider = new FileAssociatedIconProvider(_fileSystem); _iconProvider.ResetCache(); }