text: // show that no match events happen while paused.
  var tap = require("tap")
  , child_process = require("child_process")
  // just some gnarly pattern with lots of matches
  , pattern = "test/a/!(symlink)/**"
  , bashResults = require("./bash-results.json")
  , patterns = Object.keys(bashResults)
  , glob = require("../")
  , Glob = glob.Glob
  , path = require("path")
  
  // run from the root of the project
  // this is usually where you're at anyway, but be sure.
  process.chdir(path.resolve(__dirname, ".."))
  
  function alphasort (a, b) {
    a = a.toLowerCase()
    b = b.toLowerCase()
    return a > b ? 1 : a < b ? -1 : 0
  }
  
  function cleanResults (m) {
    // normalize discrepancies in ordering, duplication,
    // and ending slashes.
    return m.map(function (m) {
      return m.replace(/\/+/g, "/").replace(/\/$/, "")
    }).sort(alphasort).reduce(function (set, f) {
      if (f !== set[set.length - 1]) set.push(f)
      return set
    }, []).sort(alphasort).map(function (f) {
      // de-windows
      return (process.platform !== 'win32') ? f
             : f.replace(/^[a-zA-Z]:\\\\/, '/').replace(/\\/g, '/')
    })
  }
  
  var globResults = []
  tap.test("use a Glob object, and pause/resume it", function (t) {
    var g = new Glob(pattern)
    , paused = false
    , res = []
    , expect = bashResults[pattern]
  
    g.on("pause", function () {
      console.error("pause")
    })
  
    g.on("resume", function () {
      console.error("resume")
    })
  
    g.on("match", function (m) {
      t.notOk(g.paused, "must not be paused")
      globResults.push(m)
      g.pause()
      t.ok(g.paused, "must be paused")
      setTimeout(g.resume.bind(g), 10)
    })
  
    g.on("end", function (matches) {
      t.pass("reached glob end")
      globResults = cleanResults(globResults)
      matches = cleanResults(matches)
      t.deepEqual(matches, globResults,
        "end event matches should be the same as match events")
  
      t.deepEqual(matches, expect,
        "glob matches should be the same as bash results")
  
      t.end()
    })
  })
  
  