读取记录到 Deno 控制台的值
Read value logged to the console in Deno
如何读取记录到 Deno 控制台的值?我正在尝试编写一个测试来检查函数是否将正确的值记录到控制台。
我已经试过了,但它只能读取手动输入标准输入的值。 Getting values from Deno stdin
这更像是一种 hack,但在我的情况下有效
class BinarySearchTree<T> {
// ...
inOrderPrint() {
if (this.left) {
this.left.inOrderPrint();
}
console.log(this.value);
if (this.right) {
this.right.inOrderPrint();
}
}
// ...
}
test("BST: should print elements in order", () => {
let a = [];
const log = console.log;
console.log = x => {
a.push(x);
};
const bst = new BinarySearchTree<number>(1);
bst.insert(8);
bst.insert(5);
bst.insert(7);
bst.insert(6);
bst.insert(3);
bst.insert(4);
bst.insert(2);
bst.inOrderPrint();
console.log = log;
assertEquals(a.join(""), "12345678");
});
如何读取记录到 Deno 控制台的值?我正在尝试编写一个测试来检查函数是否将正确的值记录到控制台。
我已经试过了,但它只能读取手动输入标准输入的值。 Getting values from Deno stdin
这更像是一种 hack,但在我的情况下有效
class BinarySearchTree<T> {
// ...
inOrderPrint() {
if (this.left) {
this.left.inOrderPrint();
}
console.log(this.value);
if (this.right) {
this.right.inOrderPrint();
}
}
// ...
}
test("BST: should print elements in order", () => {
let a = [];
const log = console.log;
console.log = x => {
a.push(x);
};
const bst = new BinarySearchTree<number>(1);
bst.insert(8);
bst.insert(5);
bst.insert(7);
bst.insert(6);
bst.insert(3);
bst.insert(4);
bst.insert(2);
bst.inOrderPrint();
console.log = log;
assertEquals(a.join(""), "12345678");
});