main
1require 'rails_helper'
2
3describe EnvironmentsController do
4 let(:user) { create(:user) }
5
6 before { http_login(user) }
7
8 describe '#index' do
9 let(:first_env) { create(:environment) }
10 let(:second_env) { create(:environment) }
11
12 it 'returns environments' do
13 xhr :get, :index, ids: [first_env.id, second_env.id]
14 expect(assigns(:environments)).to match_array([first_env, second_env])
15 end
16 end
17
18 describe "#show" do
19 render_views
20
21 let(:environment) { create(:environment) }
22
23 it 'returns info on the environment' do
24 xhr :get, :show, id: environment.id
25 expect(assigns(:environment)).to eql(environment)
26 end
27 end
28
29 describe "#create" do
30 let(:service) { create(:service) }
31
32 it 'creates a new environment' do
33 xhr :post, :create, environment: { name: 'development', service_id: service.id }
34
35 expect(Environment.count).to eql(1)
36 expect(Environment.last.name).to eql('development')
37 end
38 end
39
40 describe "#destroy" do
41 let(:environment) { create(:environment) }
42
43 it 'deletes the environment' do
44 xhr :delete, :destroy, id: environment.id
45 expect(Environment.count).to eql(0)
46 end
47 end
48end