1

这是等待测试的代码,似乎是鸡蛋问题。

def generate_number
  number = Array.new(8){rand(10)}.join
  return number unless Book.exists?(:number => number)
  generate_number
end

在方法中添加一个变量将很容易处理这个问题,但我认为可能有更好的方法来解决这个问题。

4

1 回答 1

0

您的方法返回一个随机字符串,因此您无法测试显式返回值。你可以测试的是:

  1. 该方法返回一个由 8 位数字组成的字符串
  2. 该方法返回的字符串不是任何现有书籍的编号
于 2012-08-01T10:56:19.047 回答