diff options
author | Valery Sizov <valery@gitlab.com> | 2016-02-15 08:12:17 +0000 |
---|---|---|
committer | Valery Sizov <valery@gitlab.com> | 2016-02-15 08:12:17 +0000 |
commit | e654e68c3fb32124189a205207f9d4d59708045d (patch) | |
tree | bfb08c7e81840a104a880626a606f6a3adaddc3e | |
parent | dc3ea7eb74463c4d6576a96dc0eabd67024bd9c7 (diff) | |
parent | 46d35cdbe572e7cad434ed9c61fc264160184aba (diff) | |
download | gitlab-ce-e654e68c3fb32124189a205207f9d4d59708045d.tar.gz |
Merge branch 'fix-me-me-me-me' into 'master'
Fix duplicate "me" in tooltip of the "thumbsup" awards Emoji
Steps to reproduce:
1. Go to a MR or issue
2. Click on "thumbsup" Emoji 3 times
3. Observe the tooltip becomes "me, me"
Closes #13374, #12788
See merge request !2804
-rw-r--r-- | CHANGELOG | 1 | ||||
-rw-r--r-- | app/assets/javascripts/awards_handler.coffee | 3 | ||||
-rw-r--r-- | features/project/issues/award_emoji.feature | 11 | ||||
-rw-r--r-- | features/steps/project/issues/award_emoji.rb | 26 |
4 files changed, 39 insertions, 2 deletions
diff --git a/CHANGELOG b/CHANGELOG index b28e1f7a9fd..2d57e013a9e 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,6 +1,7 @@ Please view this file on the master branch, on stable branches it's out of date. v 8.5.0 (unreleased) + - Fix duplicate "me" in tooltip of the "thumbsup" awards Emoji (Stan Hu) - Cache various Repository methods to improve performance (Yorick Peterse) - Fix duplicated branch creation/deletion Web hooks/service notifications when using Web UI (Stan Hu) - Ensure rake tasks that don't need a DB connection can be run without one diff --git a/app/assets/javascripts/awards_handler.coffee b/app/assets/javascripts/awards_handler.coffee index 047df4786a9..360acb864f6 100644 --- a/app/assets/javascripts/awards_handler.coffee +++ b/app/assets/javascripts/awards_handler.coffee @@ -49,10 +49,11 @@ class @AwardsHandler counter.text(parseInt(counter.text()) - 1) emojiIcon.removeClass("active") @removeMeFromAuthorList(emoji) - else if emoji =="thumbsup" || emoji == "thumbsdown" + else if emoji == "thumbsup" || emoji == "thumbsdown" emojiIcon.tooltip("destroy") counter.text(0) emojiIcon.removeClass("active") + @removeMeFromAuthorList(emoji) else emojiIcon.tooltip("destroy") emojiIcon.remove() diff --git a/features/project/issues/award_emoji.feature b/features/project/issues/award_emoji.feature index bfde89fd896..2945bb3753a 100644 --- a/features/project/issues/award_emoji.feature +++ b/features/project/issues/award_emoji.feature @@ -7,7 +7,16 @@ Feature: Award Emoji And I visit "Bugfix" issue page @javascript - Scenario: I add and remove award in the issue + Scenario: I repeatedly add and remove thumbsup award in the issue + Given I click the thumbsup award Emoji + Then I have award added + Given I click the thumbsup award Emoji + Then I have no awards added + Given I click the thumbsup award Emoji + Then I have award added + + @javascript + Scenario: I add and remove custom award in the issue Given I click to emoji-picker Then The search field is focused And I click to emoji in the picker diff --git a/features/steps/project/issues/award_emoji.rb b/features/steps/project/issues/award_emoji.rb index 69695d493f3..8b9aa6aabfa 100644 --- a/features/steps/project/issues/award_emoji.rb +++ b/features/steps/project/issues/award_emoji.rb @@ -8,6 +8,15 @@ class Spinach::Features::AwardEmoji < Spinach::FeatureSteps visit namespace_project_issue_path(@project.namespace, @project, @issue) end + step 'I click the thumbsup award Emoji' do + page.within '.awards' do + thumbsup = page.find('.award .emoji-1F44D') + thumbsup.click + thumbsup.hover + sleep 0.3 + end + end + step 'I click to emoji-picker' do page.within '.awards-controls' do page.find('.add-award').click @@ -40,6 +49,23 @@ class Spinach::Features::AwardEmoji < Spinach::FeatureSteps page.within '.awards' do expect(page).to have_selector '.award' expect(page.find('.award.active .counter')).to have_content '1' + expect(page.find('.award.active')['data-original-title']).to eq('me') + end + end + + step 'I have no awards added' do + page.within '.awards' do + expect(page).to have_selector '.award' + expect(page.all('.award').size).to eq(2) + + # Check tooltip data + page.all('.award').each do |element| + expect(element['title']).to eq("") + end + + page.all('.award .counter').each do |element| + expect(element).to have_content '0' + end end end |