检查期待功能

时间:2013-03-20 03:33:20

标签: scheme racket

;; snoc : X [Listof Any] -> [Listof Any]
;; Adds the X to the end of the list
(define (snoc x l)
  (cond [(empty? l) (cons x empty)]
        [else (cons (first l)
                    (snoc x (rest l)))]))

如上所述,它只是在列表的末尾添加一个X.你会如何为此编写一个简单的check-expect函数?

1 个答案:

答案 0 :(得分:1)

我会测试明显的案例,例如:

  1. 如果我们将一个元素添加到空列表会怎样?
  2. 如果我们将一个元素添加到包含一个元素的列表中会发生什么?
  3. 如果我们将一个元素添加到包含两个元素的列表中会发生什么?
  4. 等等。例如,第一个测试看起来像这样:

    (check-expect (snoc 1 '()) '(1))