public void FormatSize() { var lzssFileInfo = new Data.LZSSFileItem(); lzssFileInfo.Size = 999; var fileData = new Data.FileData(lzssFileInfo); Assert.AreEqual("999 B", fileData.FormattedSize); lzssFileInfo.Size = 1023; fileData = new Data.FileData(lzssFileInfo); Assert.AreEqual("1 K", fileData.FormattedSize); lzssFileInfo.Size = 1025; fileData = new Data.FileData(lzssFileInfo); Assert.AreEqual("1 K", fileData.FormattedSize); lzssFileInfo.Size = 541696; fileData = new Data.FileData(lzssFileInfo); Assert.AreEqual("529 K", fileData.FormattedSize); lzssFileInfo.Size = 1099511627776; fileData = new Data.FileData(lzssFileInfo); Assert.AreEqual("1 T", fileData.FormattedSize); }
/// <remarks>slower than parseNameSize method</remarks> private static IList <Data.LZSSFileItem> parseNameSizeUpdated(object fileMapObj) { var checker = Business.CodeTimeChecker.New; Business.StatusManager.Instance.UpdateProgress(0.3); Business.StatusManager.Instance.UpdateStatus("pasering name and size..."); try { var fileMap = fileMapObj as string; if (string.IsNullOrEmpty(fileMap)) { return(null); } var items = new List <Data.LZSSFileItem>(); Regex parser = new Regex(parserToken); using (StringReader reader = new StringReader(fileMap)) { while (reader.Peek() > 0) { var match = parser.Match(reader.ReadLine()); if (match.Success) { long size; if (long.TryParse(match.Groups["size"].Value, out size)) { var item = new Data.LZSSFileItem(); item.Name = match.Groups["name"].Value; item.Size = size; items.Add(item); } } } } return(items.Count == 0 ? null : items); } catch { throw; } finally { checker.Check("LZSSFileMapParser.parseNameSizeUpdated"); } }
public void OutputName() { var lzssFileInfo = new Data.LZSSFileItem() { Name = "test file.txt", Size = 1 }; lzssFileInfo.Index = 0; var fileData = new Data.FileData(lzssFileInfo); Assert.AreEqual("test file.txt", fileData.OutputName); lzssFileInfo.Index = 1; fileData = new Data.FileData(lzssFileInfo); Assert.AreEqual("test file.txt1", fileData.OutputName); }