Beispiel #1
0
        /// <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);
        }
Beispiel #3
0
        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);
        }