aboutsummaryrefslogtreecommitdiff
path: root/src/clojure/contrib/test_clojure.clj
blob: 280c6a96ce1fefe99d27533543223f5ae7cb9248 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
;;  Copyright (c) Stephen C. Gilardi. All rights reserved.  The use and
;;  distribution terms for this software are covered by the Eclipse Public
;;  License 1.0 (http://opensource.org/licenses/eclipse-1.0.php) which can
;;  be found in the file epl-v10.html at the root of this distribution.  By
;;  using this software in any fashion, you are agreeing to be bound by the
;;  terms of this license.  You must not remove this notice, or any other,
;;  from this software.
;;
;;  clojure.contrib.test-clojure
;;
;;  Tests for the facilities provided by Clojure
;;
;;  scgilardi (gmail)
;;  Created 22 October 2008

(ns clojure.contrib.test-clojure
  (:use [clojure.contrib.test-is :only (run-tests)])
  (:gen-class))

(def test-names
     [:reader
      :printer
      :compilation
      :evaluation
      :special
      :macros
      :metadata
      :ns-libs
      :logic
      :predicates
      :control
      :data-structures
      :numbers
      :sequences
      :for
      :multimethods
      :other-functions
      :vars
      :refs
      :agents
      :atoms
      :parallel
      :java-interop
      ;; libraries
      :clojure-main
      :clojure-set
      :clojure-xml
      :clojure-zip
      ])

(def test-namespaces
     (map #(symbol (str "clojure.contrib.test-clojure." (name %)))
          test-names))

(defn run
  "Runs all defined tests"
  []
  (println "Loading tests...")
  (apply require :reload-all test-namespaces)
  (apply run-tests test-namespaces))

(defn -main
  "Run all defined tests from the command line"
  [& args]
  (run)
  (System/exit 0))