summaryrefslogtreecommitdiff
path: root/users/test/unit
diff options
context:
space:
mode:
authorAzul <azul@leap.se>2012-12-13 16:01:59 +0100
committerAzul <azul@leap.se>2012-12-13 16:01:59 +0100
commit9762a37ab932ee1a94e973977520c7f4673d78b1 (patch)
tree2aa6eb4e27cd9b7cc4651c2c6465be10bcfc422b /users/test/unit
parent6ff4bd80e0394260c8cd300cfb051451fc7e358f (diff)
refactor: allow adding email aliases directly
Diffstat (limited to 'users/test/unit')
-rw-r--r--users/test/unit/email_aliases_test.rb26
1 files changed, 15 insertions, 11 deletions
diff --git a/users/test/unit/email_aliases_test.rb b/users/test/unit/email_aliases_test.rb
index cec0c0b..3c731e1 100644
--- a/users/test/unit/email_aliases_test.rb
+++ b/users/test/unit/email_aliases_test.rb
@@ -12,7 +12,7 @@ class EmailAliasTest < ActiveSupport::TestCase
assert_equal [], @user.email_aliases
end
- test "adding email alias" do
+ test "adding email alias through params" do
email_alias = "valid_alias@domain.net"
@user.attributes = {:email_aliases_attributes => {"0" => {:email => email_alias}}}
assert @user.changed?
@@ -20,31 +20,35 @@ class EmailAliasTest < ActiveSupport::TestCase
assert_equal email_alias, @user.email_aliases.first.to_s
end
+ test "adding email alias directly" do
+ email_alias = "valid_alias@domain.net"
+ @user.add_email(email_alias)
+ assert @user.changed?
+ assert @user.save
+ assert_equal email_alias, @user.reload.email_aliases.first.to_s
+ end
+
test "duplicated email aliases are invalid" do
email_alias = "valid_alias@domain.net"
- email_aliases = {
- "0" => {:email => email_alias},
- "1" => {:email => email_alias}
- }
- @user.attributes = {:email_aliases_attributes => email_aliases}
+ @user.add_email(email_alias)
@user.save
- # add some more
- @user.attributes = {:email_aliases_attributes => email_aliases}
+ # add again
+ @user.add_email(email_alias)
assert @user.changed?
assert !@user.valid?
end
test "email is invalid as email alias" do
email_alias = "valid_alias@domain.net"
- email_aliases = { "0" => {:email => email_alias} }
- @user.attributes = {:email_aliases_attributes => email_aliases, :email => email_alias}
+ @user.email = email_alias
+ @user.add_email(email_alias)
assert @user.changed?
assert !@user.valid?
end
test "find user by email alias" do
email_alias = "valid_alias@domain.net"
- @user.attributes = {:email_aliases_attributes => {"0" => {:email => email_alias}}}
+ @user.add_email(email_alias)
assert @user.save
assert_equal @user, User.find_by_email_or_alias(email_alias)
assert_equal @user, User.find_by_email_alias(email_alias)