TestFirst Обучающая свинья латинский 'rspec_config fail'
Я в процессе выполнения упражнения Pig Latin из TestFirst Teaching, но после того, как я создал файл Ruby и попытался запустить rake, я получил следующую ошибку:
austin-winslows-macbook-4:04_pig_latin HypnoBoy$ rake
(in /Users/HypnoBoy/Desktop/Code/learn_ruby)
/Library/Ruby/Site/1.8/rubygems/core_ext/kernel_require.rb:45:in `gem_original_require':
/Users/HypnoBoy/Desktop/Code/learn_ruby/04_pig_latin/pig_latin.rb:15: Invalid char `\342' in expression (SyntaxError)
/Users/HypnoBoy/Desktop/Code/learn_ruby/04_pig_latin/pig_latin.rb:15: Invalid char `\200' in expression
/Users/HypnoBoy/Desktop/Code/learn_ruby/04_pig_latin/pig_latin.rb:15: Invalid char `\246' in expression
/Users/HypnoBoy/Desktop/Code/learn_ruby/04_pig_latin/pig_latin.rb:15: syntax error, unexpected tIDENTIFIER, expecting ']'
word[i..-1] + cons.join()[0…i] + "ay"
^
from /Library/Ruby/Site/1.8/rubygems/core_ext/kernel_require.rb:45:in `require'
from /Users/HypnoBoy/Desktop/Code/learn_ruby/04_pig_latin/pig_latin_spec.rb:20
from /Library/Ruby/Gems/1.8/gems/rspec-core-2.13.1/lib/rspec/core/configuration.rb:819:in `load'
from /Library/Ruby/Gems/1.8/gems/rspec-core-2.13.1/lib/rspec/core/configuration.rb:819:in `load_spec_files'
from /Library/Ruby/Gems/1.8/gems/rspec-core-2.13.1/lib/rspec/core/configuration.rb:819:in `each'
from /Library/Ruby/Gems/1.8/gems/rspec-core-2.13.1/lib/rspec/core/configuration.rb:819:in `load_spec_files'
from /Library/Ruby/Gems/1.8/gems/rspec-core-2.13.1/lib/rspec/core/command_line.rb:22:in `run'
from /Library/Ruby/Gems/1.8/gems/rspec-core-2.13.1/lib/rspec/core/runner.rb:80:in `run'
from /Library/Ruby/Gems/1.8/gems/rspec-core-2.13.1/lib/rspec/core/runner.rb:17:in `autorun'
from /usr/bin/rspec:23
rake aborted!
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby -S rspec /Users/HypnoBoy/Desktop/Code/learn_ruby/04_pig_latin/pig_latin_spec.rb -I/Users/HypnoBoy/Desktop/Code/learn_ruby/04_pig_latin -I/Users/HypnoBoy/Desktop/Code/learn_ruby/04_pig_latin/solution -f documentation -r ./rspec_config failed
(See full trace by running task with --trace)
Я думаю, что это как-то связано с версией, которую я использую, но я совсем не уверен.
Mac OSX 10.8.2
Ruby 1.8.7
Rspec 2.13.1
Грабли 10.0.4
НОТА! Когда я запускаю грабли на предыдущих упражнениях (0-3), они работают просто отлично, но ничего после этого не работает...
РЕДАКТИРОВАТЬ: я обновил свою версию rake, и теперь, когда я пытаюсь запустить rake, я все еще получаю ошибку "rspec_config failed", но я также получаю это. ПОМОГИТЕ!!!
/Library/Ruby/Gems/1.8/gems/rspec-core-2.13.1/lib/rspec/core/rake_task.rb:156:in `run_task'
/Library/Ruby/Gems/1.8/gems/rspec-core-2.13.1/lib/rspec/core/rake_task.rb:124:in `initialize'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/file_utils_ext.rb:58:in `verbose'
/Library/Ruby/Gems/1.8/gems/rspec-core-2.13.1/lib/rspec/core/rake_task.rb:122:in `send'
/Library/Ruby/Gems/1.8/gems/rspec-core-2.13.1/lib/rspec/core/rake_task.rb:122:in `initialize'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/task.rb:246:in `call'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/task.rb:246:in `execute'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/task.rb:241:in `each'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/task.rb:241:in `execute'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/task.rb:184:in `invoke_with_call_chain'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/task.rb:177:in `invoke_with_call_chain'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/task.rb:205:in `invoke_prerequisites'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/task.rb:203:in `each'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/task.rb:203:in `invoke_prerequisites'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/task.rb:183:in `invoke_with_call_chain'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/task.rb:177:in `invoke_with_call_chain'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/task.rb:170:in `invoke'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/application.rb:143:in `invoke_task'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/application.rb:101:in `top_level'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/application.rb:101:in `each'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/application.rb:101:in `top_level'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/application.rb:110:in `run_with_threads'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/application.rb:95:in `top_level'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/application.rb:73:in `run'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/application.rb:160:in `standard_exception_handling'
/Library/Ruby/Gems/1.8/gems/rake-10.0.4/lib/rake/application.rb:70:in `run'
Tasks: TOP => default => spec
(See full trace by running task with --trace)
РЕДАКТИРОВАТЬ #2: Вот исходный код для моего упражнения Pig Latin, так как он говорит, что это синтаксис.
def isvowel?(letter)
vowels = ["a", "e", "i", "o", "u"]
vowels.include?(letter)
end
def translate(word)
i = 0
cons = []
while !isvowel?(word[i])
cons << word[i]
i+=1
end
word[i..-1] + cons.join()[0…i] + "ay"
end
def translates(string)
if !string.include?(" ")
translate(string)
else
new = string.split(" ").collect { |word| translate(word) }
end
new.join(" ")
end
1 ответ
Это задыхается от cons.join()[0…i] + "ау" - я заметил, что у вас странный вид... это не стандарт...
Вы скопировали и вставили эту часть кода? Разница между... (странным и нежелательным символом) и... (правильным оператором ruby) заключается в том, что его нарушает. Просто удалите этот другой символ и напишите точки вручную.