public async Task <ProgramFixtureResult> Run(params string[] args)
        {
            // Create the application and override registrations.
            var application = new Program(
                builder => Overrides.ForEach(action => action(builder)),
                propagateExceptions: true);

            // Execute the application with the provided arguments.
            var exitCode = await application.Run(args);

            return(new ProgramFixtureResult
            {
                ExitCode = exitCode
            });
        }