 	[attr-map body] (get-arg map? decl)
 	children (vec body)
 	docstring (strcat (when sym (resolve sym)) doc)
-	metadata (merge (meta &form) {:doc docstring} attr-map)]
+	metadata (merged-metadata &form docstring attr-map)]
     `(def-unless-nested (test-group ~children ~metadata))))
 
 (defmacro given [& decl]

	[attr-map decl] (get-arg map? decl)
	[bindings body] (get-arg vector? decl)
	children (vec body)
	metadata (merge (meta &form) {:doc doc} attr-map)]
    (assert (vector? bindings))
    (assert (even? (count bindings)))
    (let [binding-forms (firsts bindings)

  (let [[sym decl] (get-arg symbol? decl)
	[doc decl] (get-arg string? decl)
	[attr-map body] (get-arg map? decl)
	metadata (merged-metadata &form doc attr-map)]
    `(def-unless-nested
       (test-case ~(find-locals &env)
		  (fn ~(find-local-binding-forms &env) ~@body) ~metadata))))
