在 ruby 中断言 / assert_not

assert / assert_not in ruby

我们什么时候在 rails 测试中使用 assert 和 asert_not in ruby,to 之间有什么区别? 示例:

 test 'email should not be too long' do
    @user.email = 'a' * 244 + '@example.com'
    assert_not @user.valid?
  end

  test 'email validation should accept valid addresses' do
    valid_addresses = %w[user@example.com USER@foo.COM A_US-ER@foo.bar.org
                         first.last@foo.jp alice+bob@baz.cn]
    valid_addresses.each do |valid_address|
      @user.email = valid_address
      assert @user.valid?, "#{valid_address.inspect} should be valid"
    end
  end

当您希望结果为 false 时使用 assert_not

https://apidock.com/rails/ActiveSupport/Testing/Assertions/assert_not

如果您希望结果为 true,请使用 assert

https://docs.ruby-lang.org/en/2.1.0/Test/Unit/Assertions.html