Как я храню вывод в консоль в переменной в coffescript?

В Javascript способ это делать:

"use strict";
var log = console.log, logRecord = [];
console.log = input => {
  log(input);
  logRecord.push(input);
}

Но я хотел бы сделать то же самое в Coffeescript, чтобы сохранять печать в консоли в переменной и мочь сравнивать ее.

ОБНОВЛЕНИЕ:

class Solution
 constructor: ->
 main: (@args) ->
     console.log "Hello world!\n"  

log = console.log
logRecord = []
console.log = (input) ->
  log input
  logRecord.push input

greet = new Solution
greet.main("hola")

console.log logRecord
Test.expect(logRecord.indexOf("Hello World!\n") != -1)

ОБНОВЛЕНИЕ 1:

Для того, чтобы вышло что-то в моем logRecord, я должен скроллировать это так

class Solution
 constructor: ->
 main: (@args) ->
     console.log "Hello world!\n"  

log = console.log
logRecord = []
console.log = (input) ->
  log input
  logRecord.push input

greet = new Solution
console.log greet.main("hola")

console.log logRecord
Test.expect(logRecord.indexOf("Hello World!\n") != -1)

Вывод

Hello world!

['Hello world!']

Оцените is not what was expected

0
задан 09.04.2016, 21:53
1 ответ

Ты сделал бы это тем же способом, Coffeescript - только различный синтаксис, в фоне это язык сценариев JavaScript

log = console.log
logRecord = []
console.log = (input) ->
  log input
  logRecord.push input

Это плохое:

console.log logRecord

ты должен перемещать его сообщение, что ты захотел сохранять, а именно string

console.log greet.main("hola")
1
ответ дан 24.11.2019, 14:37
  • 1
    Добавь c и # 243; я говорю, что я завершаю в твой вопрос, чтобы видеть, что est и # 225; происходя. – Diego Torres 09.04.2016, 21:18
  • 2
    Готовая благосклонность проверять вопрос снова: $ – Ruslan López 09.04.2016, 21:21
  • 3
    Ты перемещал его array, где ты сохраняешь сообщения funci и # 243; n, ты должен перемещать его сообщение, которое ты хочешь сохранять. – Diego Torres 09.04.2016, 21:27
  • 4
    s и # 237;... я верю в то, что я equivoqu и # 233;... идея - imprimiren м и # 233; совсем объект и читать напечатанное в консоли, чтобы делать унитарное доказательство, но любой формы не удайся – Ruslan López 09.04.2016, 21:48
  • 5
    Унитарное доказательство не удается, потому что strings отличные, у одного есть " w" в min и # 250; scula и это у человека, имеющего отношение к тесту есть в мае и # 250; scula – Diego Torres 09.04.2016, 21:57