Sha256: 98eb69479205b37003f8f075dc1caceff1444dc73f958d841439d5489b8d7515

Contents?: true

Size: 877 Bytes

Versions: 131

Compression:

Stored size: 877 Bytes

Contents

#lang racket/base

(require "collatz-conjecture.rkt")

(module+ test
  (require rackunit rackunit/text-ui)

  (define suite
    (test-suite
     "collatz-conjecture tests"

     (test-eqv? "zero steps for one"
                (collatz 1)
                0)
     (test-eqv? "divide if even"
                (collatz 16)
                4)
     (test-eqv? "even and odd steps"
                (collatz 12)
                9)
     (test-eqv? "Large number of even and odd steps"
                (collatz 1000000)
                152)
     (test-exn "zero is an error"
               exn:fail?
               (lambda () (collatz 0)))
     (test-exn "negative value is an error"
               exn:fail?
               (lambda () (collatz -15)))
     (test-exn "non exact value is an error"
               exn:fail?
               (lambda () (collatz 3.4)))))

  (run-tests suite))

Version data entries

131 entries across 131 versions & 1 rubygems

Version Path
trackler-2.2.1.180 tracks/racket/exercises/collatz-conjecture/collatz-conjecture-test.rkt
trackler-2.2.1.179 tracks/racket/exercises/collatz-conjecture/collatz-conjecture-test.rkt
trackler-2.2.1.178 tracks/racket/exercises/collatz-conjecture/collatz-conjecture-test.rkt
trackler-2.2.1.177 tracks/racket/exercises/collatz-conjecture/collatz-conjecture-test.rkt
trackler-2.2.1.176 tracks/racket/exercises/collatz-conjecture/collatz-conjecture-test.rkt
trackler-2.2.1.175 tracks/racket/exercises/collatz-conjecture/collatz-conjecture-test.rkt
trackler-2.2.1.174 tracks/racket/exercises/collatz-conjecture/collatz-conjecture-test.rkt
trackler-2.2.1.173 tracks/racket/exercises/collatz-conjecture/collatz-conjecture-test.rkt
trackler-2.2.1.172 tracks/racket/exercises/collatz-conjecture/collatz-conjecture-test.rkt
trackler-2.2.1.171 tracks/racket/exercises/collatz-conjecture/collatz-conjecture-test.rkt
trackler-2.2.1.170 tracks/racket/exercises/collatz-conjecture/collatz-conjecture-test.rkt
trackler-2.2.1.169 tracks/racket/exercises/collatz-conjecture/collatz-conjecture-test.rkt
trackler-2.2.1.167 tracks/racket/exercises/collatz-conjecture/collatz-conjecture-test.rkt
trackler-2.2.1.166 tracks/racket/exercises/collatz-conjecture/collatz-conjecture-test.rkt
trackler-2.2.1.165 tracks/racket/exercises/collatz-conjecture/collatz-conjecture-test.rkt
trackler-2.2.1.164 tracks/racket/exercises/collatz-conjecture/collatz-conjecture-test.rkt
trackler-2.2.1.163 tracks/racket/exercises/collatz-conjecture/collatz-conjecture-test.rkt
trackler-2.2.1.162 tracks/racket/exercises/collatz-conjecture/collatz-conjecture-test.rkt
trackler-2.2.1.161 tracks/racket/exercises/collatz-conjecture/collatz-conjecture-test.rkt
trackler-2.2.1.160 tracks/racket/exercises/collatz-conjecture/collatz-conjecture-test.rkt