public static void Main() { Task waiter = null; try { Console.WriteLine("Write list of test separating them by spaces"); var testFiles = Console.ReadLine().Split(' ').ToList(); Console.WriteLine("Write max amount of streams for reading"); var maxInputStreams = int.Parse(Console.ReadLine()); Console.WriteLine("Write max amount of streams for writing"); var maxOutStreams = int.Parse(Console.ReadLine()); Console.WriteLine("Write max amount of streams for generating tests"); var maxMainStreams = int.Parse(Console.ReadLine()); waiter = new NUnitTestsGenerator().GenerateTests(testFiles, PathToSave, maxInputStreams, maxOutStreams, maxMainStreams); } catch (Exception e) { Console.WriteLine("Error: " + e.Message); } waiter?.Wait(); Console.WriteLine("Finished, check tests in [{0}] folder", Path.GetFullPath(PathToSave)); Console.ReadLine(); }
public void SyntaxErrorTest() { ClearFolder(_folderForTests); var testsGenerator = new NUnitTestsGenerator(); var waiter = testsGenerator.GenerateTests(new[] { _fileForTest }, _folderForTests, 8, 8, 8); waiter.Wait(); var testFile = Directory.GetFiles(_folderForTests).First(file => Path.GetFileName(file) == "BarClassTests.cs"); var text = GetText(testFile); var tree = CSharpSyntaxTree.ParseText(text); var diagnostics = tree.GetDiagnostics().FirstOrDefault(n => n.Severity == DiagnosticSeverity.Error); Assert.IsNull(diagnostics); }
public void MethodNameTest() { var testsGenerator = new NUnitTestsGenerator(); var waiter = testsGenerator.GenerateTests(new [] { _fileForTest }, _folderForTests, 8, 8, 8); waiter.Wait(); var testFile = Directory.GetFiles(_folderForTests).First(file => Path.GetFileName(file) == "BarClassTests.cs"); var text = GetText(testFile); var tree = CSharpSyntaxTree.ParseText(text); var root = tree.GetRoot(); var method = root.DescendantNodes().OfType <MethodDeclarationSyntax>().First(); Assert.AreEqual("MyPublicMethodTest", method.Identifier.ValueText); }
public async Task TestsInitialize() { // get all test classes string testClassesFolder = System.IO.Path.Combine(Directory.GetCurrentDirectory(), "..\\..\\TestClasses"); var allTestClasses = new List <string>(); foreach (string path in Directory.GetFiles(testClassesFolder, "*.cs")) { allTestClasses.Add(path); } // create folder for generated classes generatedClassesFolder = System.IO.Path.Combine(testClassesFolder, "NUnitGeneretadClasses"); Directory.CreateDirectory(generatedClassesFolder); // generate classes NUnitTestsGenerator generator = new NUnitTestsGenerator(allTestClasses, generatedClassesFolder, 3, 3, 3); await generator.Generate(); }
public void FileNameTest() { var testsGenerator = new NUnitTestsGenerator(); var waiter = testsGenerator.GenerateTests(new [] { _fileForTest }, _folderForTests, 8, 8, 8); waiter.Wait(); var testFiles = Directory.GetFiles(_folderForTests).Select(Path.GetFileName); var contains = false; var cs = "BarClassTests.cs"; var enumerable = testFiles as string[] ?? testFiles.ToArray(); foreach (var file in enumerable) { if (Equals(file, cs)) { contains = true; break; } } Assert.IsTrue(contains); Assert.IsTrue(enumerable.Contains("FooClassTests.cs")); Assert.AreEqual(2, enumerable.ToArray().Length); }