Commit a185cce5d39e2bf7f865cd3c4b2f74f355d6d051
1 parent
32d7332d
Exists in
master
and in
4 other branches
Tests for delete file by API
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Showing
1 changed file
with
34 additions
and
0 deletions
Show diff stats
spec/requests/api/files_spec.rb
@@ -78,4 +78,38 @@ describe API::API do | @@ -78,4 +78,38 @@ describe API::API do | ||
78 | response.status.should == 400 | 78 | response.status.should == 400 |
79 | end | 79 | end |
80 | end | 80 | end |
81 | + | ||
82 | + describe "DELETE /projects/:id/repository/files" do | ||
83 | + let(:valid_params) { | ||
84 | + { | ||
85 | + file_path: 'spec/spec_helper.rb', | ||
86 | + branch_name: 'master', | ||
87 | + commit_message: 'Changed file' | ||
88 | + } | ||
89 | + } | ||
90 | + | ||
91 | + it "should delete existing file in project repo" do | ||
92 | + Gitlab::Satellite::DeleteFileAction.any_instance.stub( | ||
93 | + commit!: true, | ||
94 | + ) | ||
95 | + | ||
96 | + delete api("/projects/#{project.id}/repository/files", user), valid_params | ||
97 | + response.status.should == 200 | ||
98 | + json_response['file_path'].should == 'spec/spec_helper.rb' | ||
99 | + end | ||
100 | + | ||
101 | + it "should return a 400 bad request if no params given" do | ||
102 | + delete api("/projects/#{project.id}/repository/files", user) | ||
103 | + response.status.should == 400 | ||
104 | + end | ||
105 | + | ||
106 | + it "should return a 400 if satellite fails to create file" do | ||
107 | + Gitlab::Satellite::DeleteFileAction.any_instance.stub( | ||
108 | + commit!: false, | ||
109 | + ) | ||
110 | + | ||
111 | + delete api("/projects/#{project.id}/repository/files", user), valid_params | ||
112 | + response.status.should == 400 | ||
113 | + end | ||
114 | + end | ||
81 | end | 115 | end |