public void ShouldPersistFilesGivenOutDir() { using (var testDirectory = new TestDirectory()) { var _ = TestHarness.Run( () => Program.AsJson(Sql.ConnectionString, testDirectory.AbsolutePath), new[] { new Query { Name = "Query1", CommandText = "SELECT 1 [Num]" }, new Query { Name = "Query2", CommandText = "SELECT 2 [Num]" }, new Query { Name = "Query3", CommandText = "SELECT 3 [Num]" }, new Query { Name = "Query4", CommandText = "SELECT 4 [Num]" } } ); var actual = testDirectory.GetFiles().Select(x => x.Name).OrderBy(x => x); var expected = new[] { "Query1", "Query2", "Query3", "Query4" }; Assert.Equal(expected, actual); } }
static void Test(Func <string, int> fn, Func <FileInfo, IEnumerable <Mock> > convert) { using (var testDirectory = new TestDirectory()) { var _ = TestHarness.Run( () => fn(testDirectory.AbsolutePath), new[] { new Query { Name = "data", CommandText = @" SELECT 123 [Number], 'ABC' [Text] UNION ALL SELECT 456 [Number], 'DEF' [Text] " } } ); var file = Assert.Single(testDirectory.GetFiles()); var actual = convert(file); var expected = new[] { new Mock { Number = 123, Text = "ABC" }, new Mock { Number = 456, Text = "DEF" } }; Assert.Equal(expected, actual); } }
/// <summary> /// Entfernt alle Dateien aus dem Testverzeichnis. /// </summary> public void Cleanup() { // Wipe out foreach (var file in TestDirectory.GetFiles()) { file.Delete(); } }