VRFS-1576 affiliate_partner model

This commit is contained in:
Jonathan Kolyer 2014-04-20 22:55:40 +00:00
parent 937efed3e5
commit 245727806d
2 changed files with 32 additions and 0 deletions

View File

@ -140,6 +140,7 @@ require "jam_ruby/models/email_batch_set"
require "jam_ruby/models/email_error"
require "jam_ruby/app/mailers/async_mailer"
require "jam_ruby/app/mailers/batch_mailer"
require "jam_ruby/models/affiliate_partner"
include Jampb

View File

@ -0,0 +1,31 @@
require 'spec_helper'
describe AffiliatePartner do
let!(:user) { FactoryGirl.create(:user) }
let!(:partner) {
AffiliatePartner.create_with_params({:partner_name => Faker::Company.name,
:partner_code => Faker::Lorem.word,
:user_email => user.email})
}
it 'validates required fields' do
expect(partner.referral_user_count).to eq(0)
expect(partner.partner_user).to eq(user)
user.reload
expect(user.affiliate_partner).to eq(partner)
end
it 'has user referrals' do
expect(AffiliatePartner.coded_id(partner.partner_code)).to eq(partner.id)
expect(partner.referral_user_count).to eq(0)
uu = FactoryGirl.create(:user)
uu.affiliate_referral = partner
uu.save
partner.reload
expect(uu.affiliate_referral).to eq(partner)
expect(partner.referral_user_count).to eq(1)
expect(partner.user_referrals[0]).to eq(uu)
end
end