anchor.diff:  (in-package #:cl-junit-xml)
   
   ;;; "cl-junit-xml" goes here. Hacks and glory await!
  +
  +(defclass junit-xml ()
  +  ((testsuites :accessor testsuites :initarg :testsuites)))
  +
  +(defclass junit-testsuite ()
  +  ((testcases :accessor testcases :initarg :testcases)
  +   (name :reader name :initarg :name)
  +   (timestamp :reader timestamp :initarg :timestamp)))
  +
  +(defclass junit-testcase ()
  +  ((name :reader name :initarg :name)
  +   (duration :reader duration :initarg :duration)
  +   (class-name :reader class-name :initarg :class-name)
  +   (error-text :reader error-text :initarg :error-text)
  +   (failure-text :reader failure-text :initarg :failure-text)))
  +
   
   (defgeneric write-xml (junit-xml sink &key pretty-p)
     (:documentation "write the junit to the given sink (string, pathname, T, nil)")
  
positive.code:   (:method ((p junit-testsuite) (c junit-testcase))
      (push c (testcases p))
      c))
  
  (defclass junit-xml ()
    ((testsuites :accessor testsuites :initarg :testsuites)))
  
  (defclass junit-testsuite ()
    ((testcases :accessor testcases :initarg :testcases)
     (name :reader name :initarg :name)
     (timestamp :reader timestamp :initarg :timestamp)))
  
  (defclass junit-testcase ()
    ((name :reader name :initarg :name)
     (duration :reader duration :initarg :duration)
     (class-name :reader class-name :initarg :class-name)
     (error-text :reader error-text :initarg :error-text)
     (failure-text :reader failure-text :initarg :failure-text)))
  
negative.code:       (%write-xml junit-xml
                    (cxml:make-octet-stream-sink
                     stream :encoding :utf-8 :indentation (when pretty-p 2))))
      (truename sink))
    (:method (junit-xml (sink null) &key pretty-p)
      (with-output-to-string (s)
        (%write-xml junit-xml
  