           "#{p1}var _#{p2}_ = new (#{ContextFactory.toString().replace(/(\s*){1}.*/g, factoryReplacer)})('#{p2}');\n" +
           match.replace(p2, "_#{p2}_")
 
+        describeReplacer = (match, p1)->
+          match.replace(p1, "_#{p1}_") if p1?
+
         pushToResult = ->
           joined_line = line.join('')
-          joined_line = joined_line.replace(/(\s*)(\w*)\.is\(.*/g, mainReplacer) if not inDescribe?
+          joined_line = joined_line.replace(/(\s*)(\w*)\.is\(.*/g, mainReplacer)
+          joined_line = joined_line.replace(/.*(describe)\(.*/g, describeReplacer)
           result_string.push(joined_line) and clearLine()
 
         {

      # console.log res.toString()
      # res
      # console.log Result.result()
      eval "(#{Result.result()});"

    @run = ->
      @prepareCallback().call Context.get()

    this

      endOfLine      =
      endMatched     =
      inCallback     =
      inDSLParams    =
      beginMatched   =
      inParenthesis  =
