DirectConnectorTestBase.cs 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. using Microsoft.Extensions.Logging.Abstractions;
  2. using Moq;
  3. using Renci.SshNet.Connection;
  4. using Renci.SshNet.Tests.Common;
  5. namespace Renci.SshNet.Tests.Classes.Connection
  6. {
  7. public abstract class DirectConnectorTestBase : TripleATestBase
  8. {
  9. internal Mock<ISocketFactory> SocketFactoryMock { get; private set; }
  10. internal DirectConnector Connector { get; private set; }
  11. internal SocketFactory SocketFactory { get; private set; }
  12. protected virtual void CreateMocks()
  13. {
  14. SocketFactoryMock = new Mock<ISocketFactory>(MockBehavior.Strict);
  15. }
  16. protected virtual void SetupData()
  17. {
  18. Connector = new DirectConnector(SocketFactoryMock.Object, NullLoggerFactory.Instance);
  19. SocketFactory = new SocketFactory();
  20. }
  21. protected virtual void SetupMocks()
  22. {
  23. }
  24. protected sealed override void Arrange()
  25. {
  26. CreateMocks();
  27. SetupData();
  28. SetupMocks();
  29. }
  30. protected ConnectionInfo CreateConnectionInfo(string hostName)
  31. {
  32. return new ConnectionInfo(hostName,
  33. 1027,
  34. "user",
  35. new KeyboardInteractiveAuthenticationMethod("user"));
  36. }
  37. }
  38. }