Raise error when no content is provided
This commit is contained in:
		
							parent
							
								
									a530e9da35
								
							
						
					
					
						commit
						c72e715522
					
				|  | @ -16,6 +16,10 @@ module Files | ||||||
|     def validate |     def validate | ||||||
|       super |       super | ||||||
| 
 | 
 | ||||||
|  |       if @file_content.empty? | ||||||
|  |         raise_error("You must provide content.") | ||||||
|  |       end | ||||||
|  | 
 | ||||||
|       if @file_path =~ Gitlab::Regex.directory_traversal_regex |       if @file_path =~ Gitlab::Regex.directory_traversal_regex | ||||||
|         raise_error( |         raise_error( | ||||||
|           'Your changes could not be committed, because the file name ' + |           'Your changes could not be committed, because the file name ' + | ||||||
|  |  | ||||||
|  | @ -27,7 +27,7 @@ module Files | ||||||
|         else |         else | ||||||
|           raise_error("Unknown action type `#{action[:action]}`.") |           raise_error("Unknown action type `#{action[:action]}`.") | ||||||
|         end |         end | ||||||
|          | 
 | ||||||
|         unless action[:file_path].present? |         unless action[:file_path].present? | ||||||
|           raise_error("You must specify a file_path.") |           raise_error("You must specify a file_path.") | ||||||
|         end |         end | ||||||
|  | @ -100,6 +100,20 @@ module Files | ||||||
|       if repository.blob_at_branch(params[:branch], action[:file_path]) |       if repository.blob_at_branch(params[:branch], action[:file_path]) | ||||||
|         raise_error("Your changes could not be committed because a file with the name `#{action[:file_path]}` already exists.") |         raise_error("Your changes could not be committed because a file with the name `#{action[:file_path]}` already exists.") | ||||||
|       end |       end | ||||||
|  | 
 | ||||||
|  |       if action[:content].empty? | ||||||
|  |         raise_error("You must provide content.") | ||||||
|  |       end | ||||||
|  |     end | ||||||
|  | 
 | ||||||
|  |     def validate_update(action) | ||||||
|  |       if action[:content].empty? | ||||||
|  |         raise_error("You must provide content.") | ||||||
|  |       end | ||||||
|  | 
 | ||||||
|  |       if file_has_changed? | ||||||
|  |         raise FileChangedError.new("You are attempting to update a file `#{action[:file_path]}` that has changed since you started editing it.") | ||||||
|  |       end | ||||||
|     end |     end | ||||||
| 
 | 
 | ||||||
|     def validate_delete(action) |     def validate_delete(action) | ||||||
|  | @ -122,11 +136,5 @@ module Files | ||||||
|         params[:actions][index][:content] = blob.data |         params[:actions][index][:content] = blob.data | ||||||
|       end |       end | ||||||
|     end |     end | ||||||
| 
 |  | ||||||
|     def validate_update(action) |  | ||||||
|       if file_has_changed? |  | ||||||
|         raise FileChangedError.new("You are attempting to update a file `#{action[:file_path]}` that has changed since you started editing it.") |  | ||||||
|       end |  | ||||||
|     end |  | ||||||
|   end |   end | ||||||
| end | end | ||||||
|  |  | ||||||
|  | @ -18,6 +18,10 @@ module Files | ||||||
|     def validate |     def validate | ||||||
|       super |       super | ||||||
| 
 | 
 | ||||||
|  |       if @file_content.empty? | ||||||
|  |         raise_error("You must provide content.") | ||||||
|  |       end | ||||||
|  | 
 | ||||||
|       if file_has_changed? |       if file_has_changed? | ||||||
|         raise FileChangedError.new("You are attempting to update a file that has changed since you started editing it.") |         raise FileChangedError.new("You are attempting to update a file that has changed since you started editing it.") | ||||||
|       end |       end | ||||||
|  |  | ||||||
|  | @ -106,8 +106,6 @@ module Gitlab | ||||||
| 
 | 
 | ||||||
|       def add_blob(options, mode: nil) |       def add_blob(options, mode: nil) | ||||||
|         content = options[:content] |         content = options[:content] | ||||||
|         return unless content |  | ||||||
| 
 |  | ||||||
|         content = Base64.decode64(content) if options[:encoding] == 'base64' |         content = Base64.decode64(content) if options[:encoding] == 'base64' | ||||||
| 
 | 
 | ||||||
|         detect = CharlockHolmes::EncodingDetector.new.detect(content) |         detect = CharlockHolmes::EncodingDetector.new.detect(content) | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue