summaryrefslogtreecommitdiff
path: root/users/test/support
diff options
context:
space:
mode:
authorAzul <azul@leap.se>2014-04-08 11:49:14 +0200
committerAzul <azul@leap.se>2014-04-08 11:49:14 +0200
commitb6d14dc19dd350a807826e3e097738a36613e083 (patch)
tree093dc5f2f1e773e3ad009d28d1fd24667d3c0ba6 /users/test/support
parent2e11e3ca2c7b02fdb5ff54f0bcd766cc5fa39975 (diff)
moving users: app and test files
Diffstat (limited to 'users/test/support')
-rw-r--r--users/test/support/auth_test_helper.rb65
-rw-r--r--users/test/support/stub_record_helper.rb53
-rw-r--r--users/test/support/time_test_helper.rb30
3 files changed, 0 insertions, 148 deletions
diff --git a/users/test/support/auth_test_helper.rb b/users/test/support/auth_test_helper.rb
deleted file mode 100644
index 57f9f9b..0000000
--- a/users/test/support/auth_test_helper.rb
+++ /dev/null
@@ -1,65 +0,0 @@
-module AuthTestHelper
- extend ActiveSupport::Concern
-
- # Controller will fetch current user from warden.
- # Make it pick up our current_user
- included do
- setup do
- request.env['warden'] ||= stub :user => nil
- end
- end
-
- def login(user_or_method_hash = {})
- if user_or_method_hash.respond_to?(:reverse_merge)
- user_or_method_hash.reverse_merge! :is_admin? => false
- end
- @current_user = stub_record(:user, user_or_method_hash)
- request.env['warden'] = stub :user => @current_user
- request.env['HTTP_AUTHORIZATION'] = header_for_token_auth
- return @current_user
- end
-
- def assert_access_denied(denied = true, logged_in = true)
- if denied
- if @response.content_type == 'application/json'
- assert_json_response('error' => I18n.t(:not_authorized))
- assert_response :unprocessable_entity
- else
- if logged_in
- assert_equal({:alert => I18n.t(:not_authorized)}, flash.to_hash)
- assert_redirected_to home_url
- else
- assert_equal({:alert => I18n.t(:not_authorized_login)}, flash.to_hash)
- assert_redirected_to login_url
- end
- end
- else
- assert flash[:alert].blank?
- end
- end
-
- def expect_logout
- expect_warden_logout
- @token.expects(:destroy) if @token
- end
-
- protected
-
- def header_for_token_auth
- @token = find_record(:token, :authenticate => @current_user)
- ActionController::HttpAuthentication::Token.encode_credentials @token.id
- end
-
- def expect_warden_logout
- raw = mock('raw session') do
- expects(:inspect)
- end
- request.env['warden'].expects(:raw_session).returns(raw)
- request.env['warden'].expects(:logout)
- end
-
-end
-
-class ActionController::TestCase
- include AuthTestHelper
-end
diff --git a/users/test/support/stub_record_helper.rb b/users/test/support/stub_record_helper.rb
deleted file mode 100644
index 25138a0..0000000
--- a/users/test/support/stub_record_helper.rb
+++ /dev/null
@@ -1,53 +0,0 @@
-module StubRecordHelper
-
- #
- # We will stub find when called on the records class and
- # return the record given.
- #
- # If no record is given but a hash or nil will create a stub based on
- # that instead and returns the stub.
- #
- def find_record(factory, record_or_attribs_hash = {})
- record = stub_record factory, record_or_attribs_hash, true
- klass = record.class
- # find is just an alias for get with CouchRest Model
- klass.stubs(:get).with(record.to_param.to_s).returns(record)
- klass.stubs(:find).with(record.to_param.to_s).returns(record)
- return record
- end
-
- # Create a stub that has the usual functions of a database record.
- # It won't fail on rendering a form for example.
- #
- # If the second parameter is a record we return the record itself.
- # This way you can build functions that either take a record or a
- # method hash to stub from. See find_record for an example.
- def stub_record(factory, record_or_method_hash = {}, persisted=false)
- if record_or_method_hash && !record_or_method_hash.is_a?(Hash)
- return record_or_method_hash
- end
- FactoryGirl.build_stubbed(factory).tap do |record|
- if persisted or record.persisted?
- record_or_method_hash.reverse_merge! :created_at => Time.now,
- :updated_at => Time.now, :id => Random.rand(100000).to_s
- end
- record.stubs(record_or_method_hash) if record_or_method_hash.present?
- end
- end
-
- # returns deep stringified attributes so they can be compared to
- # what the controller receives as params
- def record_attributes_for(factory, attribs_hash = nil)
- FactoryGirl.attributes_for(factory, attribs_hash).tap do |attribs|
- attribs.keys.each do |key|
- val = attribs.delete(key)
- attribs[key.to_s] = val.is_a?(Hash) ? val.stringify_keys! : val
- end
- end
- end
-
-end
-
-class ActionController::TestCase
- include StubRecordHelper
-end
diff --git a/users/test/support/time_test_helper.rb b/users/test/support/time_test_helper.rb
deleted file mode 100644
index f673f12..0000000
--- a/users/test/support/time_test_helper.rb
+++ /dev/null
@@ -1,30 +0,0 @@
-# Extend the Time class so that we can offset the time that 'now'
-# returns. This should allow us to effectively time warp for functional
-# tests that require limits per hour, what not.
-class Time #:nodoc:
- class <<self
- attr_accessor :testing_offset
-
- def now_with_testing_offset
- now_without_testing_offset - testing_offset
- end
- alias_method_chain :now, :testing_offset
- end
-end
-Time.testing_offset = 0
-
-module TimeTestHelper
- # Time warp to the specified time for the duration of the passed block
- def pretend_now_is(time)
- begin
- Time.testing_offset = Time.now - time
- yield
- ensure
- Time.testing_offset = 0
- end
- end
-end
-
-class ActiveSupport::TestCase
- include TimeTestHelper
-end