SftpClientTest.ChangeDirectory.cs 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154
  1. using Renci.SshNet.Common;
  2. namespace Renci.SshNet.IntegrationTests.OldIntegrationTests
  3. {
  4. /// <summary>
  5. /// Implementation of the SSH File Transfer Protocol (SFTP) over SSH.
  6. /// </summary>
  7. public partial class SftpClientTest : IntegrationTestBase
  8. {
  9. [TestMethod]
  10. [TestCategory("Sftp")]
  11. public void Test_Sftp_ChangeDirectory_Root_Dont_Exists()
  12. {
  13. using (var sftp = new SftpClient(SshServerHostName, SshServerPort, User.UserName, User.Password))
  14. {
  15. sftp.Connect();
  16. Assert.ThrowsException<SftpPathNotFoundException>(() => sftp.ChangeDirectory("/asdasd"));
  17. }
  18. }
  19. [TestMethod]
  20. [TestCategory("Sftp")]
  21. public async Task Test_Sftp_ChangeDirectory_Root_Dont_ExistsAsync()
  22. {
  23. using (var sftp = new SftpClient(SshServerHostName, SshServerPort, User.UserName, User.Password))
  24. {
  25. await sftp.ConnectAsync(CancellationToken.None).ConfigureAwait(false);
  26. await Assert.ThrowsExceptionAsync<SftpPathNotFoundException>(
  27. () => sftp.ChangeDirectoryAsync("/asdasd", CancellationToken.None));
  28. }
  29. }
  30. [TestMethod]
  31. [TestCategory("Sftp")]
  32. public void Test_Sftp_ChangeDirectory_Root_With_Slash_Dont_Exists()
  33. {
  34. using (var sftp = new SftpClient(SshServerHostName, SshServerPort, User.UserName, User.Password))
  35. {
  36. sftp.Connect();
  37. Assert.ThrowsException<SftpPathNotFoundException>(() => sftp.ChangeDirectory("/asdasd/"));
  38. }
  39. }
  40. [TestMethod]
  41. [TestCategory("Sftp")]
  42. public async Task Test_Sftp_ChangeDirectory_Root_With_Slash_Dont_ExistsAsync()
  43. {
  44. using (var sftp = new SftpClient(SshServerHostName, SshServerPort, User.UserName, User.Password))
  45. {
  46. await sftp.ConnectAsync(CancellationToken.None).ConfigureAwait(false);
  47. await Assert.ThrowsExceptionAsync<SftpPathNotFoundException>(
  48. () => sftp.ChangeDirectoryAsync("/asdasd/", CancellationToken.None));
  49. }
  50. }
  51. [TestMethod]
  52. [TestCategory("Sftp")]
  53. public void Test_Sftp_ChangeDirectory_Subfolder_Dont_Exists()
  54. {
  55. using (var sftp = new SftpClient(SshServerHostName, SshServerPort, User.UserName, User.Password))
  56. {
  57. sftp.Connect();
  58. Assert.ThrowsException<SftpPathNotFoundException>(() => sftp.ChangeDirectory("/asdasd/sssddds"));
  59. }
  60. }
  61. [TestMethod]
  62. [TestCategory("Sftp")]
  63. public async Task Test_Sftp_ChangeDirectory_Subfolder_Dont_ExistsAsync()
  64. {
  65. using (var sftp = new SftpClient(SshServerHostName, SshServerPort, User.UserName, User.Password))
  66. {
  67. await sftp.ConnectAsync(CancellationToken.None).ConfigureAwait(false);
  68. await Assert.ThrowsExceptionAsync<SftpPathNotFoundException>(
  69. () => sftp.ChangeDirectoryAsync("/asdasd/sssddds", CancellationToken.None));
  70. }
  71. }
  72. [TestMethod]
  73. [TestCategory("Sftp")]
  74. public void Test_Sftp_ChangeDirectory_Subfolder_With_Slash_Dont_Exists()
  75. {
  76. using (var sftp = new SftpClient(SshServerHostName, SshServerPort, User.UserName, User.Password))
  77. {
  78. sftp.Connect();
  79. Assert.ThrowsException<SftpPathNotFoundException>(() => sftp.ChangeDirectory("/asdasd/sssddds/"));
  80. }
  81. }
  82. [TestMethod]
  83. [TestCategory("Sftp")]
  84. public async Task Test_Sftp_ChangeDirectory_Subfolder_With_Slash_Dont_ExistsAsync()
  85. {
  86. using (var sftp = new SftpClient(SshServerHostName, SshServerPort, User.UserName, User.Password))
  87. {
  88. await sftp.ConnectAsync(CancellationToken.None).ConfigureAwait(false);
  89. await Assert.ThrowsExceptionAsync<SftpPathNotFoundException>(
  90. () => sftp.ChangeDirectoryAsync("/asdasd/sssddds/", CancellationToken.None));
  91. }
  92. }
  93. [TestMethod]
  94. [TestCategory("Sftp")]
  95. public void Test_Sftp_ChangeDirectory_Which_Exists()
  96. {
  97. using (var sftp = new SftpClient(SshServerHostName, SshServerPort, User.UserName, User.Password))
  98. {
  99. sftp.Connect();
  100. sftp.ChangeDirectory("/usr");
  101. Assert.AreEqual("/usr", sftp.WorkingDirectory);
  102. }
  103. }
  104. [TestMethod]
  105. [TestCategory("Sftp")]
  106. public async Task Test_Sftp_ChangeDirectory_Which_ExistsAsync()
  107. {
  108. using (var sftp = new SftpClient(SshServerHostName, SshServerPort, User.UserName, User.Password))
  109. {
  110. await sftp.ConnectAsync(CancellationToken.None).ConfigureAwait(false);
  111. await sftp.ChangeDirectoryAsync("/usr", CancellationToken.None).ConfigureAwait(false);
  112. Assert.AreEqual("/usr", sftp.WorkingDirectory);
  113. }
  114. }
  115. [TestMethod]
  116. [TestCategory("Sftp")]
  117. public void Test_Sftp_ChangeDirectory_Which_Exists_With_Slash()
  118. {
  119. using (var sftp = new SftpClient(SshServerHostName, SshServerPort, User.UserName, User.Password))
  120. {
  121. sftp.Connect();
  122. sftp.ChangeDirectory("/usr/");
  123. Assert.AreEqual("/usr", sftp.WorkingDirectory);
  124. }
  125. }
  126. [TestMethod]
  127. [TestCategory("Sftp")]
  128. public async Task Test_Sftp_ChangeDirectory_Which_Exists_With_SlashAsync()
  129. {
  130. using (var sftp = new SftpClient(SshServerHostName, SshServerPort, User.UserName, User.Password))
  131. {
  132. await sftp.ConnectAsync(CancellationToken.None).ConfigureAwait(false);
  133. await sftp.ChangeDirectoryAsync("/usr/", CancellationToken.None).ConfigureAwait(false);
  134. Assert.AreEqual("/usr", sftp.WorkingDirectory);
  135. }
  136. }
  137. }
  138. }