diff options
Diffstat (limited to 'spec/requests/api/project_templates_spec.rb')
-rw-r--r-- | spec/requests/api/project_templates_spec.rb | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/spec/requests/api/project_templates_spec.rb b/spec/requests/api/project_templates_spec.rb index 38d6a05a104..91e5ed76c37 100644 --- a/spec/requests/api/project_templates_spec.rb +++ b/spec/requests/api/project_templates_spec.rb @@ -10,6 +10,7 @@ RSpec.describe API::ProjectTemplates, feature_category: :source_code_management let(:url_encoded_path) { "#{public_project.namespace.path}%2F#{public_project.path}" } before do + stub_feature_flags(remove_monitor_metrics: false) private_project.add_developer(developer) end @@ -71,6 +72,18 @@ RSpec.describe API::ProjectTemplates, feature_category: :source_code_management expect(json_response).to satisfy_one { |template| template['key'] == 'Default' } end + context 'when metrics dashboard feature is unavailable' do + before do + stub_feature_flags(remove_monitor_metrics: true) + end + + it 'returns 400 bad request like other unknown types' do + get api("/projects/#{public_project.id}/templates/metrics_dashboard_ymls") + + expect(response).to have_gitlab_http_status(:bad_request) + end + end + it 'returns issue templates' do get api("/projects/#{private_project.id}/templates/issues", developer) @@ -171,6 +184,18 @@ RSpec.describe API::ProjectTemplates, feature_category: :source_code_management expect(json_response['name']).to eq('Default') end + context 'when metrics dashboard feature is unavailable' do + before do + stub_feature_flags(remove_monitor_metrics: true) + end + + it 'returns 400 bad request like other unknown types' do + get api("/projects/#{public_project.id}/templates/metrics_dashboard_ymls/Default") + + expect(response).to have_gitlab_http_status(:bad_request) + end + end + it 'returns a specific license' do get api("/projects/#{public_project.id}/templates/licenses/mit") |