function createTest( param, tag, requires, jsdocs, exampleOpts ) {
	var desc;
	var type;
	var tmpl;

	type = tag.type.expression.name;
	addRequire( requires, type );
	jsdocs.push( '* @param {'+type+'} [' + tag.name + '] - '+ tag.description );
	exampleOpts.push( '\''+param+'\': '+VALID_VALS[ type ] );
	desc = DESCRIPTIONS[ type ] || '{{TODO:desc}}';
	tmpl = CHECK;
	tmpl = replace( tmpl, '{{param}}', param );
	tmpl = replace( tmpl, '{{asserts}}', '!is'+capitalize( type )+'( opts.'+param+' )' );
	tmpl = replace( tmpl, '{{desc}}', desc );
	return tmpl;
}
Creates a test for a parameter of a given type.

@private
@param {string} param - parameter name
@param {Object} tag - JSDoc tag
@param {StringArray} requires - array of require statements
@param {StringArray} jsdocs - array of JSDoc annotations
@param {StringArray} exampleOpts - array of options in example code
@returns {string} generated test