private static void DoTest(string[] expected, CodeCompileUnit compileUnit, Language language, GeneratorOptions options) { using (StreamWriter sw = StreamUtilities.GetStreamWriter()) { CodeGeneratorFactory.GetCodeGenerator(language, options ?? new GeneratorOptions() { IndentString = " ", DoConsistencyChecks = false, AlwaysUseFullyQualifiedName = true }) .Generate(compileUnit, sw); } var generated = StreamUtilities.ReadStream().ToArray(); Assert.Equal(expected.Length, generated.Length); for (int i = 0; i < expected.Length; i++) { Assert.True(expected[i].Equals(generated[i]), "Generated line doesn't match expected: " + (i + 1)); } }