diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2023-01-18 22:00:14 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2023-01-18 22:00:14 +0300 |
commit | 05f0ebba3a2c8ddf39e436f412dc2ab5bf1353b2 (patch) | |
tree | 11d0f2a6ec31c7793c184106cedc2ded3d9a2cc5 /spec/controllers/projects/design_management/designs/resized_image_controller_spec.rb | |
parent | ec73467c23693d0db63a797d10194da9e72a74af (diff) |
Add latest changes from gitlab-org/gitlab@15-8-stable-eev15.8.0-rc42
Diffstat (limited to 'spec/controllers/projects/design_management/designs/resized_image_controller_spec.rb')
-rw-r--r-- | spec/controllers/projects/design_management/designs/resized_image_controller_spec.rb | 28 |
1 files changed, 22 insertions, 6 deletions
diff --git a/spec/controllers/projects/design_management/designs/resized_image_controller_spec.rb b/spec/controllers/projects/design_management/designs/resized_image_controller_spec.rb index cc0f4a426f4..5cc6e1b1bb4 100644 --- a/spec/controllers/projects/design_management/designs/resized_image_controller_spec.rb +++ b/spec/controllers/projects/design_management/designs/resized_image_controller_spec.rb @@ -2,7 +2,7 @@ require 'spec_helper' -RSpec.describe Projects::DesignManagement::Designs::ResizedImageController do +RSpec.describe Projects::DesignManagement::Designs::ResizedImageController, feature_category: :design_management do include DesignManagementTestHelpers let_it_be(:project) { create(:project, :private) } @@ -19,7 +19,7 @@ RSpec.describe Projects::DesignManagement::Designs::ResizedImageController do end describe 'GET #show' do - subject do + subject(:response) do get(:show, params: { namespace_id: project.namespace, @@ -27,12 +27,12 @@ RSpec.describe Projects::DesignManagement::Designs::ResizedImageController do design_id: design_id, sha: sha, id: size - }) + } + ) end before do sign_in(viewer) - subject end context 'when the user does not have permission' do @@ -68,8 +68,6 @@ RSpec.describe Projects::DesignManagement::Designs::ResizedImageController do let(:design_id) { 'foo' } specify do - subject - expect(response).to have_gitlab_http_status(:not_found) end end @@ -136,6 +134,24 @@ RSpec.describe Projects::DesignManagement::Designs::ResizedImageController do expect(response).to have_gitlab_http_status(:not_found) end end + + context 'when multiple design versions have the same sha hash' do + let(:sha) { newest_version.sha } + + before do + create(:design, :with_smaller_image_versions, + issue: create(:issue, project: project), + versions_count: 1, + versions_sha: sha) + end + + it 'serves the newest image' do + action = newest_version.actions.first + + expect(response.header['ETag']).to eq(etag(action)) + expect(response).to have_gitlab_http_status(:ok) + end + end end context 'when design does not have a smaller image size available' do |