Странности с gsub

Я пытался используйте gsubдля удаления несловных символов в строке в приложении rails. Я использовал следующий код :

somestring.gsub(/[\W]/i, '')  #=> ""

, но на самом деле он неверен, он также удалит букву k. Правильным должен быть :

somestring.gsub(/\W/i, '')  #=> "kkk"

. Но моя проблема в том, что модульный тест контроллера рельсов, который содержит приведенный выше код с использованием rspec, не работает, модульный тест фактически проходит. Поэтому я создал довольно экстремальный тестовый пример в rspec

it "test this gsub" do
  'kkk'.gsub(/[\W]/i, '').should == 'kkk'
end

вышеприведенный тестовый пример должен провалиться, но на самом деле он проходит. В чем проблема? Почему тест пройдет?

9
задан Ben 27 April 2012 в 05:03
поделиться