/// <summary> /// Returns the directory where the package will be installed. /// Also ensures the directory exists, and that there is free-space on the disk. /// </summary> public static string GetApplicationDirectory(PackageFileNameMetadata packageFileNameMetadata, VariableDictionary variables, ICalamariFileSystem fileSystem) { return(EnsureTargetPathExistsAndIsEmpty( Path.Combine(GetEnvironmentApplicationDirectory(fileSystem, variables), FileNameEscaper.Escape(packageFileNameMetadata.PackageId), FileNameEscaper.Escape(packageFileNameMetadata.Version.ToString())), fileSystem)); }
public void AllInvalidCharactersEncoded() { var reallyUnsafeString = "H%<>:\"/\\|?I"; var encoded = FileNameEscaper.Escape(reallyUnsafeString); var encodedCharacters = FileNameEscaper.EscapedCharacters.ToList(); encodedCharacters.Remove('%'); //Since they are encoded with a % Assert.IsFalse(encoded.Any(encodedCharacters.Contains)); }
public void Encode(string input, string expected) { Assert.AreEqual(expected, FileNameEscaper.Escape(input)); }