"
"Result in UNUSED should be all upper case: REsULT")
+
+(deffailure-var-test
+ "Blank line - after value type"
+ "*UNUSED*
+
+VALUE TYPE:
+ generalized boolean
+
+INITIAL VALUE:
+
+ NIL
+
+DESCRIPTION:
+
+"
+ "Expected blank line after: VALUE TYPE:")
+
+(deffailure-var-test
+ "Blank line - after description"
+ "*UNUSED*
+
+VALUE TYPE:
+
+ generalized boolean
+
+INITIAL VALUE:
+
+ NIL
+
+DESCRIPTION:
+ Fail here
+
+"
+ "Expected blank line after: DESCRIPTION:")
+
+(deffailure-var-test
+ "Blank line - after examples"
+ "*UNUSED*
+
+VALUE TYPE:
+
+ generalized boolean
+
+INITIAL VALUE:
+
+ NIL
+
+DESCRIPTION:
+
+ Fail here
+
+EXAMPLES:
+ Fail here
+
+"
+ "Expected blank line after: EXAMPLES:")
+
+(deffailure-var-test
+ "Blank line - after header"
+ "*UNUSED*
+ Fail here
+"
+ "Expected blank line after: *UNUSED*")
+
+(deffailure-var-test
+ "Two spaces - beginning of value type"
+ "*UNUSED*
+
+VALUE TYPE:
+
+ a generalized boolean
+"
+ "Got unexpected line, requires blank lines or start with two spaces: \" a generalized boolean\"")
+
+(deffailure-var-test
+ "Two spaces - beginning of initial value"
+ "*UNUSED*
+
+VALUE TYPE:
+
+ a generalized boolean
+
+INITIAL VALUE:
+
+ RESULT: fail here
+"
+ "Got unexpected line, requires blank lines or start with two spaces: \" RESULT: fail here\"")
+
+(deffailure-var-test
+ "Two spaces - in description"
+ "*UNUSED*
+
+VALUE TYPE:
+
+ a generalized boolean
+
+INITIAL VALUE:
+
+ RESULT: a result
+
+DESCRIPTION:
+
+ This is a description
+
+ About some
+ things"
+ "Got unexpected line, requires blank lines or start with two spaces: \" things\"")
+
+(deffailure-var-test
+ "Two spaces - in examples"
+ "*UNUSED*
+
+VALUE TYPE:
+
+ a generalized boolean
+
+INITIAL VALUE:
+
+ RESULT: a result
+
+DESCRIPTION:
+
+ This is a description
+
+EXAMPLES:
+
+ (example1) => (yo)
+ (example2) => (yoyo)"
+ "Example line does not match \" example => result\": (example2) => (yoyo)")
+
+(deffailure-var-test
+ "Two spaces - in examples"
+ "*UNUSED*
+
+VALUE TYPE:
+
+ a generalized boolean
+
+INITIAL VALUE:
+
+ RESULT: a result
+
+DESCRIPTION:
+
+ This is a description
+
+EXAMPLES:
+
+ (example1) => (yo)
+ (example2) => (yoyo)"
+ "Example line does not match \" example => result\": (example2) => (yoyo)")
+
+(deffailure-var-test
+ "Description - ends with empty line when last thing"
+ "*UNUSED*
+
+VALUE TYPE:
+
+ a generalized boolean
+
+INITIAL VALUE:
+
+ NIL
+
+DESCRIPTION:
+
+ Hello world
+
+"
+ "Can't end with empty line")
+
+(deffailure-var-test
+ "Description - malformed line"
+ "*UNUSED*
+
+VALUE TYPE:
+
+ a generalized boolean
+
+INITIAL VALUE:
+
+ NIL
+
+DESCRIPTION:
+
+ A mistake"
+ "Got unexpected line, requires blank lines or start with two spaces: \" A mistake\"")
+
+(deffailure-var-test
+ "Description - section doesn't start with description"
+ "*UNUSED*
+
+VALUE TYPE:
+
+ a generalized boolean
+
+INITIAL VALUE:
+
+ NIL
+
+DESCRIPTAION:
+
+"
+ "Got unexpected line, requires blank lines or start with two spaces: \"DESCRIPTAION:\"")
+
+(deffailure-var-test
+ "Examples - doesn't have arrow"
+ "*UNUSED*
+
+VALUE TYPE:
+
+ a generalized boolean
+
+INITIAL VALUE:
+
+ NIL
+
+DESCRIPTION:
+
+ This is a mock description.
+
+EXAMPLES:
+
+ *unused* - :success
+"
+ "Example line does not match \" example => result\": *unused* - :success")
+
+(deffailure-var-test
+ "Examples - doesn't start with EXAMPLES"
+ "*UNUSED*
+
+VALUE TYPE:
+
+ a generalized boolean
+
+INITIAL VALUE:
+
+ NIL
+
+DESCRIPTION:
+
+ This is a mock description.
+
+EXAAMPLES:
+
+ *unused* => :success"
+ "Got unexpected line, requires blank lines or start with two spaces: \"EXAAMPLES:\"")
+
+(deffailure-var-test
+ "Header - first line doesn't start with var-name (naturally all in upper case)"
+ "*UNUUSED*
+
+INITIAL VALUE:
+
+ RESULT: a pathname
+
+DESCRIPTION:
+
+"
+ "First line of *UNUSED* did not match: *UNUSED*, *UNUUSED*")
+
+(deffailure-var-test
+ "General - No value type"
+ "*UNUSED*
+
+INITIAL VALUE:
+
+ NIL
+
+DESCRIPTAION:
+
+"
+ "Expected VALUE TYPE: instead of: INITIAL VALUE:")
+
+(deffailure-var-test
+ "General - No initial value"
+ "*UNUSED*
+
+VALUE TYPE:
+
+ a generalized boolean
+
+DESCRIPTION:
+
+"
+ "Got unexpected line, requires blank lines or start with two spaces: \"DESCRIPTION:\"")
+
+(deffailure-var-test
+ "General - Ends early"
+ "*UNUSED*
+
+VALUE TYPE:
+
+ a generalized boolean"
+ "Got unexpected line, requires blank lines or start with two spaces: NIL")