anchor.diff:  		<cfargument name="str" type="string" required="true" hint="test name to clean up">
   		<cfreturn trim(rereplacenocase(removechars(arguments.str, 1, 4), "_|-", " ", "all"))>
   	</cffunction>
  -	
  +
   	<cffunction name="$cleanTestPath" returntype="string" output="false" hint="cleans up the test name so they are more readable">
   		<cfargument name="str" type="string" required="true" hint="test name to clean up">
   		<cfreturn listchangedelims(replace(arguments.str, variables.ROOT_TEST_PATH, ""), ".", ".")>
  
positive.code: 	<cffunction name="halt" returntype="Any" output="false" hint="used to dump an expression and halt testing. Useful when you want to see what an expression will output first so you can write tests for it.">
  		<cfargument name="halt" type="boolean" required="true" hint="should we halt. true will halt and dump output. false will just return so tests can continue">
  		<cfargument name="expression" type="string" required="true" hint="the expression you want to see output for">
  
  		<cfif not arguments.halt>
  			<cfreturn>
  		</cfif>
  
  		<cfdump var="#evaluate(arguments.expression)#"><cfabort>
  	</cffunction>
  	
  	<cffunction name="raised" returntype="string" output="false" hint="catches an raised error and returns the error type. great if you want to test that a certain exception will be raised.">
  		<cfargument type="string" name="expression" required="true">
  		<cftry>
  
negative.code: 			<cfif (left(key, 4) eq "test" and isCustomFunction(this[key])) and (!len(arguments.testname) or (len(arguments.testname) and arguments.testname eq key))>
  
  				<cftry>
  
  					<cfset time = getTickCount()>
  
  					<cfset loc = duplicate(global)>
  