2013-04-28 2 views
-2

Я нахожусь в процессе завершения Pig Latin упражнения из TestFirst Учения, но после того, как я сделал файл Ruby, и попытался запустить грабли, я получил следующее сообщение об ошибке:TestFirst учение латынь Свиньи «rspec_config не удался»

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
рубин 1.8.7
Rspec 2.13.1
Rake 10.0.4

ВНИМАНИЕ! Когда я запускаю рейк по предыдущим упражнениям (0-3), они работают нормально, но ничего после этого не работает ...

EDIT: Я обновил мою версию рейка, и теперь, когда я пытаюсь запустить рейк, я все равно получаю Ошибка «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) 

EDIT # 2: Вот исходный код для моего Pig латинского упражнения, так как он говорит, что это синтаксис вещь.

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 
+0

Можете ли вы дать исходный код? Он жалуется на недопустимый синтаксис. – baordog

+0

Добавлено. Если вам нужно что-нибудь еще, дайте мне знать! – Austintacious1

ответ

1

Он задыхается от cons.join() [0 ... я] + "ау" - я заметил, что у вас есть странный вид ... что это не стандарт ...

ли вы копируете и вставляете эту часть кода? Разница между ... (странным и нежелательным характером) и ... (правильный рубиновый оператор) - это то, что нарушает его. Просто удалите этот другой символ и напишите точки вручную.

+0

Оказывается, текстовый редактор, который я использовал, возвращался и «исправлял» мой ..., поэтому я принял ваш совет, и похоже, что он работает. Благодаря! – Austintacious1