using Microsoft.VisualStudio.TestTools.UnitTesting; using System; using System.IO; using System.Reflection; namespace Renci.SshNet.Tests.Common { [TestClass] public abstract class TestBase { private static Assembly _executingAssembly = Assembly.GetExecutingAssembly(); [TestInitialize()] public void Init() { this.OnInit(); } [TestCleanup()] public void Cleanup() { this.OnCleanup(); } protected virtual void OnInit() { } protected virtual void OnCleanup() { } /// /// Creates the test file. /// /// Name of the file. /// Size in megabytes. 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 Stream GetData(string name) { return _executingAssembly.GetManifestResourceStream(string.Format("Renci.SshNet.Tests.Data.{0}", name)); } } }