Trong ứng dụng Rails của tôi, tôi truy cập vào băm env trong một trong các hành động điều khiển của tôi.Tại sao giá trị băm của env trống trong môi trường kiểm tra Rails?
cái gì đó dọc theo dòng:
def my_before_filter
env['some.key'] = "Something or other"
end
này hoạt động tuyệt vời cho các yêu cầu của tôi.
Nếu tôi bắt đầu ứng dụng Rails của tôi trong môi trường thử nghiệm, và ghé thăm một hành động như:
# /users in UsersController#index
def index
puts env.inspect
end
Sau đó, nội dung của các hash env là đầu ra cho giao diện điều khiển như mong đợi.
Khi tôi nhận được hành động này từ bên trong một ví dụ RSPec, đầu ra là một băm rỗng?
it 'should get the index action' do
get :index
end
.....{}.... # rspec output
Tại sao hàm băm env trống?
tôi đã xây dựng một ứng dụng dummy rails để hiển thị này
Tôi nghĩ bạn phải chạy nó trong môi trường 'phát triển'. – Reactormonk
Tôi thường chạy nó trong môi trường phát triển. Các băm env đã có mặt trong quá trình phát triển. Tôi muốn đề cập đến hành vi mà tôi thấy khi tôi khởi động máy chủ theo cách thủ công trong chế độ "kiểm tra" không phải là hành vi tương tự mà tôi thấy khi tạo yêu cầu thông qua bộ thử nghiệm. – bodacious