diff options
Diffstat (limited to 'spec/requests/api/project_export_spec.rb')
-rw-r--r-- | spec/requests/api/project_export_spec.rb | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/spec/requests/api/project_export_spec.rb b/spec/requests/api/project_export_spec.rb index 07efd56fef4..8a8cd8512f8 100644 --- a/spec/requests/api/project_export_spec.rb +++ b/spec/requests/api/project_export_spec.rb @@ -410,6 +410,27 @@ RSpec.describe API::ProjectExport, :clean_gitlab_redis_cache do it_behaves_like 'post project export start' + context 'with project export size limit' do + before do + stub_application_setting(max_export_size: 1) + end + + it 'starts if limit not exceeded' do + post api(path, user) + + expect(response).to have_gitlab_http_status(:accepted) + end + + it '400 response if limit exceeded' do + project.statistics.update!(lfs_objects_size: 2.megabytes, repository_size: 2.megabytes) + + post api(path, user) + + expect(response).to have_gitlab_http_status(:bad_request) + expect(json_response["message"]).to include('The project size exceeds the export limit.') + end + end + context 'when rate limit is exceeded across projects' do before do allow(Gitlab::ApplicationRateLimiter) |