VRFS-2894 Update email / user info in recurly upon finalize. Test to verify.

This commit is contained in:
Steven Miers 2015-03-31 20:25:23 -05:00
parent 84ac9f049c
commit 4c2d4958fe
3 changed files with 44 additions and 0 deletions

View File

@ -868,6 +868,11 @@ module JamRuby
user.email = user.update_email
user.update_email_token = nil
user.save
begin
RecurlyClient.new.update_account(user)
rescue Recurly::Error
@@log.debug("No recurly account found; continuing")
end
return user
end

View File

@ -22,6 +22,11 @@ module JamRuby
account
end
def has_account?(current_user)
account = get_account(current_user)
!!account
end
def delete_account(current_user)
account = get_account(current_user)
if (account)

View File

@ -1,4 +1,5 @@
require 'spec_helper'
require 'jam_ruby/recurly_client'
RESET_PASSWORD_URL = "/reset_token"
@ -9,6 +10,7 @@ describe User do
@user = User.new(first_name: "Example", last_name: "User", email: "user@example.com",
password: "foobar", password_confirmation: "foobar", city: "Apex", state: "NC", country: "US", terms_of_service: true, musician: true)
@user.musician_instruments << FactoryGirl.build(:musician_instrument, user: @user)
@recurly = RecurlyClient.new
end
subject { @user }
@ -434,6 +436,8 @@ describe User do
describe "finalize email update" do
before do
@recurly.has_account?(@user).should == false
@user.begin_update_email("somenewemail@blah.com", "foobar", "http://www.jamkazam.com/confirm_email_update?token=")
UserMailer.deliveries.clear
end
@ -464,6 +468,36 @@ describe User do
end
end
describe "finalize email updates recurly" do
before do
@user.begin_update_email("somenewemail@blah.com", "foobar", "http://www.jamkazam.com/confirm_email_update?token=")
UserMailer.deliveries.clear
billing_info = {
first_name: @user.first_name,
last_name: @user.last_name,
address1: 'Test Address 1',
address2: 'Test Address 2',
city: @user.city,
state: @user.state,
country: @user.country,
zip: '12345',
number: '4111-1111-1111-1111',
month: '08',
year: '2017',
verification_value: '111'
}
@recurly.find_or_create_account(@user, billing_info)
end
it "should update recurly" do
@recurly.has_account?(@user).should == true
@recurly.get_account(@user).email.should_not == "somenewemail@blah.com"
@finalized = User.finalize_update_email(@user.update_email_token)
@recurly.get_account(@user).email.should == "somenewemail@blah.com"
end
end
describe "user_authorizations" do
it "can create" do