Sha256: 92856336b26b1f8456e948420af5f42e9f10db963a49a43ed29c372250803989

Contents?: true

Size: 805 Bytes

Versions: 114

Compression:

Stored size: 805 Bytes

Contents

using System.IO;

namespace Generators.Output
{
    public class ExerciseWriter
    {
        public virtual void WriteToFile(GeneratorExercise generatorExercise)
        {
            var testClassFilePath = TestClassFilePath(generatorExercise);
            var testClassContents = generatorExercise.Render();

            Directory.CreateDirectory(Path.GetDirectoryName(testClassFilePath));
            File.WriteAllText(testClassFilePath, testClassContents);
        }

        private static string TestClassFilePath(GeneratorExercise generatorExercise) => Path.Combine("..", "exercises", generatorExercise.Name, TestClassFileName(generatorExercise));

        private static string TestClassFileName(GeneratorExercise generatorExercise) => $"{generatorExercise.Name.ToTestClassName()}.cs";
    }
}

Version data entries

114 entries across 114 versions & 1 rubygems

Version Path
trackler-2.2.1.78 tracks/csharp/generators/Output/ExerciseWriter.cs
trackler-2.2.1.77 tracks/csharp/generators/Output/ExerciseWriter.cs
trackler-2.2.1.76 tracks/csharp/generators/Output/ExerciseWriter.cs
trackler-2.2.1.75 tracks/csharp/generators/Output/ExerciseWriter.cs
trackler-2.2.1.74 tracks/csharp/generators/Output/ExerciseWriter.cs
trackler-2.2.1.73 tracks/csharp/generators/Output/ExerciseWriter.cs
trackler-2.2.1.72 tracks/csharp/generators/Output/ExerciseWriter.cs
trackler-2.2.1.71 tracks/csharp/generators/Output/ExerciseWriter.cs
trackler-2.2.1.70 tracks/csharp/generators/Output/ExerciseWriter.cs
trackler-2.2.1.69 tracks/csharp/generators/Output/ExerciseWriter.cs
trackler-2.2.1.68 tracks/csharp/generators/Output/ExerciseWriter.cs
trackler-2.2.1.67 tracks/csharp/generators/Output/ExerciseWriter.cs
trackler-2.2.1.66 tracks/csharp/generators/Output/ExerciseWriter.cs
trackler-2.2.1.65 tracks/csharp/generators/Output/ExerciseWriter.cs