Обычно эта ошибка означает, что у вас слишком мало end
, он столкнулся с концом файла и ожидал найти команду end
.
Однако из кода, который вы показали, это было не совсем понятно для меня. Ваш отступ был ужасно непоследователен, что не помогло прояснить это с первого взгляда:)
Что я видел: если вы используете rspec1, , документация рекомендует использовать {}
вместо do .. end
при тестировании на изменения. Итак, в вашем случае:
lambda {
post :create, :user => @attr
}.should change(User, :count).by(1)
В rspec2 вы должны написать
expect { ... }.to change
так в вашем случае
expect { post :create, :user => @attr }.to change(User, :count).by(1)
Надеюсь, это поможет.