diff options
author | Kamil Trzcinski <ayufan@ayufan.eu> | 2016-04-05 11:08:41 +0200 |
---|---|---|
committer | Kamil Trzcinski <ayufan@ayufan.eu> | 2016-04-05 11:08:41 +0200 |
commit | aad3b6ddf88e31072602af7d1d06f64e1823673b (patch) | |
tree | 26a71b322a5d904e58964ce4788fef8ee3187f70 | |
parent | b8d1545bf18e672a68b9095e4c9c6cd6c018aad7 (diff) | |
download | gitlab-ce-reorder-language.tar.gz |
Update language only on HEAD of the repositoryreorder-language
-rw-r--r-- | app/services/git_push_service.rb | 3 | ||||
-rw-r--r-- | spec/services/git_push_service_spec.rb | 18 |
2 files changed, 17 insertions, 4 deletions
diff --git a/app/services/git_push_service.rb b/app/services/git_push_service.rb index c76c118df1a..36c9ee92da1 100644 --- a/app/services/git_push_service.rb +++ b/app/services/git_push_service.rb @@ -55,6 +55,9 @@ class GitPushService < BaseService end def update_main_language + return unless is_default_branch? + return unless push_to_new_branch? || push_to_existing_branch? + current_language = @project.repository.main_language unless current_language == @project.main_language diff --git a/spec/services/git_push_service_spec.rb b/spec/services/git_push_service_spec.rb index 8490a729e51..1047e32960e 100644 --- a/spec/services/git_push_service_spec.rb +++ b/spec/services/git_push_service_spec.rb @@ -159,18 +159,28 @@ describe GitPushService, services: true do end describe "Updates main language" do - context "before push" do it { expect(project.main_language).to eq(nil) } end context "after push" do before do - @service = execute_service(project, user, @oldrev, @newrev, @ref) + @service = execute_service(project, user, @oldrev, @newrev, ref) + end + + context "to master" do + let(:ref) { @ref } + + it { expect(@service.update_main_language).to eq(true) } + it { expect(project.main_language).to eq("Ruby") } end - it { expect(@service.update_main_language).to eq(true) } - it { expect(project.main_language).to eq("Ruby") } + context "to other branch" do + let(:ref) { 'refs/heads/feature/branch' } + + it { expect(@service.update_main_language).to eq(nil) } + it { expect(project.main_language).to eq(nil) } + end end end |