Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStan Hu <stanhu@gmail.com>2018-07-09 00:49:09 +0300
committerStan Hu <stanhu@gmail.com>2018-07-09 00:49:09 +0300
commited166b791ff5de4216799c2b77dc8cf70dc31df3 (patch)
tree748bad01c6d05f97138018c8c1d9e2e9fe1a3b4d /spec/controllers/import
parent4c5085f68de7d9e8f51bdf14b3493207eb12c6b2 (diff)
Add spec when project can't be saved
Diffstat (limited to 'spec/controllers/import')
-rw-r--r--spec/controllers/import/bitbucket_server_controller_spec.rb19
1 files changed, 12 insertions, 7 deletions
diff --git a/spec/controllers/import/bitbucket_server_controller_spec.rb b/spec/controllers/import/bitbucket_server_controller_spec.rb
index 6a013435adc..2ff7939d36f 100644
--- a/spec/controllers/import/bitbucket_server_controller_spec.rb
+++ b/spec/controllers/import/bitbucket_server_controller_spec.rb
@@ -28,19 +28,19 @@ describe Import::BitbucketServerController do
describe 'POST create' do
before do
+ allow(controller).to receive(:bitbucket_client).and_return(client)
+ repo = double(name: 'my-project')
+ allow(client).to receive(:repo).with(project_key, repo_slug).and_return(repo)
assign_session_tokens
end
set(:project) { create(:project) }
+ let(:client) { instance_double(BitbucketServer::Client) }
it 'returns the new project' do
- client = instance_double(BitbucketServer::Client)
allow(Gitlab::BitbucketServerImport::ProjectCreator)
.to receive(:new).with(project_key, repo_slug, anything, 'my-project', user.namespace, user, anything)
.and_return(double(execute: project))
- repo = double(name: 'my-project')
- expect(client).to receive(:repo).with(project_key, repo_slug).and_return(repo)
- expect(controller).to receive(:bitbucket_client).and_return(client)
post :create, project: project_key, repository: repo_slug, format: :json
@@ -60,9 +60,7 @@ describe Import::BitbucketServerController do
end
it 'returns an error when the project cannot be found' do
- client = instance_double(BitbucketServer::Client)
- expect(client).to receive(:repo).with(project_key, repo_slug).and_return(nil)
- expect(controller).to receive(:bitbucket_client).and_return(client)
+ allow(client).to receive(:repo).with(project_key, repo_slug).and_return(nil)
post :create, project: project_key, repository: repo_slug, format: :json
@@ -70,6 +68,13 @@ describe Import::BitbucketServerController do
end
it 'returns an error when the project cannot be saved' do
+ allow(Gitlab::BitbucketServerImport::ProjectCreator)
+ .to receive(:new).with(project_key, repo_slug, anything, 'my-project', user.namespace, user, anything)
+ .and_return(double(execute: build(:project)))
+
+ post :create, project: project_key, repository: repo_slug, format: :json
+
+ expect(response).to have_gitlab_http_status(422)
end
it "returns an error when the server can't be contacted" do