summaryrefslogtreecommitdiff
path: root/users/test/unit
diff options
context:
space:
mode:
authorjessib <jessib@riseup.net>2013-09-03 10:48:13 -0700
committerjessib <jessib@riseup.net>2013-09-03 10:48:13 -0700
commit07d0f6fe1d80cb730bd12a03a107c18d18779acc (patch)
tree8583a31661ba5032a9cd6ffd6b74273a6c862ab0 /users/test/unit
parentf3e17149116f6a3aeb87f8a6d0ecf29e8e33ad93 (diff)
parent29b306a4d49d395e5753e2e85f8fa1f25d18410c (diff)
Merge pull request #73 from azul/bugfix/3623-teardown-test-data-properly
Bugfix/3623 teardown test data properly
Diffstat (limited to 'users/test/unit')
-rw-r--r--users/test/unit/account_test.rb45
-rw-r--r--users/test/unit/identity_test.rb7
-rw-r--r--users/test/unit/user_test.rb2
3 files changed, 49 insertions, 5 deletions
diff --git a/users/test/unit/account_test.rb b/users/test/unit/account_test.rb
new file mode 100644
index 0000000..39969c0
--- /dev/null
+++ b/users/test/unit/account_test.rb
@@ -0,0 +1,45 @@
+require 'test_helper'
+
+class AccountTest < ActiveSupport::TestCase
+
+ test "create a new account" do
+ user = Account.create(FactoryGirl.attributes_for(:user))
+ assert user.valid?
+ assert user.persisted?
+ assert id = user.identity
+ assert_equal user.email_address, id.address
+ assert_equal user.email_address, id.destination
+ id.destroy
+ user.destroy
+ end
+
+ test "create and remove a user account" do
+ assert_no_difference "Identity.count" do
+ assert_no_difference "User.count" do
+ user = Account.create(FactoryGirl.attributes_for(:user))
+ Account.new(user).destroy
+ end
+ end
+ end
+
+ test "change username and create alias" do
+ user = Account.create(FactoryGirl.attributes_for(:user))
+ old_id = user.identity
+ old_email = user.email_address
+ Account.new(user).update(FactoryGirl.attributes_for(:user))
+ user.reload
+ old_id.reload
+ assert user.valid?
+ assert user.persisted?
+ assert id = user.identity
+ assert id.persisted?
+ assert_equal user.email_address, id.address
+ assert_equal user.email_address, id.destination
+ assert_equal user.email_address, old_id.destination
+ assert_equal old_email, old_id.address
+ old_id.destroy
+ id.destroy
+ user.destroy
+ end
+
+end
diff --git a/users/test/unit/identity_test.rb b/users/test/unit/identity_test.rb
index 472bc52..fa88315 100644
--- a/users/test/unit/identity_test.rb
+++ b/users/test/unit/identity_test.rb
@@ -7,9 +7,6 @@ class IdentityTest < ActiveSupport::TestCase
@user = find_record :user
end
- teardown do
- end
-
test "initial identity for a user" do
id = Identity.for(@user)
assert_equal @user.email_address, id.address
@@ -36,7 +33,6 @@ class IdentityTest < ActiveSupport::TestCase
assert_equal LocalEmail.new(alias_name), id.address
assert_equal Email.new(forward_address), id.destination
assert_equal @user, id.user
- id.save
end
test "prevents duplicates" do
@@ -44,6 +40,7 @@ class IdentityTest < ActiveSupport::TestCase
dup = Identity.build_for @user, address: alias_name, destination: forward_address
assert !dup.valid?
assert_equal ["This alias already exists"], dup.errors[:base]
+ id.destroy
end
test "validates availability" do
@@ -52,6 +49,7 @@ class IdentityTest < ActiveSupport::TestCase
taken = Identity.build_for other_user, address: alias_name
assert !taken.valid?
assert_equal ["This email has already been taken"], taken.errors[:base]
+ id.destroy
end
test "setting and getting pgp key" do
@@ -69,6 +67,7 @@ class IdentityTest < ActiveSupport::TestCase
assert result = view.rows.first
assert_equal id.address, result["key"]
assert_equal id.keys[:pgp], result["value"]
+ id.destroy
end
def alias_name
diff --git a/users/test/unit/user_test.rb b/users/test/unit/user_test.rb
index 8efb0bd..c797623 100644
--- a/users/test/unit/user_test.rb
+++ b/users/test/unit/user_test.rb
@@ -50,8 +50,8 @@ class UserTest < ActiveSupport::TestCase
other_user = FactoryGirl.create :user
id = Identity.create_for other_user, address: @user.login
assert !@user.valid?
- other_user.destroy
id.destroy
+ other_user.destroy
end
test "deprecated public key api still works" do