public void CommandTemplaterFailsIfArgumentsAreNotTemplated() { var placeholders = new CommandPlaceholders("/source.wav", "/out_dir/", "/TempDir/", "/"); var template = "audio2csv {source} {output} --no-debug"; var result = runner.PrepareArguments(template, new(), placeholders); result.Should().Be("audio2csv /source.wav /out_dir/ --no-debug"); var faultyTemplate = "audio2csv {source} {config} {output} --no-debug"; Action act = () => runner.PrepareArguments(faultyTemplate, new(), placeholders); act.Should() .Throw <ArgumentException>() .WithMessage("Could not finish templating command. Missing a value for parameter `{config}`"); }