Forcing CFC Documentation with Unit Tests
Published on February 12, 2009
By Pete Freitag
By Pete Freitag
Here's a unit test I wrote today that makes sure every public CFC function has a hint attribute specified:
<cffunction name="testPublicFunctionHasHint"> <cfset var md = GetMetaData(variables.instance)> <cfset var i = 0> <cfset var f = ""> <cfif IsDefined("md.functions") AND ArrayLen(md.functions)> <cfloop from="1" to="#ArrayLen(md.functions)#" index="i"> <cfif NOT StructKeyExists(md.functions[i], "access") OR LCase(md.functions[i].access) IS "public"> <cfset assertTrue("Missing hint on function: #md.functions[i].name#", StructKeyExists(md.functions[i], "hint"))> </cfif> </cfloop> </cfif> </cffunction>
You might need to replace the variables.instance
with an instance of the component you are testing.
Forcing CFC Documentation with Unit Tests was first published on February 12, 2009.
The FuseGuard Web Application Firewall for ColdFusion & CFML is a high performance, customizable engine that blocks various attacks against your ColdFusion applications.