Commit e54677680837dfe6ca0b9662ef94206b3fdddce3
1 parent
5f6f16b3
Exists in
colab
and in
4 other branches
Unit test for creating a kalibro range with a compound metric configuration
Showing
1 changed file
with
18 additions
and
2 deletions
Show diff stats
spec/controllers/kalibro_ranges_controller_spec.rb
1 | 1 | require 'rails_helper' |
2 | 2 | |
3 | 3 | describe KalibroRangesController, :type => :controller do |
4 | - let(:kalibro_range) { FactoryGirl.build(:kalibro_range_with_id) } | |
5 | 4 | let(:metric_configuration) { FactoryGirl.build(:metric_configuration_with_id) } |
5 | + let(:kalibro_range) { FactoryGirl.build(:kalibro_range_with_id, metric_configuration_id: metric_configuration.id) } | |
6 | 6 | |
7 | 7 | describe 'new' do |
8 | 8 | let(:kalibro_configuration) { FactoryGirl.build(:kalibro_configuration_with_id) } |
... | ... | @@ -46,7 +46,7 @@ describe KalibroRangesController, :type => :controller do |
46 | 46 | subject.expects(:metric_configuration_owner?).returns true |
47 | 47 | end |
48 | 48 | |
49 | - context 'with valid fields' do | |
49 | + context 'with valid fields and a native metric configuration' do | |
50 | 50 | before :each do |
51 | 51 | KalibroRange.any_instance.expects(:save).returns(true) |
52 | 52 | MetricConfiguration.expects(:find).with(kalibro_range.metric_configuration_id).returns(metric_configuration) |
... | ... | @@ -54,6 +54,22 @@ describe KalibroRangesController, :type => :controller do |
54 | 54 | post :create, kalibro_configuration_id: kalibro_configuration.id, metric_configuration_id: kalibro_range.metric_configuration_id, kalibro_range: kalibro_range_params |
55 | 55 | end |
56 | 56 | |
57 | + it { is_expected.to redirect_to(kalibro_configuration_metric_configuration_path(metric_configuration.kalibro_configuration_id, metric_configuration.id)) } | |
58 | + it { is_expected.to respond_with(:redirect) } | |
59 | + end | |
60 | + | |
61 | + context 'with valid fields and a compound metric configuration' do | |
62 | + let(:compound_metric_configuration) { FactoryGirl.build(:compound_metric_configuration_with_id) } | |
63 | + let(:new_kalibro_range) { FactoryGirl.build(:kalibro_range, metric_configuration_id: compound_metric_configuration.id) } | |
64 | + | |
65 | + before :each do | |
66 | + KalibroRange.any_instance.expects(:save).returns(true) | |
67 | + MetricConfiguration.expects(:find).with(new_kalibro_range.metric_configuration_id).returns(compound_metric_configuration) | |
68 | + | |
69 | + post :create, kalibro_configuration_id: kalibro_configuration.id, metric_configuration_id: new_kalibro_range.metric_configuration_id, kalibro_range: new_kalibro_range.to_hash | |
70 | + end | |
71 | + | |
72 | + it { is_expected.to redirect_to(kalibro_configuration_compound_metric_configuration_path(compound_metric_configuration.kalibro_configuration_id, compound_metric_configuration.id)) } | |
57 | 73 | it { is_expected.to respond_with(:redirect) } |
58 | 74 | end |
59 | 75 | ... | ... |