public DiskSpaceCollector()
 {
     if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows))
     {
         systemFilter  = FilterDisks_Windows;
         nameFormatter = FormatDiskName_Windows;
     }
     else if (RuntimeInformation.IsOSPlatform(OSPlatform.Linux))
     {
         systemFilter      = FilterDisks_Linux;
         nameFormatter     = FormatDiskName_Linux;
         mountsReaderLinux = new ReusableFileReader("/proc/mounts");
     }
 }
        public void Should_be_reusable()
        {
            var path = Path.GetTempFileName();

            using var reader = new ReusableFileReader(path);

            for (var i = 1; i < 10; i++)
            {
                var data = Enumerable.Range(0, i).Select(i => $"{i} = {Guid.NewGuid()}").ToArray();
                File.WriteAllText(path, string.Join(Environment.NewLine, data));

                reader.ReadFirstLine().Should().Be(data[0]);
                reader.ReadLines().Should().BeEquivalentTo(data);
            }
        }