using System; using System.Collections.Generic; using System.Linq; using System.Text; using Microsoft.VisualStudio.TestTools.UnitTesting; using Renci.SshClient.Tests.Properties; using System.IO; namespace Renci.SshClient.Tests.SftpClientTests { [TestClass] public class RenameFileTest { [TestInitialize()] public void CleanCurrentFolder() { using (var client = new SshClient(Resources.HOST, Resources.USERNAME, Resources.PASSWORD)) { client.Connect(); client.RunCommand("rm -rf *"); client.Disconnect(); } } [TestMethod] [TestCategory("Sftp")] public void Test_Sftp_Rename_File() { using (var sftp = new SftpClient(Resources.HOST, Resources.USERNAME, Resources.PASSWORD)) { sftp.Connect(); string uploadedFileName = Path.GetTempFileName(); string remoteFileName1 = Path.GetRandomFileName(); string remoteFileName2 = Path.GetRandomFileName(); this.CreateTestFile(uploadedFileName, 1); using (var file = File.OpenRead(uploadedFileName)) { sftp.UploadFile(file, remoteFileName1); } sftp.RenameFile(remoteFileName1, remoteFileName2); File.Delete(uploadedFileName); sftp.Disconnect(); } } /// /// Creates the test file. /// /// Name of the file. /// Size in megabytes. private void CreateTestFile(string fileName, int size) { using (var testFile = File.Create(fileName)) { var random = new Random(); for (int i = 0; i < 1024 * size; i++) { var buffer = new byte[1024]; random.NextBytes(buffer); testFile.Write(buffer, 0, buffer.Length); } } } } }