Ruby не выбирает правильный перегруженный метод - PullRequest
1 голос
/ 29 октября 2010

У меня есть простой Nunit-бегун для рейк-скрипта, который у меня есть:

module NUnitRunner

    @NUnitPath = "#{RootDir}/tools/nunit/nunit-console.exe";

    def self.RunTests(testFile)
        system("\"#{@NUnitPath}\" ? \"#{testFile}\"")
    end

    def self.RunTests(testFile, runArgs)
        system("\"#{@NUnitPath}\" ? \"#{testFile}\" #{runArgs}")
    end

end

Когда я вызываю этот модуль из своей задачи:

# Run Unit Tests
task :run_unit_tests do
    puts "Running Unit Tests"

    unitTestFile = "#{RootDir}/src/tests/unittests.dll"
    NUnitRunner.RunTests(unitTestFile)
end

Он просто говорит мне "неверное число аргументов (1 для 2) ", и если я удаляю перегруженный метод, который принимает 2 аргумента, он работает нормально, так есть ли какая-то странность с ruby, о которой я не знаю в этом случае?

1 Ответ

3 голосов
/ 29 октября 2010

Ruby не поддерживает перегрузку методов.

...