| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 |
- using System.Diagnostics;
- using Renci.SshNet.Abstractions;
- namespace Renci.SshNet.IntegrationTests.TestsFixtures
- {
- /// <summary>
- /// The base class for integration tests
- /// </summary>
- public abstract class IntegrationTestBase
- {
- private readonly InfrastructureFixture _infrastructureFixture;
- /// <summary>
- /// The SSH Server host name.
- /// </summary>
- public string SshServerHostName
- {
- get
- {
- return _infrastructureFixture.SshServerHostName;
- }
- }
- /// <summary>
- /// The SSH Server host name
- /// </summary>
- public ushort SshServerPort
- {
- get
- {
- return _infrastructureFixture.SshServerPort;
- }
- }
- /// <summary>
- /// The admin user that can use SSH Server.
- /// </summary>
- public SshUser AdminUser
- {
- get
- {
- return _infrastructureFixture.AdminUser;
- }
- }
- /// <summary>
- /// The normal user that can use SSH Server.
- /// </summary>
- public SshUser User
- {
- get
- {
- return _infrastructureFixture.User;
- }
- }
- protected IntegrationTestBase()
- {
- _infrastructureFixture = InfrastructureFixture.Instance;
- ShowInfrastructureInformation();
- }
- private void ShowInfrastructureInformation()
- {
- Console.WriteLine($"SSH Server host name: {_infrastructureFixture.SshServerHostName}");
- Console.WriteLine($"SSH Server port: {_infrastructureFixture.SshServerPort}");
- }
- /// <summary>
- /// Creates the test file.
- /// </summary>
- /// <param name="fileName">Name of the file.</param>
- /// <param name="size">Size in megabytes.</param>
- protected 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);
- }
- }
- }
- protected void EnableTracing()
- {
- DiagnosticAbstraction.Source.Switch = new SourceSwitch("sourceSwitch", nameof(SourceLevels.Verbose));
- DiagnosticAbstraction.Source.Listeners.Remove("Default");
- DiagnosticAbstraction.Source.Listeners.Add(new ConsoleTraceListener() { Name = "TestConsoleLogger" });
- }
- protected void DisableTracing()
- {
- DiagnosticAbstraction.Source.Switch = new SourceSwitch("sourceSwitch", nameof(SourceLevels.Off));
- DiagnosticAbstraction.Source.Listeners.Remove("TestConsoleLogger");
- }
- }
- }
|