   # Returns a string
   text: (selector, context)->
     if @document.documentElement
-      return @queryAll(selector, context).map((e)-> e.textContent).join("").trim().replace(/\s+/g, " ")
+      return @queryAll(selector || "html", context)
+        .map((e)-> e.textContent)
+        .join("").trim().replace(/\s+/g, " ")
     else if @source
       return @source.toString()
     else

  # Returns a string
  html: (selector, context)->
    if @document.documentElement
      return @queryAll(selector, context).map((e)-> e.outerHTML.trim()).join("")
    else if @source
      return @source.toString()
    else

EventLoop         = require("./eventloop")
{ format }        = require("util")
File              = require("fs")
HTML5             = require("html5")
Interact          = require("./interact")
HTML              = require("jsdom").dom.level3.html
Mime              = require("mime")
