Test keys CRUD
This commit is contained in:
parent
37ac6b769a
commit
a2488980ed
@ -5,6 +5,11 @@ def build_sound_file
|
|||||||
end
|
end
|
||||||
|
|
||||||
FactoryGirl.define do
|
FactoryGirl.define do
|
||||||
|
factory :key do
|
||||||
|
name 'Some key'
|
||||||
|
user
|
||||||
|
end
|
||||||
|
|
||||||
factory :playlist do
|
factory :playlist do
|
||||||
name 'Some playlist'
|
name 'Some playlist'
|
||||||
user
|
user
|
||||||
|
46
spec/features/keys/crud_spec.rb
Normal file
46
spec/features/keys/crud_spec.rb
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
feature 'Keys CRUD' do
|
||||||
|
TOKEN_PATTERN = /\b[\w\d]{24}\b/
|
||||||
|
|
||||||
|
let(:key) { create_key }
|
||||||
|
|
||||||
|
background do
|
||||||
|
sign_in
|
||||||
|
key
|
||||||
|
end
|
||||||
|
|
||||||
|
scenario 'lists keys' do
|
||||||
|
visit keys_path
|
||||||
|
|
||||||
|
expect(page).to have_content key[:name]
|
||||||
|
expect(page.body).not_to match TOKEN_PATTERN
|
||||||
|
end
|
||||||
|
|
||||||
|
scenario 'shows key' do
|
||||||
|
visit keys_path
|
||||||
|
|
||||||
|
click_link key[:name]
|
||||||
|
|
||||||
|
expect(page).to have_content key[:name]
|
||||||
|
expect(page.body).to match TOKEN_PATTERN
|
||||||
|
end
|
||||||
|
|
||||||
|
scenario 'edits key' do
|
||||||
|
visit keys_path
|
||||||
|
|
||||||
|
click_link 'Edit'
|
||||||
|
fill_in 'Name', with: 'new key name'
|
||||||
|
click_button 'Update'
|
||||||
|
|
||||||
|
expect(current_path).to eq keys_path
|
||||||
|
expect(page).to have_content 'new key name'
|
||||||
|
end
|
||||||
|
|
||||||
|
scenario 'destroys key' do
|
||||||
|
visit keys_path
|
||||||
|
|
||||||
|
click_link 'Destroy'
|
||||||
|
|
||||||
|
expect(current_path).to eq keys_path
|
||||||
|
expect(page).not_to have_content key[:name]
|
||||||
|
end
|
||||||
|
end
|
@ -21,6 +21,15 @@ module AcceptanceHelpers
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def create_key
|
||||||
|
attributes_for :key do |o|
|
||||||
|
visit keys_path
|
||||||
|
click_link 'New key'
|
||||||
|
fill_in 'Name', with: o[:name]
|
||||||
|
click_button 'Create'
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
def create_playlist
|
def create_playlist
|
||||||
attributes_for :playlist do |o|
|
attributes_for :playlist do |o|
|
||||||
visit playlists_path
|
visit playlists_path
|
||||||
|
Loading…
x
Reference in New Issue
Block a user