I want to examine if an action that includes some processes about changing databases of the controller works successfully.
"no save" F
Failures:
1) BuysController check #new's behavior return done Failure/Error: expect(buy.trading_status).to eq("done")
expected: "done"
got: "pending"
(compared using ==)
# ./spec/controllers/buys_controller_spec.rb:27:in `block (3 levels) in <top (required)>'
Finished in 0.14739 seconds (files took 3.68 seconds to load) 1 example, 1 failure
Failed examples:
rspec ./spec/controllers/buys_controller_spec.rb:6 # BuysController check #new's behavior return done
require 'rails_helper'
include BuysHelper
RSpec.describe BuysController, type: :controller do
describe "check #new's behavior" do
it "return done" do
User.create(name:"hhhvv",email:"gggjggg@gmail.com")
p User.find(1)
Currency.create(name:"hello",user_id:1)
Sell.create(
id:1,
user_id: 1,
currency_id:1,
amount:100,
price:100,
trading_status:"pending")
buy = Buy.new(
id:1,
user_id: 1,
currency_id:1,
amount:100,
price:100,
trading_status:"pending"
)
if buy.save
market_checker
else
p "no save"
end
expect(buy.trading_status).to eq("done")
end
end
end
rake db:test:prepare
rake db:migrate RAILS_ENV=test
You might also want to check for errors.
expect(buy.errors).to be_empty