From bc20e8961773a987651c58ae0fa91fa87258026b Mon Sep 17 00:00:00 2001 From: Sebastian Kippe Date: Mon, 10 Jan 2022 09:19:04 -0600 Subject: [PATCH] Fix exception during signup --- app/services/create_account.rb | 4 ++-- spec/services/create_account_spec.rb | 23 +++++++++++++++++++++++ 2 files changed, 25 insertions(+), 2 deletions(-) diff --git a/app/services/create_account.rb b/app/services/create_account.rb index 51661db..da24010 100644 --- a/app/services/create_account.rb +++ b/app/services/create_account.rb @@ -10,7 +10,7 @@ class CreateAccount < ApplicationService def call user = create_user_in_database add_ldap_document - create_lndhub_wallet + create_lndhub_wallet(user) if @invitation.present? update_invitation(user.id) @@ -46,7 +46,7 @@ class CreateAccount < ApplicationService ExchangeXmppContactsJob.perform_later(@invitation.user, @username, @domain) end - def create_lndhub_wallet + def create_lndhub_wallet(user) CreateLndhubWalletJob.perform_later(user) end end diff --git a/spec/services/create_account_spec.rb b/spec/services/create_account_spec.rb index e010735..0180b0d 100644 --- a/spec/services/create_account_spec.rb +++ b/spec/services/create_account_spec.rb @@ -92,4 +92,27 @@ RSpec.describe CreateAccount, type: :model do clear_enqueued_jobs end end + + describe "#create_lndhub_wallet" do + include ActiveJob::TestHelper + + let(:service) { CreateAccount.new( + username: 'halfinney', email: 'halfinney@example.com', + password: 'bright-ideas-in-winter' + )} + let(:new_user) { create :user, cn: "halfinney", ou: "kosmos.org" } + + it "enqueues a job to create an LndHub wallet" do + service.send(:create_lndhub_wallet, new_user) + + expect(enqueued_jobs.size).to eq(1) + + args = enqueued_jobs.first['arguments'] + expect(args[0]['_aj_globalid']).to match('gid://akkounts/User') + end + + after do + clear_enqueued_jobs + end + end end