From b23ca8deb1e37bebbd480672af20fbba8ca380bb Mon Sep 17 00:00:00 2001 From: Eloy Gomez Date: Sat, 8 Aug 2015 13:08:48 +0200 Subject: [PATCH] Create event on debate creation --- app/controllers/debates_controller.rb | 1 + spec/controllers/debates_controller_spec.rb | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+) create mode 100644 spec/controllers/debates_controller_spec.rb diff --git a/app/controllers/debates_controller.rb b/app/controllers/debates_controller.rb index a395f9c5e..b8ab7792c 100644 --- a/app/controllers/debates_controller.rb +++ b/app/controllers/debates_controller.rb @@ -30,6 +30,7 @@ class DebatesController < ApplicationController @debate = Debate.new(debate_params) @debate.author = current_user if verify_captcha?(@debate) and @debate.save + ahoy.track :debate_created, debate_id: @debate.id redirect_to @debate, notice: t('flash.actions.create.notice', resource_name: 'Debate') else render :new diff --git a/spec/controllers/debates_controller_spec.rb b/spec/controllers/debates_controller_spec.rb new file mode 100644 index 000000000..1a24c17d5 --- /dev/null +++ b/spec/controllers/debates_controller_spec.rb @@ -0,0 +1,18 @@ +require 'rails_helper' + +describe DebatesController do + + # create + #---------------------------------------------------------------------- + + describe 'POST create' do + let(:user) { create :user } + + it 'should create an ahoy event' do + sign_in user + post :create, debate: { title: 'foo', description: 'foo bar', terms_of_service: 1 } + expect(Ahoy::Event.where(name: :debate_created).count).to eq 1 + expect(Ahoy::Event.last.properties['debate_id']).to eq Debate.last.id + end + end +end