簡體   English   中英

語法錯誤,意外的tIDENTIFIER,需要keyword_end

[英]syntax error, unexpected tIDENTIFIER, expecting keyword_end

我收到語法錯誤,我的測試代碼是

require 'spec_helper'
describe "User pages" do
subject { page }
describe "signup page" do
before { visit signup_path }

it { should have_selector('h1',  text: 'Sign up') }
it { should have_selector('title', text: full_title('Sign up')) }
end

describe "profile page" do
let(:user) { FactoryGirl.create(:user) }

before { visit user_path(user) }
it { should have_selector('h1',  text: user.name) }
it { should have_selector('title',  text: user.name) }
end

describe "signup" do
before { visit signup_path }
let(:submit) { "Create my account" }
describe "with invalid information" do
it "should not create a user" do
expect { click_button submit }.not_to change(User, :count)
end
end
describe "with valid information"  do
before do
fill_in "Name",  with: "Example User"
fill_in "Email"  with: "user@example.com"
fill_in "password" with: "foobar"
fill_in "confirmation" with: "foobar"
end


it "should create a user" do
expect { click_button submit }.to change(User, :count).by(1)
end
end
end


end

和錯誤日志是

/home/ritesh/.rvm/gems/ruby-1.9.3-p327/gems/rspec-core-2.9.0/lib/rspec/core/configuration.rb:746:in `load': /home/ritesh/projects/sample_app/spec/requests/user_pages_spec.rb:30: syntax error, unexpected tIDENTIFIER, expecting keyword_end (SyntaxError)
fill_in "Email"  with: "user@example.com"
                     ^
/home/ritesh/projects/sample_app/spec/requests/user_pages_spec.rb:31: syntax error, unexpected tIDENTIFIER, expecting keyword_end
fill_in "password" with: "foobar"
                       ^
/home/ritesh/projects/sample_app/spec/requests/user_pages_spec.rb:32: syntax error, unexpected tIDENTIFIER, expecting keyword_end
fill_in "confirmation" with: "foobar"
                           ^
    from /home/ritesh/.rvm/gems/ruby-1.9.3-p327/gems/rspec-core-2.9.0/lib/rspec/core/configuration.rb:746:in `block in load_spec_files'
    from /home/ritesh/.rvm/gems/ruby-1.9.3-p327/gems/rspec-core-2.9.0/lib/rspec/core/configuration.rb:746:in `map'
    from /home/ritesh/.rvm/gems/ruby-1.9.3-p327/gems/rspec-core-2.9.0/lib/rspec/core/configuration.rb:746:in `load_spec_files'
    from /home/ritesh/.rvm/gems/ruby-1.9.3-p327/gems/rspec-core-2.9.0/lib/rspec/core/command_line.rb:22:in `run'
    from /home/ritesh/.rvm/gems/ruby-1.9.3-p327/gems/rspec-core-2.9.0/lib/rspec/core/runner.rb:69:in `run'
    from /home/ritesh/.rvm/gems/ruby-1.9.3-p327/gems/rspec-core-2.9.0/lib/rspec/core/runner.rb:10:in `block in autorun'

請幫助我如何糾正它!

似乎您忘記了第30行周圍的一兩個昏迷...(在“ with:”之前)

以代碼的外觀為榮將幫助您發現語法問題 ; 在這種情況下,請在第一個參數之后的fill_infill_in逗號分隔。

require 'spec_helper'

describe "User pages" do
  subject { page }

  describe "signup page" do
    before { visit signup_path }

    it { should have_selector('h1',  text: 'Sign up') }
    it { should have_selector('title', text: full_title('Sign up')) }
  end

  describe "profile page" do
    let(:user) { FactoryGirl.create(:user) }
    before { visit user_path(user) }

    it { should have_selector('h1',  text: user.name) }
    it { should have_selector('title',  text: user.name) }
  end

  describe "signup" do
    before { visit signup_path }
    let(:submit) { "Create my account" }

    describe "with invalid information" do
      it "should not create a user" do
        expect { click_button submit }.not_to change(User, :count)
      end
    end

    describe "with valid information"  do
      before do
        fill_in "Name",         with: "Example User"
        fill_in "Email",        with: "user@example.com"
        fill_in "password",     with: "foobar"
        fill_in "confirmation", with: "foobar"
      end

      it "should create a user" do
        expect { click_button submit }.to change(User, :count).by(1)
      end
    end
  end
end

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM