| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- using System;
- using System.Threading;
- using Microsoft.VisualStudio.TestTools.UnitTesting;
- using Moq;
- using Renci.SshNet.Common;
- using Renci.SshNet.Sftp;
- namespace Renci.SshNet.Tests.Classes.Sftp
- {
- public abstract class SftpFileReaderTestBase
- {
- internal Mock<ISftpSession> SftpSessionMock { get; private set; }
- protected abstract void SetupData();
- protected void CreateMocks()
- {
- SftpSessionMock = new Mock<ISftpSession>(MockBehavior.Strict);
- }
- protected abstract void SetupMocks();
- protected virtual void Arrange()
- {
- SetupData();
- CreateMocks();
- SetupMocks();
- }
- [TestInitialize]
- public void SetUp()
- {
- Arrange();
- Act();
- }
- protected abstract void Act();
- protected static SftpFileAttributes CreateSftpFileAttributes(long size)
- {
- var utcDefault = DateTime.SpecifyKind(default, DateTimeKind.Utc);
- return new SftpFileAttributes(utcDefault, utcDefault, size, default, default, default, null);
- }
- protected static byte[] CreateByteArray(Random random, int length)
- {
- var chunk = new byte[length];
- random.NextBytes(chunk);
- return chunk;
- }
- protected static int WaitAny(WaitHandle[] waitHandles, int millisecondsTimeout)
- {
- var result = WaitHandle.WaitAny(waitHandles, millisecondsTimeout);
- if (result == WaitHandle.WaitTimeout)
- {
- throw new SshOperationTimeoutException();
- }
- return result;
- }
- }
- }
|