Sha256: e0643fdd00282a58e949baf7fdec3cc95c66ca54f91fd46a318b814862cff02b
Contents?: true
Size: 1.03 KB
Versions: 2
Compression:
Stored size: 1.03 KB
Contents
require 'rails_helper' module Chaskiq RSpec.describe TracksController, type: :controller do routes { Chaskiq::Engine.routes } let(:list){ FactoryGirl.create(:chaskiq_list) } let(:subscriber){ FactoryGirl.create(:chaskiq_subscriber, list: list) } let(:campaign){ FactoryGirl.create(:chaskiq_campaign, list: list) } %w[open bounce spam].each do |action| it "will track an #{action}" do campaign response = get(action , campaign_id: campaign.id, id: subscriber.encoded_id) expect(response.status).to be == 200 expect(campaign.metrics.send(action.pluralize).size).to be == 1 expect(response.content_type).to be == "image/gif" end end it "will track a click and redirect" do campaign response = get("click" , campaign_id: campaign.id, id: subscriber.encoded_id, r: "http://google.com") expect(response.status).to be == 302 expect(campaign.metrics.clicks.size).to be == 1 expect(response).to redirect_to "http://google.com" end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
chaskiq-0.0.3 | spec/controllers/chaskiq/tracks_controller_spec.rb |
chaskiq-0.0.2 | spec/controllers/chaskiq/tracks_controller_spec.rb |