// ---------------- Functions ----------------

        public override void Run(MeditationLogContext context)
        {
            var args = context.CreateFromArguments <VersionDumpArguments>();

            context.Information($"Writing version '{MedituConstants.VersionString}' to file '{args.OutputFile}'.");

            File.WriteAllText(
                args.OutputFile.ToString(),
                MedituConstants.VersionString
                );
        }
        // ----------------- Functions -----------------

        public override void Run(MeditationLogContext context)
        {
            TestConfig testConfig = new TestConfig
            {
                ResultsFolder = context.RepoRoot.Combine(new DirectoryPath("TestResults")),
                TestCsProject = context.SrcPath.CombineWithFilePath(new FilePath("Meditu.UnitTests/Meditu.UnitTests.csproj"))
            };
            UnitTestRunner runner = new UnitTestRunner(context, testConfig);

            TestArguments args = context.CreateFromArguments <TestArguments>();

            if (args.RunWithCodeCoverage)
            {
                runner.RunCodeCoverage(TestArguments.CoverageFilter);
            }
            else
            {
                runner.RunTests();
            }
        }