Commit 0f7d3f591cea40d922250260326892ed49275968
1 parent
120f50cf
Exists in
master
and in
4 other branches
Moving repositories spec to roles. Added missing spec for project
Showing
4 changed files
with
101 additions
and
98 deletions
Show diff stats
app/views/merge_requests/show/_mr_box.html.haml
1 | .main_box | 1 | .main_box |
2 | .top_box_content | 2 | .top_box_content |
3 | %h4.box-title | 3 | %h4.box-title |
4 | - - if @merge_request.closed | 4 | + - if @merge_request.merged |
5 | + .error.status_info | ||
6 | + %i.icon-ok | ||
7 | + Merged | ||
8 | + - elsif @merge_request.closed | ||
5 | .error.status_info Closed | 9 | .error.status_info Closed |
6 | = gfm escape_once(@merge_request.title) | 10 | = gfm escape_once(@merge_request.title) |
7 | 11 |
app/views/merge_requests/show/_mr_title.html.haml
@@ -6,11 +6,6 @@ | @@ -6,11 +6,6 @@ | ||
6 | %span.label_branch= @merge_request.target_branch | 6 | %span.label_branch= @merge_request.target_branch |
7 | 7 | ||
8 | %span.right | 8 | %span.right |
9 | - - if @merge_request.merged? | ||
10 | - %span.btn.small.disabled.grouped.success | ||
11 | - %strong | ||
12 | - %i.icon-ok | ||
13 | - = "MERGED" | ||
14 | - if can?(current_user, :modify_merge_request, @merge_request) | 9 | - if can?(current_user, :modify_merge_request, @merge_request) |
15 | - if @merge_request.open? | 10 | - if @merge_request.open? |
16 | .left.btn-group | 11 | .left.btn-group |
spec/models/project_spec.rb
@@ -129,6 +129,13 @@ describe Project do | @@ -129,6 +129,13 @@ describe Project do | ||
129 | it { should respond_to(:execute_hooks) } | 129 | it { should respond_to(:execute_hooks) } |
130 | it { should respond_to(:post_receive_data) } | 130 | it { should respond_to(:post_receive_data) } |
131 | it { should respond_to(:trigger_post_receive) } | 131 | it { should respond_to(:trigger_post_receive) } |
132 | + | ||
133 | + # Namespaced Project Role | ||
134 | + it { should respond_to(:transfer) } | ||
135 | + it { should respond_to(:name_with_namespace) } | ||
136 | + it { should respond_to(:namespace_owner) } | ||
137 | + it { should respond_to(:chief) } | ||
138 | + it { should respond_to(:path_with_namespace) } | ||
132 | end | 139 | end |
133 | 140 | ||
134 | describe 'modules' do | 141 | describe 'modules' do |
@@ -136,6 +143,7 @@ describe Project do | @@ -136,6 +143,7 @@ describe Project do | ||
136 | it { should include_module(PushObserver) } | 143 | it { should include_module(PushObserver) } |
137 | it { should include_module(Authority) } | 144 | it { should include_module(Authority) } |
138 | it { should include_module(Team) } | 145 | it { should include_module(Team) } |
146 | + it { should include_module(NamespacedProject) } | ||
139 | end | 147 | end |
140 | 148 | ||
141 | it "should return valid url to repo" do | 149 | it "should return valid url to repo" do |
@@ -153,18 +161,6 @@ describe Project do | @@ -153,18 +161,6 @@ describe Project do | ||
153 | project.web_url.should == "#{Gitlab.config.url}/somewhere" | 161 | project.web_url.should == "#{Gitlab.config.url}/somewhere" |
154 | end | 162 | end |
155 | 163 | ||
156 | - describe :valid_repo? do | ||
157 | - it "should be valid repo" do | ||
158 | - project = create(:project) | ||
159 | - project.valid_repo?.should be_true | ||
160 | - end | ||
161 | - | ||
162 | - it "should be invalid repo" do | ||
163 | - project = Project.new(name: "ok_name", path: "/INVALID_PATH/", path: "NEOK") | ||
164 | - project.valid_repo?.should be_false | ||
165 | - end | ||
166 | - end | ||
167 | - | ||
168 | describe "last_activity methods" do | 164 | describe "last_activity methods" do |
169 | let(:project) { create(:project) } | 165 | let(:project) { create(:project) } |
170 | let(:last_event) { double(created_at: Time.now) } | 166 | let(:last_event) { double(created_at: Time.now) } |
@@ -188,85 +184,6 @@ describe Project do | @@ -188,85 +184,6 @@ describe Project do | ||
188 | end | 184 | end |
189 | end | 185 | end |
190 | 186 | ||
191 | - describe "fresh commits" do | ||
192 | - let(:project) { create(:project) } | ||
193 | - | ||
194 | - it { project.fresh_commits(3).count.should == 3 } | ||
195 | - it { project.fresh_commits.first.id.should == "bcf03b5de6c33f3869ef70d68cf06e679d1d7f9a" } | ||
196 | - it { project.fresh_commits.last.id.should == "f403da73f5e62794a0447aca879360494b08f678" } | ||
197 | - end | ||
198 | - | ||
199 | - describe "commits_between" do | ||
200 | - let(:project) { create(:project) } | ||
201 | - | ||
202 | - subject do | ||
203 | - commits = project.commits_between("3a4b4fb4cde7809f033822a171b9feae19d41fff", | ||
204 | - "8470d70da67355c9c009e4401746b1d5410af2e3") | ||
205 | - commits.map { |c| c.id } | ||
206 | - end | ||
207 | - | ||
208 | - it { should have(3).elements } | ||
209 | - it { should include("f0f14c8eaba69ebddd766498a9d0b0e79becd633") } | ||
210 | - it { should_not include("bcf03b5de6c33f3869ef70d68cf06e679d1d7f9a") } | ||
211 | - end | ||
212 | - | ||
213 | - describe "Git methods" do | ||
214 | - let(:project) { create(:project) } | ||
215 | - | ||
216 | - describe :repo do | ||
217 | - it "should return valid repo" do | ||
218 | - project.repo.should be_kind_of(Grit::Repo) | ||
219 | - end | ||
220 | - | ||
221 | - it "should return nil" do | ||
222 | - lambda { Project.new(path: "invalid").repo }.should raise_error(Grit::NoSuchPathError) | ||
223 | - end | ||
224 | - | ||
225 | - it "should return nil" do | ||
226 | - lambda { Project.new.repo }.should raise_error(TypeError) | ||
227 | - end | ||
228 | - end | ||
229 | - | ||
230 | - describe :commit do | ||
231 | - it "should return first head commit if without params" do | ||
232 | - project.commit.id.should == project.repo.commits.first.id | ||
233 | - end | ||
234 | - | ||
235 | - it "should return valid commit" do | ||
236 | - project.commit(ValidCommit::ID).should be_valid_commit | ||
237 | - end | ||
238 | - | ||
239 | - it "should return nil" do | ||
240 | - project.commit("+123_4532530XYZ").should be_nil | ||
241 | - end | ||
242 | - end | ||
243 | - | ||
244 | - describe :tree do | ||
245 | - before do | ||
246 | - @commit = project.commit(ValidCommit::ID) | ||
247 | - end | ||
248 | - | ||
249 | - it "should raise error w/o arguments" do | ||
250 | - lambda { project.tree }.should raise_error | ||
251 | - end | ||
252 | - | ||
253 | - it "should return root tree for commit" do | ||
254 | - tree = project.tree(@commit) | ||
255 | - tree.contents.size.should == ValidCommit::FILES_COUNT | ||
256 | - tree.contents.map(&:name).should == ValidCommit::FILES | ||
257 | - end | ||
258 | - | ||
259 | - it "should return root tree for commit with correct path" do | ||
260 | - tree = project.tree(@commit, ValidCommit::C_FILE_PATH) | ||
261 | - tree.contents.map(&:name).should == ValidCommit::C_FILES | ||
262 | - end | ||
263 | - | ||
264 | - it "should return root tree for commit with incorrect path" do | ||
265 | - project.tree(@commit, "invalid_path").should be_nil | ||
266 | - end | ||
267 | - end | ||
268 | - end | ||
269 | - | ||
270 | describe :update_merge_requests do | 187 | describe :update_merge_requests do |
271 | let(:project) { create(:project) } | 188 | let(:project) { create(:project) } |
272 | 189 |
spec/roles/repository_spec.rb
1 | require 'spec_helper' | 1 | require 'spec_helper' |
2 | 2 | ||
3 | describe Project, "Repository" do | 3 | describe Project, "Repository" do |
4 | - let(:project) { build(:project) } | 4 | + let(:project) { create(:project) } |
5 | 5 | ||
6 | describe "#empty_repo?" do | 6 | describe "#empty_repo?" do |
7 | it "should return true if the repo doesn't exist" do | 7 | it "should return true if the repo doesn't exist" do |
@@ -69,4 +69,91 @@ describe Project, "Repository" do | @@ -69,4 +69,91 @@ describe Project, "Repository" do | ||
69 | project.root_ref?('stable').should be_false | 69 | project.root_ref?('stable').should be_false |
70 | end | 70 | end |
71 | end | 71 | end |
72 | + | ||
73 | + describe :repo do | ||
74 | + it "should return valid repo" do | ||
75 | + project.repo.should be_kind_of(Grit::Repo) | ||
76 | + end | ||
77 | + | ||
78 | + it "should return nil" do | ||
79 | + lambda { Project.new(path: "invalid").repo }.should raise_error(Grit::NoSuchPathError) | ||
80 | + end | ||
81 | + | ||
82 | + it "should return nil" do | ||
83 | + lambda { Project.new.repo }.should raise_error(TypeError) | ||
84 | + end | ||
85 | + end | ||
86 | + | ||
87 | + describe :commit do | ||
88 | + it "should return first head commit if without params" do | ||
89 | + project.commit.id.should == project.repo.commits.first.id | ||
90 | + end | ||
91 | + | ||
92 | + it "should return valid commit" do | ||
93 | + project.commit(ValidCommit::ID).should be_valid_commit | ||
94 | + end | ||
95 | + | ||
96 | + it "should return nil" do | ||
97 | + project.commit("+123_4532530XYZ").should be_nil | ||
98 | + end | ||
99 | + end | ||
100 | + | ||
101 | + describe :tree do | ||
102 | + before do | ||
103 | + @commit = project.commit(ValidCommit::ID) | ||
104 | + end | ||
105 | + | ||
106 | + it "should raise error w/o arguments" do | ||
107 | + lambda { project.tree }.should raise_error | ||
108 | + end | ||
109 | + | ||
110 | + it "should return root tree for commit" do | ||
111 | + tree = project.tree(@commit) | ||
112 | + tree.contents.size.should == ValidCommit::FILES_COUNT | ||
113 | + tree.contents.map(&:name).should == ValidCommit::FILES | ||
114 | + end | ||
115 | + | ||
116 | + it "should return root tree for commit with correct path" do | ||
117 | + tree = project.tree(@commit, ValidCommit::C_FILE_PATH) | ||
118 | + tree.contents.map(&:name).should == ValidCommit::C_FILES | ||
119 | + end | ||
120 | + | ||
121 | + it "should return root tree for commit with incorrect path" do | ||
122 | + project.tree(@commit, "invalid_path").should be_nil | ||
123 | + end | ||
124 | + end | ||
125 | + | ||
126 | + describe "fresh commits" do | ||
127 | + let(:project) { create(:project) } | ||
128 | + | ||
129 | + it { project.fresh_commits(3).count.should == 3 } | ||
130 | + it { project.fresh_commits.first.id.should == "bcf03b5de6c33f3869ef70d68cf06e679d1d7f9a" } | ||
131 | + it { project.fresh_commits.last.id.should == "f403da73f5e62794a0447aca879360494b08f678" } | ||
132 | + end | ||
133 | + | ||
134 | + describe "commits_between" do | ||
135 | + let(:project) { create(:project) } | ||
136 | + | ||
137 | + subject do | ||
138 | + commits = project.commits_between("3a4b4fb4cde7809f033822a171b9feae19d41fff", | ||
139 | + "8470d70da67355c9c009e4401746b1d5410af2e3") | ||
140 | + commits.map { |c| c.id } | ||
141 | + end | ||
142 | + | ||
143 | + it { should have(3).elements } | ||
144 | + it { should include("f0f14c8eaba69ebddd766498a9d0b0e79becd633") } | ||
145 | + it { should_not include("bcf03b5de6c33f3869ef70d68cf06e679d1d7f9a") } | ||
146 | + end | ||
147 | + | ||
148 | + describe :valid_repo? do | ||
149 | + it "should be valid repo" do | ||
150 | + project = create(:project) | ||
151 | + project.valid_repo?.should be_true | ||
152 | + end | ||
153 | + | ||
154 | + it "should be invalid repo" do | ||
155 | + project = Project.new(name: "ok_name", path: "/INVALID_PATH/", path: "NEOK") | ||
156 | + project.valid_repo?.should be_false | ||
157 | + end | ||
158 | + end | ||
72 | end | 159 | end |