Sha256: 796ebca95c34f445232e0f9b6b5fb593af60b5d283cc2432b78a22ef4cb2b32e

Contents?: true

Size: 1.55 KB

Versions: 1

Compression:

Stored size: 1.55 KB

Contents

require 'test_helper'

class ActsAsCampaignTest < ActiveSupport::TestCase
	def epom_field(field)
		EpomRails.config.campaign[:fields].key(field)
	end

	test 'fancy_method' do
	  	assert_raises NoMethodError do Campaign.fancy_method end
	end

	test 'save an campaign' do
		unless EpomRails.config.offline
			campaign = campaigns(:two)
			campaign.epom_id = nil	  	

	  	assert	campaign.save
	  	assert_instance_of Fixnum, campaign.send(epom_field('id'))
	  end
	end

	test 'delete an campaign' do
		unless EpomRails.config.offline
			campaign = campaigns(:two)	 
			campaign.epom_id = nil 	

	  	assert	campaign.save
	  	assert_instance_of Fixnum, campaign.send(epom_field('id'))

	  	epom_id = campaign.send(epom_field('id'))
	  	assert campaign.destroy
	  end
	end

	test 'epom methods' do
		unless EpomRails.config.offline
			campaign = campaigns(:two)
			campaign.epom_id = nil	  	

	  	assert	campaign.save
	  	assert_instance_of Fixnum, campaign.send(epom_field('id'))

			response = Campaign.get_campaign({:campaignId => campaign.send(epom_field('id'))}, {})
			assert_equal campaign.send(epom_field('id')), response['id']
			assert_equal campaign.send(epom_field('name')), response['name']
		end		
	end

	test 'method_missing' do
		campaign = campaigns(:one)
		assert campaign.advertiser_id, campaign.advertiserId
	end

	test 'belongs to advertiser' do
		campaign = campaigns(:one)
		advertiser = advertisers(:one)
		campaign.advertiser = advertiser
		# ensure epom id is setted
		advertiser.save

		assert Advertiser.find(campaign.advertiser_id), campaign.advertiser
	end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
epom_rails-1.3.2 test/epom_rails/acts_as_campaign_test.rb