Convert specs to tests

#343
This commit is contained in:
Artur Beljajev 2017-10-27 10:24:57 +03:00
parent 36db8598d2
commit 579da84c58
6 changed files with 82 additions and 59 deletions

View file

@ -1,18 +0,0 @@
require 'rails_helper'
RSpec.feature 'Edit registrar' do
given!(:registrar) { create(:registrar) }
background do
sign_in_to_admin_area
end
it 'updates registrar' do
visit admin_registrar_url(registrar)
click_link_or_button 'Edit'
click_link_or_button 'Update registrar'
expect(page).to have_text('Registrar has been successfully updated')
end
end

View file

@ -1,34 +0,0 @@
require 'rails_helper'
RSpec.describe 'admin registrar create' do
subject(:registrar) { Registrar.first }
before :example do
sign_in_to_admin_area
end
it 'creates new registrar' do
expect { post admin_registrars_path, registrar: attributes_for(:registrar) }
.to change { Registrar.count }.from(0).to(1)
end
it 'saves website' do
post admin_registrars_path, { registrar: attributes_for(:registrar, website: 'test') }
expect(registrar.website).to eq('test')
end
it 'saves email' do
post admin_registrars_path, { registrar: attributes_for(:registrar, email: 'test@test.com') }
expect(registrar.email).to eq('test@test.com')
end
it 'saves billing email' do
post admin_registrars_path, { registrar: attributes_for(:registrar, billing_email: 'test@test.com') }
expect(registrar.billing_email).to eq('test@test.com')
end
it 'redirects to :show' do
post admin_registrars_path, { registrar: attributes_for(:registrar) }
expect(response).to redirect_to admin_registrar_path(registrar)
end
end

View file

@ -0,0 +1,18 @@
require 'test_helper'
class RegistrarsControllerTest < ActionDispatch::IntegrationTest
def setup
login_as create(:admin_user)
end
def test_creates_new_registrar
assert_difference -> { Registrar.count } do
post admin_registrars_path, registrar: attributes_for(:registrar)
end
end
def test_redirects_to_newly_created_registrar
post admin_registrars_path, registrar: attributes_for(:registrar)
assert_redirected_to admin_registrar_path(Registrar.first)
end
end

View file

@ -0,0 +1,40 @@
require 'test_helper'
class RegistrarsControllerTest < ActionDispatch::IntegrationTest
def setup
login_as create(:admin_user)
end
def test_updates_website
registrar = create(:registrar, website: 'test')
patch admin_registrar_path(registrar), registrar: attributes_for(:registrar, website: 'new-website')
registrar.reload
assert_equal 'new-website', registrar.website
end
def test_updates_email
registrar = create(:registrar, email: 'test@test.com')
patch admin_registrar_path(registrar), registrar: attributes_for(:registrar, email: 'new-test@test.com')
registrar.reload
assert_equal 'new-test@test.com', registrar.email
end
def test_updates_billing_email
registrar = create(:registrar, billing_email: 'test@test.com')
patch admin_registrar_path(registrar), registrar: attributes_for(:registrar, billing_email: 'new-test@test.com')
registrar.reload
assert_equal 'new-test@test.com', registrar.billing_email
end
def test_redirects_to_registrar
registrar = create(:registrar)
patch admin_registrar_path(registrar), registrar: attributes_for(:registrar)
assert_redirected_to admin_registrar_path(registrar)
end
end

View file

@ -0,0 +1,17 @@
require 'test_helper'
class EditRegistrarTest < ActionDispatch::IntegrationTest
def setup
login_as create(:admin_user)
end
def test_updates_registrar
registrar = create(:registrar)
visit admin_registrar_path(registrar)
click_link_or_button 'Edit'
click_link_or_button 'Update registrar'
assert_text 'Registrar has been successfully updated'
end
end

View file

@ -1,12 +1,12 @@
require 'rails_helper'
require 'test_helper'
RSpec.feature 'New registrar' do
background do
sign_in_to_admin_area
class NewRegistrarTest < ActionDispatch::IntegrationTest
def setup
login_as create(:admin_user)
end
it 'creates registrar' do
visit admin_registrars_url
def test_creates_registrar
visit admin_registrars_path
click_link_or_button 'New registrar'
fill_in 'registrar[name]', with: 'test'
@ -15,6 +15,6 @@ RSpec.feature 'New registrar' do
fill_in 'registrar[code]', with: 'test'
click_link_or_button 'Create registrar'
expect(page).to have_text('Registrar has been successfully created')
assert_text 'Registrar has been successfully created'
end
end