2015-07-03 79 views
0

所以這是我廠:FactoryGirl捏造的功能測試不適

FactoryGirl.define do 
    factory :member do  
     email '[email protected]' 
     password 'rootroot'  
     first_name 'Rinholds' 
     last_name 'Jordan'  
     expiration Time.local(2015, 6, 21, 15, 13, 0) 
     start_date Time.local(2015, 4, 21, 15, 13, 0) 
     role 2     
    end 
    end 

這是我的規格:

require 'rails_helper' 

    describe DashboardController, type: :controller do 

    it 'should display chart', js: true do 
     member = create(:member) 
     member.save!   
     member.confirm   

     binding.pry    
     visit '/'    

    end 
    end 

這是我root_path():

 body 
     = yield 
    = Member.first.email 
~    

當我運行spec時,會返回nil:NilClass中未定義的方法`email'。

當我把綁定撬在視圖中,並運行Member.all它返回空數組!

這是可行的嗎?如何強制factorygirl創建真實的數據庫數據?!?

- 編輯 - 這是控制器,雖然它甚至沒有達到那裏,因爲設計登錄頁authorized_member!

class DashboardController < ApplicationController 
    before_filter :authenticate_member! 

    def index 
     day_statistics = Statistics::DayStatistics.new(current_member) 
     @charts = day_statistics.domain_charts 
    end 
    end 

然後我將Member.all添加到我的佈局文件,它顯示[],工廠女孩不工作!

+0

一直有這個問題連續3天,無法弄清楚這一點! – IvRRimUm

+0

當你在'binding.pry'中時,'member.errors'是什麼? –

+0

通過安裝databsecleaner解決了這個問題!會員數據現在顯示在控制器和視圖! – IvRRimUm

回答

1

通過安裝databsecleaner解決了這個問題!會員數據現在顯示在控制器和視圖! -