Add ability to specify first line copyright notices
[wolf] / src / test / main.lisp
index e1176db52f48abf516acdb8a0e79039a73e06b47..a63e2f8f2a3a386e13698ea3cbe0cb0ef181f97a 100644 (file)
@@ -2,13 +2,13 @@
 
 (defvar *tests* nil)
 
-(defmacro deftest (filename success &optional msg line-no col-no)
+(defmacro deftest (filename success &optional msg line-no col-no copyright-notice)
  `(push
    (lambda ()
     (let
      ((green (format nil "~c[1;32m" #\Esc))
       (red (format nil "~c[1;31m" #\Esc))
-      (result (wolf:check-file ,filename)))
+      (result (wolf:check-file ,filename :copyright-notice ,copyright-notice)))
      (cond
       ((not (eql ,success (car result)))
        (format t "~A- ~A failed, expected ~A and got ~A~c[0m~%"
@@ -55,3 +55,6 @@
 (deftest #P"resources/unspacedforms.lisp" :failure "Multiline top level forms must be separated by a space" 4 0)
 (deftest #P"resources/whitespaceendline.lisp" :failure "No whitespace at end of line" 4 106)
 (deftest #P"resources/whitespacelines.lisp" :failure "No whitespace only lines" 1 1)
+(deftest #P"resources/copyrightnotice.lisp" :success nil nil nil "; Copyright XXXX AGPL")
+(deftest #P"resources/copyrightnotice.lisp" :failure "Must begin with in-package form" 0 0)
+(deftest #P"resources/package.lisp" :failure "Must begin with specified copyright notice" 0 0 "; Copyright XXXX AGPL")