Browse Source

more tests passing, little refactoring

pull/787/head
JG 3 years ago
parent
commit
6fa527daaf
  1. 11
      spec/features/user_spec.rb
  2. 10
      spec/models/form/setup/questions/created_by_id_spec.rb
  3. 13
      spec/requests/users_controller_spec.rb

11
spec/features/user_spec.rb

@ -327,22 +327,15 @@ RSpec.describe "User Features" do
fill_in("user[name]", with: "New User")
fill_in("user[email]", with: "newuser@example.com")
choose("user-role-data-provider-field")
choose("user-is-dpo-true-field")
choose("user-is-key-contact-true-field")
click_button("Continue")
expect(User.find_by(
name: "New User",
email: "newuser@example.com",
role: "data_provider",
is_dpo: true,
is_key_contact: true,
is_dpo: false,
is_key_contact: false,
)).to be_a(User)
end
it "defaults to is_dpo false" do
visit("users/new")
expect(page).to have_field("user[is_dpo]", with: false)
end
end
context "when editing someone elses account details" do

10
spec/models/form/setup/questions/created_by_id_spec.rb

@ -8,9 +8,9 @@ RSpec.describe Form::Setup::Questions::CreatedById, type: :model do
let(:page) { instance_double(Form::Page) }
let(:subsection) { instance_double(Form::Subsection) }
let(:form) { instance_double(Form) }
let!(:user_1) { FactoryBot.create(:user, name: "first user") }
let!(:user_2) { FactoryBot.create(:user, name: "second user") }
let!(:user_3) { FactoryBot.create(:user, name: nil, email: "madeupmail@example.com") }
let!(:user_1) { FactoryBot.build(:user, name: "first user") }
let!(:user_2) { FactoryBot.build(:user, name: "second user") }
let!(:user_3) { FactoryBot.build(:user, name: nil, email: "madeupmail@example.com") }
let(:expected_answer_options) do
{
"" => "Select an option",
@ -20,6 +20,10 @@ RSpec.describe Form::Setup::Questions::CreatedById, type: :model do
}
end
before do
allow(User).to receive(:select).and_return [user_1, user_2, user_3]
end
it "has correct page" do
expect(question.page).to eq(page)
end

13
spec/requests/users_controller_spec.rb

@ -805,19 +805,6 @@ RSpec.describe UsersController, type: :request do
expect { patch "/users/#{other_user.id}", headers:, params: }
.to change { other_user.reload.active }.from(false).to(true)
end
context "when the user name is missing" do
let(:other_user) { FactoryBot.create(:user, name: nil, organisation: user.organisation) }
before do
patch "/users/#{other_user.id}", headers:, params:
end
it "uses the user's email" do
follow_redirect!
expect(page).to have_content(other_user.email)
end
end
end
end
end

Loading…
Cancel
Save