diff options
author | Douwe Maan <douwe@gitlab.com> | 2015-04-30 17:08:45 +0000 |
---|---|---|
committer | Douwe Maan <douwe@gitlab.com> | 2015-04-30 17:08:45 +0000 |
commit | f2cf6d75ecc6082897543f976e8e4bee7ac24e90 (patch) | |
tree | 7b82e44078cc6b5a8db350c0b66893fe2488deca /spec | |
parent | 6d22e9674456b921e0f951af10ba18505891ec10 (diff) | |
parent | 9c76a6fa96bd3c48dc1a64aecb082d4bd87dc2ba (diff) | |
download | gitlab-ce-f2cf6d75ecc6082897543f976e8e4bee7ac24e90.tar.gz |
Merge branch 'show-invalid-projects-google-code-import' into 'master'
Show incompatible projects in Google Code import status
Using Google Code import with a JSON file that contained only one Subversion project led to confusion
over whether the system was working. Display the list of valid projects if there are any, and show a list of incompatible projects. Provide tips on how to retain issue data after conversion.
Closes #1531
## Screenshots
Before:
![Screen_Shot_2015-04-29_at_12.46.41_AM](https://gitlab.com/stanhu/gitlab-ce/uploads/16ea5a99cbace48cd2f2c238b5f73f4e/Screen_Shot_2015-04-29_at_12.46.41_AM.png)
After with no projects available (notice the button is hidden):
![Screen_Shot_2015-04-30_at_1.34.38_AM](https://gitlab.com/gitlab-org/gitlab-ce/uploads/43c612cdcbab181713e5764e2f38a04e/Screen_Shot_2015-04-30_at_1.34.38_AM.png)
After with 1 valid and 1 incompatible project:
![Screen_Shot_2015-04-30_at_1.37.26_AM](https://gitlab.com/gitlab-org/gitlab-ce/uploads/b5bcbd304206a996932e5208ef54a071/Screen_Shot_2015-04-30_at_1.37.26_AM.png)
See merge request !586
Diffstat (limited to 'spec')
-rw-r--r-- | spec/controllers/import/google_code_controller_spec.rb | 13 | ||||
-rw-r--r-- | spec/lib/gitlab/google_code_import/client_spec.rb | 1 |
2 files changed, 14 insertions, 0 deletions
diff --git a/spec/controllers/import/google_code_controller_spec.rb b/spec/controllers/import/google_code_controller_spec.rb index 037cddb4600..78c0f5079cc 100644 --- a/spec/controllers/import/google_code_controller_spec.rb +++ b/spec/controllers/import/google_code_controller_spec.rb @@ -27,21 +27,34 @@ describe Import::GoogleCodeController do it "assigns variables" do @project = create(:project, import_type: 'google_code', creator_id: user.id) controller.stub_chain(:client, :repos).and_return([@repo]) + controller.stub_chain(:client, :incompatible_repos).and_return([]) get :status expect(assigns(:already_added_projects)).to eq([@project]) expect(assigns(:repos)).to eq([@repo]) + expect(assigns(:incompatible_repos)).to eq([]) end it "does not show already added project" do @project = create(:project, import_type: 'google_code', creator_id: user.id, import_source: 'vim') controller.stub_chain(:client, :repos).and_return([@repo]) + controller.stub_chain(:client, :incompatible_repos).and_return([]) get :status expect(assigns(:already_added_projects)).to eq([@project]) expect(assigns(:repos)).to eq([]) end + + it "does not show any invalid projects" do + controller.stub_chain(:client, :repos).and_return([]) + controller.stub_chain(:client, :incompatible_repos).and_return([@repo]) + + get :status + + expect(assigns(:repos)).to be_empty + expect(assigns(:incompatible_repos)).to eq([@repo]) + end end end diff --git a/spec/lib/gitlab/google_code_import/client_spec.rb b/spec/lib/gitlab/google_code_import/client_spec.rb index d2bf871daa8..a66b811e0fd 100644 --- a/spec/lib/gitlab/google_code_import/client_spec.rb +++ b/spec/lib/gitlab/google_code_import/client_spec.rb @@ -23,6 +23,7 @@ describe Gitlab::GoogleCodeImport::Client do describe "#repos" do it "returns only Git repositories" do expect(subject.repos.length).to eq(1) + expect(subject.incompatible_repos.length).to eq(1) end end |