IssueNotesRefactor: Fixes autocomplete specs.

This commit is contained in:
Fatih Acet 2017-07-20 23:43:54 +03:00
parent d493c16fb1
commit cbdbd24617
2 changed files with 27 additions and 23 deletions

View file

@ -28,8 +28,8 @@ feature 'GFM autocomplete', feature: true, js: true do
it 'opens autocomplete menu when field starts with text' do
page.within '.timeline-content-form' do
find('#note_note').native.send_keys('')
find('#note_note').native.send_keys('@')
find('#note-body').native.send_keys('')
find('#note-body').native.send_keys('@')
end
expect(page).to have_selector('.atwho-container')
@ -37,8 +37,8 @@ feature 'GFM autocomplete', feature: true, js: true do
it 'doesnt open autocomplete menu character is prefixed with text' do
page.within '.timeline-content-form' do
find('#note_note').native.send_keys('testing')
find('#note_note').native.send_keys('@')
find('#note-body').native.send_keys('testing')
find('#note-body').native.send_keys('@')
end
expect(page).not_to have_selector('.atwho-view')
@ -46,8 +46,8 @@ feature 'GFM autocomplete', feature: true, js: true do
it 'doesnt select the first item for non-assignee dropdowns' do
page.within '.timeline-content-form' do
find('#note_note').native.send_keys('')
find('#note_note').native.send_keys(':')
find('#note-body').native.send_keys('')
find('#note-body').native.send_keys(':')
end
expect(page).to have_selector('.atwho-container')
@ -58,7 +58,7 @@ feature 'GFM autocomplete', feature: true, js: true do
end
it 'does not open autocomplete menu when ":" is prefixed by a number and letters' do
note = find('#note_note')
note = find('#note-body')
# Number.
page.within '.timeline-content-form' do
@ -86,8 +86,8 @@ feature 'GFM autocomplete', feature: true, js: true do
it 'selects the first item for assignee dropdowns' do
page.within '.timeline-content-form' do
find('#note_note').native.send_keys('')
find('#note_note').native.send_keys('@')
find('#note-body').native.send_keys('')
find('#note-body').native.send_keys('@')
end
expect(page).to have_selector('.atwho-container')
@ -99,8 +99,8 @@ feature 'GFM autocomplete', feature: true, js: true do
it 'includes items for assignee dropdowns with non-ASCII characters in name' do
page.within '.timeline-content-form' do
find('#note_note').native.send_keys('')
find('#note_note').native.send_keys("@#{user.name[0...8]}")
find('#note-body').native.send_keys('')
find('#note-body').native.send_keys("@#{user.name[0...8]}")
end
expect(page).to have_selector('.atwho-container')
@ -112,8 +112,8 @@ feature 'GFM autocomplete', feature: true, js: true do
it 'selects the first item for non-assignee dropdowns if a query is entered' do
page.within '.timeline-content-form' do
find('#note_note').native.send_keys('')
find('#note_note').native.send_keys(':1')
find('#note-body').native.send_keys('')
find('#note-body').native.send_keys(':1')
end
expect(page).to have_selector('.atwho-container')
@ -125,7 +125,7 @@ feature 'GFM autocomplete', feature: true, js: true do
context 'if a selected value has special characters' do
it 'wraps the result in double quotes' do
note = find('#note_note')
note = find('#note-body')
page.within '.timeline-content-form' do
note.native.send_keys('')
note.native.send_keys("~#{label.title[0]}")
@ -138,7 +138,7 @@ feature 'GFM autocomplete', feature: true, js: true do
end
it "shows dropdown after a new line" do
note = find('#note_note')
note = find('#note-body')
page.within '.timeline-content-form' do
note.native.send_keys('test')
note.native.send_keys(:enter)
@ -150,7 +150,7 @@ feature 'GFM autocomplete', feature: true, js: true do
end
it "does not show dropdown when preceded with a special character" do
note = find('#note_note')
note = find('#note-body')
page.within '.timeline-content-form' do
note.native.send_keys('')
note.native.send_keys("@")
@ -168,7 +168,7 @@ feature 'GFM autocomplete', feature: true, js: true do
end
it "does not throw an error if no labels exist" do
note = find('#note_note')
note = find('#note-body')
page.within '.timeline-content-form' do
note.native.send_keys('')
note.native.send_keys('~')
@ -179,7 +179,7 @@ feature 'GFM autocomplete', feature: true, js: true do
end
it 'doesn\'t wrap for assignee values' do
note = find('#note_note')
note = find('#note-body')
page.within '.timeline-content-form' do
note.native.send_keys('')
note.native.send_keys("@#{user.username[0]}")
@ -192,7 +192,7 @@ feature 'GFM autocomplete', feature: true, js: true do
end
it 'doesn\'t wrap for emoji values' do
note = find('#note_note')
note = find('#note-body')
page.within '.timeline-content-form' do
note.native.send_keys('')
note.native.send_keys(":cartwheel")
@ -206,7 +206,7 @@ feature 'GFM autocomplete', feature: true, js: true do
it 'doesn\'t open autocomplete after non-word character' do
page.within '.timeline-content-form' do
find('#note_note').native.send_keys("@#{user.username[0..2]}!")
find('#note-body').native.send_keys("@#{user.username[0..2]}!")
end
expect(page).not_to have_selector('.atwho-view')
@ -214,14 +214,14 @@ feature 'GFM autocomplete', feature: true, js: true do
it 'doesn\'t open autocomplete if there is no space before' do
page.within '.timeline-content-form' do
find('#note_note').native.send_keys("hello:#{user.username[0..2]}")
find('#note-body').native.send_keys("hello:#{user.username[0..2]}")
end
expect(page).not_to have_selector('.atwho-view')
end
it 'triggers autocomplete after selecting a quick action' do
note = find('#note_note')
note = find('#note-body')
page.within '.timeline-content-form' do
note.native.send_keys('')
note.native.send_keys('/as')

View file

@ -14,7 +14,11 @@ feature 'Member autocomplete', :js do
shared_examples "open suggestions when typing @" do
before do
page.within('.new-note') do
find('#note_note').send_keys('@')
if note.noteable_type === 'Issue'
find('#note-body').send_keys('@')
else
find('#note_note').send_keys('@')
end
end
end