diff options
Diffstat (limited to 'spec/features/projects/snippets_spec.rb')
-rw-r--r-- | spec/features/projects/snippets_spec.rb | 42 |
1 files changed, 36 insertions, 6 deletions
diff --git a/spec/features/projects/snippets_spec.rb b/spec/features/projects/snippets_spec.rb index d37e8ed4699..1cfbbb4cb62 100644 --- a/spec/features/projects/snippets_spec.rb +++ b/spec/features/projects/snippets_spec.rb @@ -1,14 +1,44 @@ require 'spec_helper' -describe 'Project snippets', feature: true do +describe 'Project snippets', :js do context 'when the project has snippets' do - let(:project) { create(:empty_project, :public) } + let(:project) { create(:project, :public) } let!(:snippets) { create_list(:project_snippet, 2, :public, author: project.owner, project: project) } - before do - allow(Snippet).to receive(:default_per_page).and_return(1) - visit namespace_project_snippets_path(project.namespace, project) + let!(:other_snippet) { create(:project_snippet) } + + context 'pagination' do + before do + allow(Snippet).to receive(:default_per_page).and_return(1) + + visit project_snippets_path(project) + end + + it_behaves_like 'paginated snippets' + end + + context 'list content' do + it 'contains all project snippets' do + visit project_snippets_path(project) + + expect(page).to have_selector('.snippet-row', count: 2) + + expect(page).to have_content(snippets[0].title) + expect(page).to have_content(snippets[1].title) + end end - it_behaves_like 'paginated snippets' + context 'when submitting a note' do + before do + sign_in(create(:admin)) + visit project_snippet_path(project, snippets[0]) + end + + it 'should have autocomplete' do + find('#note_note').native.send_keys('') + fill_in 'note[note]', with: '@' + + expect(page).to have_selector('.atwho-view') + end + end end end |