0
어떻게해야합니까? (목적은 터미널에서 인수로 테스트 파일을 전달할 때 원하는 모든 스크립트를 실행하거나 원하는 모든 스크립트를 실행할 수있게하는 것입니다. 아래의 코드와 시나리오 창 : 테스트 파일이 터미널 창 에 전달되는 경우ruby rake에서 일부 스크립트 또는 모든 스크립트를 실행합니다.
다음 시스템 코드 아래 실행됩니다 :
scripts = ENV[scripts].plit(',')
FileList[scripts].each { |file|
system("ruby #{file} > #{directory_name}/#{file}.out")}
테스트 파일이 터미널 창에서 통과되지 않은 경우 (그것은 내가 원하는 의미 내 테스트 스위트에있는 모든 스크립트를 실행하십시오), 시스템은 다음 코드를 실행합니다 :
FileList['test*.rb'].each { |file|
system("ruby #{file} > #{directory_name}/#{file}.out")}
OP는 실제로 환경 변수 (예 : scripts = some_test; ruby myscript.rb)를 사용한다는 의미 인 한이 답변에 동의합니다. OP가 실제로 스크립트를 인수로 전달하려는 경우 ENV [스크립트]에 액세스하는 대신 ARGV를 반복해야합니다. – nickgroenke
@ johnnycakes : 예, 당신의 위대한 대답은 제가하고 싶은 일입니다. 고마워요. – battleship