【问题标题】:Define minimum and maximum length定义最小和最大长度
【发布时间】:2018-12-11 17:10:22
【问题描述】:

如何定义生成的用户登录的最小和最大长度

FFaker::InternetSE.login_user_name

二手宝石FFaker

【问题讨论】:

  • 它是纯 Ruby。您使用的是固定装置还是工厂?
  • 我正在使用工厂
  • 在黑暗中击球。试试FFaker::InternetSE.login_user_name(8..20)。最小长度:8 和最大长度:20。
  • 你可以试试FFaker::InternetSE.login_user_name[minimum_length, maximum_length]。如果你不止一次需要它,你可以使用瞬态。
  • @JagdeepSingh FFaker::InternetSE.login_user_name(8..20) ArgumentError: wrong number of arguments (given 1, expected 0)

标签: ruby rspec faker


【解决方案1】:

你可以存储FFaker::InternetSE.login_user_name的结果,并检查生成的字符串的大小是否在你需要的最小和最大长度之间,如果是,则返回,否则再次调用该函数:

require 'ffaker'

def login_user_name(min, max)
  raise 'max can not be minor than min' if min > max
  username = FFaker::InternetSE.login_user_name
  username.size.between?(min, max) ? username : login_user_name(min, max)
end

p login_user_name(8, 9) # christian
p login_user_name(9, 8) # `login_user_name': max can not be minor than min (RuntimeError)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-02-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多