1 ;;; augment.el --- Display metadata about code
3 ;; Copyright (C) 2007 Phil Hagelberg
5 ;; Author: Phil Hagelberg <technomancy@gmail.com>
6 ;; Created: 19 Oct 2007
8 ;; Keywords: augment testing metadata
10 ;; This file is part of the Augment system:
11 ;; http://augment.rubyforge.org
13 (require 'elunit
) ;; See http://www.emacswiki.org/cgi-bin/wiki/ElUnit
17 ;; in case it hasn't been properly installed
18 (add-to-list 'exec-path
(expand-file-name "../bin"))
21 (defsuite augment-suite nil
)
23 (deftest layer-from-plist augment-suite
24 "The layer struct should populated from a plist."
25 (let ((layer (augment-layer-from-plist (list :message
"message" :color
"color"
26 :range
"221...226"))))
27 (assert-equal 221 (layer-begin layer
))
28 (assert-equal 226 (layer-end layer
))
29 (assert-equal "color" (layer-color layer
))
30 (assert-equal "message" (layer-message layer
))))
32 (deftest augment-file-path augment-suite
33 (assert-equal "/foo/bar/.augment/baz.rb" (augment-file-path "/foo/bar/baz.rb")))
35 (deftest render-layers augment-suite
36 "Rendering layers should create overlays in a buffer."
38 ;; Fill the buffer with some garbage
39 (dotimes (i 5) (insert "hello world.\n"))
40 (augment-render-layer (augment-layer-from-plist (list :message
"hello"
46 (deftest layer-message augment-suite
47 "Finding message at point should get the message of the layer the point is in."
48 (let* ((json-object-type 'plist
)
49 (json-array-type 'list
)
50 (layers (mapcar #'augment-layer-from-plist
51 (json-read-file "fixtures/layers.json"))))
52 (assert-equal "cons" (augment-show-message 5))
53 (assert-equal "car" (augment-show-message 16))
54 (assert-equal "cdr" (augment-show-message 29))))
56 (deftest augment-filter augment-suite
58 (make-local-variable 'layers
)
59 (dotimes (i 3) (insert "hello world\n"))
60 (augment-filter nil
(flymake-read-file-to-string "fixtures/augment-output.txt"))
63 (elunit "augment-suite")