summaryrefslogtreecommitdiff
path: root/users/test/support
diff options
context:
space:
mode:
authorAzul <azul@leap.se>2013-09-20 14:22:28 +0200
committerAzul <azul@leap.se>2013-09-20 14:22:28 +0200
commit985406273233905868c70918bafd767d8870c76a (patch)
tree2b1ab7c9e89f2aaae379938430f40e5b3babfbbf /users/test/support
parent13e91941396a74b6245dcb9d81b9cfa77861df95 (diff)
parent890c9e170fc038eccb46eca3c1ddcf6f05eaa53f (diff)
Merge tag '0.2.3'
Diffstat (limited to 'users/test/support')
-rw-r--r--users/test/support/integration_test_helper.rb12
-rw-r--r--users/test/support/time_test_helper.rb30
2 files changed, 42 insertions, 0 deletions
diff --git a/users/test/support/integration_test_helper.rb b/users/test/support/integration_test_helper.rb
new file mode 100644
index 0000000..cfe72cf
--- /dev/null
+++ b/users/test/support/integration_test_helper.rb
@@ -0,0 +1,12 @@
+module IntegrationTestHelper
+ def submit_signup
+ username = "test_#{SecureRandom.urlsafe_base64}".downcase
+ password = SecureRandom.base64
+ visit '/users/new'
+ fill_in 'Username', with: username
+ fill_in 'Password', with: password
+ fill_in 'Password confirmation', with: password
+ click_on 'Sign Up'
+ return username, password
+ end
+end
diff --git a/users/test/support/time_test_helper.rb b/users/test/support/time_test_helper.rb
new file mode 100644
index 0000000..f673f12
--- /dev/null
+++ b/users/test/support/time_test_helper.rb
@@ -0,0 +1,30 @@
+# 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