You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

index.js 1.5KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. var ConsoleStream = require("../index")
  2. var console = require("console")
  3. var test = require("tape")
  4. test("console stream", function (assert) {
  5. var stream = ConsoleStream()
  6. assert.ok(stream.write)
  7. assert.ok(stream.end)
  8. assert.ok(stream.destroy)
  9. assert.end()
  10. })
  11. test("console stream destroy", function (assert) {
  12. var stream = ConsoleStream()
  13. stream.once("close", function () {
  14. assert.ok(true)
  15. assert.end()
  16. })
  17. stream.destroy()
  18. })
  19. test("console stream end", function (assert) {
  20. var old = console.log
  21. console.log = intercept
  22. var closed = false
  23. var stream = ConsoleStream()
  24. var list = []
  25. stream.once("close", function () {
  26. closed = true
  27. console.log = old
  28. assert.deepEqual(list, ["foo"])
  29. assert.equal(closed, true)
  30. assert.end()
  31. })
  32. stream.end("foo")
  33. function intercept(chunk) {
  34. list.push(chunk)
  35. // old.apply(this, arguments)
  36. }
  37. })
  38. test("console stream write", function (assert) {
  39. var old = console.log
  40. console.log = intercept
  41. var list = []
  42. var stream = ConsoleStream()
  43. stream.write("one")
  44. stream.write("two")
  45. stream.write("three")
  46. stream.write("four\n")
  47. stream.write("five\na")
  48. stream.write("bar")
  49. stream.end()
  50. console.log = old
  51. assert.deepEqual(list, [
  52. "onetwothreefour"
  53. , "five"
  54. , "abar"
  55. ])
  56. assert.end()
  57. function intercept(chunk) {
  58. list.push(chunk)
  59. // old.apply(this, arguments)
  60. }
  61. })