I was in the process of polishing this to address Artem's comments, but this doesn't look right to me; `getLanguageFromFileExtension` is returning the extension, not the language and then `getScriptExecutor(lang)` has code like this...

`language.equalsIgnoreCase("python")` when deciding whether to return a `PythonScriptExecutor`, a `RubyScriptExecutor` or a `DefaultScriptExecutor`.

Also, the test below is verifying that the `language` property of the processor == the file extension; not the executor type (which is always the `DefaultScriptExecutor` because of this issue.

What am I missing??