Advertisement
Guest User

user_test.rb

a guest
Jul 30th, 2015
236
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Rails 1.82 KB | None | 0 0
  1. require 'test_helper'
  2.  
  3.  
  4.  
  5. class UserTest < ActiveSupport::TestCase
  6.  
  7.  
  8.  
  9.   def setup
  10.  
  11.     @user = User.new(name: "Example User", email: "user@example.com")
  12.  
  13.   end
  14.  
  15.  
  16.  
  17.   test "should be valid" do
  18.  
  19.     assert @user.valid?
  20.  
  21.   end
  22.  
  23.  
  24.  
  25.   test "name should be present" do
  26.  
  27.     @user.name = " "
  28.  
  29.     assert_not @user.valid?
  30.  
  31.   end
  32.  
  33.  
  34.  
  35.   test "email should be present" do
  36.  
  37.     @user.email = " "
  38.  
  39.     assert_not @user.valid?
  40.  
  41.   end
  42.  
  43.  
  44.  
  45.   test "name should not be too long" do
  46.  
  47.     @user.name = "a" * 51
  48.  
  49.     assert_not @user.valid?
  50.  
  51.   end
  52.  
  53.  
  54.  
  55.   test "email should not be too long" do
  56.  
  57.     @user.email = "a" * 244 + "@example.com"
  58.  
  59.     assert_not @user.valid?
  60.  
  61.   end
  62.  
  63.  
  64.  
  65.   test "email validation should accept valid addresses" do
  66.  
  67.     valid_addresses = %w[user@example.com USER@foo.COM A_US-ER@foo.bar.org
  68.  
  69.                       first.last@foo.jp alice+bob@baz.cn]
  70.  
  71.     valid_addresses.each do |valid_address|
  72.  
  73.       @user.email = valid_address
  74.  
  75.       assert @user.valid?, "#{valid_address.inspect} should be valid"
  76.  
  77.     end
  78.  
  79.   end
  80.  
  81.  
  82.  
  83.   test "email validation should reject invalid addresses" do
  84.  
  85.     invalid_addresses = %w[user@example,com user_at_foo.org user.name@example.
  86.  
  87.                         foo@bar_baz.com foo@bar+baz.com]
  88.  
  89.     invalid_addresses.each do |invalid_address|
  90.  
  91.       @user.email = invalid_address
  92.  
  93.       assert_not @user.valid?, "#{invalid_address.inspect} should be invalid"
  94.  
  95.     end
  96.  
  97.   end
  98.  
  99.  
  100.  
  101.   # test "email addresses should be unique" do
  102.  
  103.   #   duplicate_user = @user.dup
  104.  
  105.   #   @user.save
  106.  
  107.   #   assert_not duplicate_user.valid?
  108.  
  109.   # end
  110.  
  111.  
  112.  
  113.   test "email addresses should be unique" do
  114.  
  115.     duplicate_user = @user.dup
  116.  
  117.     duplicate_user.email = @user.email.upcase
  118.  
  119.     @user.save
  120.  
  121.     assert_not duplicate_user.valid?
  122.  
  123.   end
  124.  
  125. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement