summaryrefslogtreecommitdiff
path: root/test/unit/temporary_user_test.rb
diff options
context:
space:
mode:
authorAzul <azul@riseup.net>2016-08-12 17:26:51 +0200
committerAzul <azul@riseup.net>2016-08-12 17:26:51 +0200
commit8fbe70729da1d308a118c930e8f938837484a61c (patch)
tree06b34c69cc535dce9c2786f7172a5ab1bb60e7e0 /test/unit/temporary_user_test.rb
parent8196f46b2c4d1d0dce7e4eafcc299879ec0d894b (diff)
[db] def database on users instead of use_database
use_database affects all uses of prepare_database - so also the one in tmp_database. In order to avoid that we do not use_database but just overwrite the database method itself.
Diffstat (limited to 'test/unit/temporary_user_test.rb')
-rw-r--r--test/unit/temporary_user_test.rb28
1 files changed, 24 insertions, 4 deletions
diff --git a/test/unit/temporary_user_test.rb b/test/unit/temporary_user_test.rb
index 38ccd67..2c9e70f 100644
--- a/test/unit/temporary_user_test.rb
+++ b/test/unit/temporary_user_test.rb
@@ -6,16 +6,37 @@ class TemporaryUserTest < ActiveSupport::TestCase
InviteCodeValidator.any_instance.stubs(:validate)
end
- test "tmp_user saved to tmp_users" do
- begin
- assert User.ancestors.include?(TemporaryUser)
+ test "TemporaryUser concern is applied" do
+ assert User.ancestors.include?(TemporaryUser)
+ end
+
+ test "temporary user has tmp_users as db" do
+ tmp_user = User.new :login => 'tmp_user_'+SecureRandom.hex(5).downcase
+ assert_equal 'leap_web_tmp_users', tmp_user.database.name
+ end
+ test "normal user has users as db" do
+ user = User.new :login => 'a'+SecureRandom.hex(5).downcase
+ assert_equal 'leap_web_users', user.database.name
+ end
+
+ test "user saved to users" do
+ begin
assert_difference('User.database.info["doc_count"]') do
normal_user = User.create!(:login => 'a'+SecureRandom.hex(5).downcase,
:password_verifier => 'ABCDEF0010101', :password_salt => 'ABCDEF')
refute normal_user.database.to_s.include?('tmp')
end
+ ensure
+ begin
+ normal_user.destroy
+ rescue
+ end
+ end
+ end
+ test "tmp_user saved to tmp_users" do
+ begin
assert_difference('User.tmp_database.info["doc_count"]') do
tmp_user = User.create!(:login => 'tmp_user_'+SecureRandom.hex(5).downcase,
:password_verifier => 'ABCDEF0010101', :password_salt => 'ABCDEF')
@@ -23,7 +44,6 @@ class TemporaryUserTest < ActiveSupport::TestCase
end
ensure
begin
- normal_user.destroy
tmp_user.destroy
rescue
end