summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--spec/requests/api/projects_spec.rb20
1 files changed, 20 insertions, 0 deletions
diff --git a/spec/requests/api/projects_spec.rb b/spec/requests/api/projects_spec.rb
index 16fd1b9307c..3256cde6b82 100644
--- a/spec/requests/api/projects_spec.rb
+++ b/spec/requests/api/projects_spec.rb
@@ -33,6 +33,20 @@ describe Gitlab::API do
end
describe "POST /projects" do
+ context "maximum number of projects reached" do
+ before do
+ (1..user2.projects_limit).each do |project|
+ post api("/projects", user2), name: "foo#{project}"
+ end
+ end
+
+ it "should not create new project" do
+ expect {
+ post api("/projects", user2), name: 'foo'
+ }.to change {Project.count}.by(0)
+ end
+ end
+
it "should create new project without path" do
expect { post api("/projects", user), name: 'foo' }.to change {Project.count}.by(1)
end
@@ -41,6 +55,12 @@ describe Gitlab::API do
expect { post api("/projects", user) }.to_not change {Project.count}
end
+ it "should create last project before reaching project limit" do
+ (1..user2.projects_limit-1).each { |p| post api("/projects", user2), name: "foo#{p}" }
+ post api("/projects", user2), name: "foo"
+ response.status.should == 201
+ end
+
it "should respond with 201 on success" do
post api("/projects", user), name: 'foo'
response.status.should == 201