From f327bdf6b656a40c35f5c05f4d2a01e69ff2f788 Mon Sep 17 00:00:00 2001 From: Maciej Szlosarczyk Date: Fri, 29 Jun 2018 10:43:01 +0300 Subject: [PATCH] Rewrite mobile id spec to a test --- .../registrar/sign_in/mobile_id_spec.rb | 20 ------------ test/integration/registrar/sign_in_test.rb | 32 +++++++++++++++++++ 2 files changed, 32 insertions(+), 20 deletions(-) delete mode 100644 spec/features/registrar/sign_in/mobile_id_spec.rb create mode 100644 test/integration/registrar/sign_in_test.rb diff --git a/spec/features/registrar/sign_in/mobile_id_spec.rb b/spec/features/registrar/sign_in/mobile_id_spec.rb deleted file mode 100644 index bc26daff5..000000000 --- a/spec/features/registrar/sign_in/mobile_id_spec.rb +++ /dev/null @@ -1,20 +0,0 @@ -require 'rails_helper' - -RSpec.feature 'Mobile ID login', db: true do - given!(:api_user) { create(:api_user, identity_code: 1234) } - - background do - digidoc_client = instance_double(Digidoc::Client, authenticate: OpenStruct.new(user_id_code: 1234), session_code: 1234) - allow(Digidoc::Client).to receive(:new).and_return(digidoc_client) - end - - scenario 'login with phone number' do - visit registrar_login_path - click_on 'login-with-mobile-id-btn' - - fill_in 'user[phone]', with: '1234' - click_button 'Login' - - expect(page).to have_text('Confirmation sms was sent to your phone. Verification code is') - end -end diff --git a/test/integration/registrar/sign_in_test.rb b/test/integration/registrar/sign_in_test.rb new file mode 100644 index 000000000..ffbbf352e --- /dev/null +++ b/test/integration/registrar/sign_in_test.rb @@ -0,0 +1,32 @@ +require 'test_helper' + +class SignInTest < ActionDispatch::IntegrationTest + def setup + super + WebMock.allow_net_connect! + + @user = users(:api_bestnames) + @user.identity_code = '1234' + @user.save + end + + def test_mobile_id_sign_in_page + mock_client = Minitest::Mock.new + mock_client.expect(:authenticate, OpenStruct.new(user_id_code: '1234'), + [{ phone: "+3721234", + message_to_display: "Authenticating", + service_name: "Testimine" }]) + mock_client.expect(:session_code, 1234) + + Digidoc::Client.stub(:new, mock_client) do + visit registrar_login_path + + click_on 'login-with-mobile-id-btn' + + fill_in 'user[phone]', with: '1234' + click_button 'Login' + + assert(page.has_text?('Confirmation sms was sent to your phone. Verification code is')) + end + end +end