 	, options
 
 	if type in ['describe', 'it']
-		if args.length == 1
-			args[1] = args[0]
+
+		[title, cb] = args_wash args
+
+		if args.length == 1  # allow blank label
 			label = ''
-
-		label = label.replace('%s', args[0])
-		cb = args[1]
+		else
+			label = label.replace('%s', title)
 
 		if options.pending
 			if cb.toString() == (->).toString()  # If Blank

	return


dic = (type, label, args, options={})->  # Dictate to describe() or it()

	options = _.extend

	dic 'describe', "\n    Scenario: %s".green, arguments


gwt = (label, args)->
	[title, cb] = args_wash args

	###
	#log 'gwt', title, cb.length
	unless cb.length >= 1
		callback = (done)->
			cb()
			done()
	else
		callback = cb
	###

	dic 'it', label, [title,cb], padding:true,pending:true

exports.Given = ->
	gwt "Given:".yellow+" %s", arguments

exports.When = ->
	gwt " When:".yellow+" %s", arguments

exports.Then = ->
	gwt " Then:".yellow+" %s", arguments

exports.Given_ = ->
	dic 'describe', " Given:".yellow+" %s", arguments, padding:true
