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
app/views/merge_requests/show/_mr_title.html.haml
| ... | ... | @@ -6,11 +6,6 @@ |
| 6 | 6 | %span.label_branch= @merge_request.target_branch |
| 7 | 7 | |
| 8 | 8 | %span.right |
| 9 | - - if @merge_request.merged? | |
| 10 | - %span.btn.small.disabled.grouped.success | |
| 11 | - %strong | |
| 12 | - %i.icon-ok | |
| 13 | - = "MERGED" | |
| 14 | 9 | - if can?(current_user, :modify_merge_request, @merge_request) |
| 15 | 10 | - if @merge_request.open? |
| 16 | 11 | .left.btn-group | ... | ... |
spec/models/project_spec.rb
| ... | ... | @@ -129,6 +129,13 @@ describe Project do |
| 129 | 129 | it { should respond_to(:execute_hooks) } |
| 130 | 130 | it { should respond_to(:post_receive_data) } |
| 131 | 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 | 139 | end |
| 133 | 140 | |
| 134 | 141 | describe 'modules' do |
| ... | ... | @@ -136,6 +143,7 @@ describe Project do |
| 136 | 143 | it { should include_module(PushObserver) } |
| 137 | 144 | it { should include_module(Authority) } |
| 138 | 145 | it { should include_module(Team) } |
| 146 | + it { should include_module(NamespacedProject) } | |
| 139 | 147 | end |
| 140 | 148 | |
| 141 | 149 | it "should return valid url to repo" do |
| ... | ... | @@ -153,18 +161,6 @@ describe Project do |
| 153 | 161 | project.web_url.should == "#{Gitlab.config.url}/somewhere" |
| 154 | 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 | 164 | describe "last_activity methods" do |
| 169 | 165 | let(:project) { create(:project) } |
| 170 | 166 | let(:last_event) { double(created_at: Time.now) } |
| ... | ... | @@ -188,85 +184,6 @@ describe Project do |
| 188 | 184 | end |
| 189 | 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 | 187 | describe :update_merge_requests do |
| 271 | 188 | let(:project) { create(:project) } |
| 272 | 189 | ... | ... |
spec/roles/repository_spec.rb
| 1 | 1 | require 'spec_helper' |
| 2 | 2 | |
| 3 | 3 | describe Project, "Repository" do |
| 4 | - let(:project) { build(:project) } | |
| 4 | + let(:project) { create(:project) } | |
| 5 | 5 | |
| 6 | 6 | describe "#empty_repo?" do |
| 7 | 7 | it "should return true if the repo doesn't exist" do |
| ... | ... | @@ -69,4 +69,91 @@ describe Project, "Repository" do |
| 69 | 69 | project.root_ref?('stable').should be_false |
| 70 | 70 | end |
| 71 | 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 | 159 | end | ... | ... |