diff options
Diffstat (limited to 'spec/models/project_spec.rb')
-rw-r--r-- | spec/models/project_spec.rb | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/spec/models/project_spec.rb b/spec/models/project_spec.rb index 4b6592020c1..9c098af7c56 100644 --- a/spec/models/project_spec.rb +++ b/spec/models/project_spec.rb @@ -3496,7 +3496,29 @@ describe Project do end end - context '#auto_devops_variables' do + describe '#api_variables' do + set(:project) { create(:project) } + + it 'exposes API v4 URL' do + expect(project.api_variables.first[:key]).to eq 'CI_API_V4_URL' + expect(project.api_variables.first[:value]).to include '/api/v4' + end + + it 'contains an URL variable for every supported API version' do + supported_versions = API::API.versions.select do |version| + API::API.routes.select { |route| route.version == version }.many? + end + + required_variables = supported_versions.map do |version| + "CI_API_#{version.upcase}_URL" + end + + expect(project.api_variables.map { |variable| variable[:key] }) + .to contain_exactly(*required_variables) + end + end + + describe '#auto_devops_variables' do set(:project) { create(:project) } subject { project.auto_devops_variables } |