/// <summary> /// Moves a downloaded workshop folder. /// </summary> /// <param name="id">The ID of the workshop folder.</param> /// <param name="directoryDestination">The destination for the workshop folder.</param> public static void MoveWorkshopFolder(string id, string directoryDestination) { var inst = Installation.Load(); var workshopDir = Path.Combine(inst.InstallationPath, "steamapps", "workshop", "content", "304930", id); var mapMeta = Path.Combine(workshopDir, "Map.meta"); var mapsDir = Path.Combine(directoryDestination, "Maps", id); var contentDir = Path.Combine(directoryDestination, "Content", id); FileActions.CopyDirectory(workshopDir, FileActions.VerifyFile(mapMeta) ? mapsDir : contentDir); }
public void Copy_Files_From_Symlink() { SetupTests(); var originalFiles = Directory.GetFiles(FirstTargetPath).Length; ReparsePoint.Create(SymlinkPath, FirstTargetPath, true, ReparsePoint.LinkType.DirectoryLink); FileActions.CopyDirectory(SymlinkPath, SecondTargetPath); var measuredFiles = Directory.GetFiles(SecondTargetPath).Length; Assert.AreEqual(originalFiles, measuredFiles); }
internal static Server Create(string name, string clone = null) { var s = new Server { Name = name }; FileActions.VerifyPath(s.Folder, true); if (!string.IsNullOrEmpty(clone)) { FileActions.CopyDirectory(clone, s.Folder); } return(s); }