From 0d46a3cf22894d1da0a8284137d40fa2c75310dd Mon Sep 17 00:00:00 2001 From: Stephan Hagemann Date: Tue, 13 Jan 2015 10:30:32 -0500 Subject: [PATCH] Exposing a test_helper from event_counter engine to be used in tests of other engines --- .../event_counter/lib/event_counter/test_helper.rb | 1 + .../event_counter/spec/support/test_helper.rb | 13 +++++++++++++ .../spec/controllers/tease_controller_spec.rb | 7 +++---- components/teaser/spec/spec_helper.rb | 1 + 4 files changed, 18 insertions(+), 4 deletions(-) create mode 100644 components/event_counter/lib/event_counter/test_helper.rb create mode 100644 components/event_counter/spec/support/test_helper.rb diff --git a/components/event_counter/lib/event_counter/test_helper.rb b/components/event_counter/lib/event_counter/test_helper.rb new file mode 100644 index 0000000..511378d --- /dev/null +++ b/components/event_counter/lib/event_counter/test_helper.rb @@ -0,0 +1 @@ +require_relative "../../spec/support/test_helper" \ No newline at end of file diff --git a/components/event_counter/spec/support/test_helper.rb b/components/event_counter/spec/support/test_helper.rb new file mode 100644 index 0000000..c935559 --- /dev/null +++ b/components/event_counter/spec/support/test_helper.rb @@ -0,0 +1,13 @@ +module EventCounter + module TestHelper + def self.new_logger(object_identifier = nil, event_identifier = nil, count = nil) + logger = EventCounter::Logger.new + if object_identifier && event_identifier && count + count.times do + logger.log object_identifier, event_identifier + end + end + logger + end + end +end \ No newline at end of file diff --git a/components/teaser/spec/controllers/tease_controller_spec.rb b/components/teaser/spec/controllers/tease_controller_spec.rb index 13a488e..16e6137 100644 --- a/components/teaser/spec/controllers/tease_controller_spec.rb +++ b/components/teaser/spec/controllers/tease_controller_spec.rb @@ -36,11 +36,10 @@ module Teaser controller.instance_variable_set "@annoyance_meter", mock_annoyance_meter entry_manager = EmailSignup::EntryManager.new controller.instance_variable_set "@entry_manager", entry_manager - event_counter = EventCounter::Logger.new - controller.instance_variable_set "@event_counter", event_counter - entry = entry_manager.create "adam" - event_counter.log "email_signup_entry_#{entry.id}", "signup" + + event_counter = EventCounter::TestHelper.new_logger("email_signup_entry_#{entry.id}", "signup", 1) + controller.instance_variable_set "@event_counter", event_counter xhr :post, :create, new_sign_up_entry: "adam", use_route: "teaser" response.status.should == 400 diff --git a/components/teaser/spec/spec_helper.rb b/components/teaser/spec/spec_helper.rb index a251dd3..0d96fd1 100644 --- a/components/teaser/spec/spec_helper.rb +++ b/components/teaser/spec/spec_helper.rb @@ -3,6 +3,7 @@ require 'rspec/rails' require 'shoulda-matchers' +require 'event_counter/test_helper' Dir[Teaser::Engine.root.join("spec/support/**/*.rb")].each {|f| require f}