/*
|
* @author Hong-Phuc Bui
|
* @filename DomIO-test
|
* Initial Date 16.12.19
|
*/
|
|
|
import "../../node_modules/qunit/qunit/qunit.css";
|
import "../../src/lib/dom-output.css";
|
|
|
import { QUnit } from "qunit";
|
import {DomOutput} from "../../src/lib/DomIO.js";
|
|
|
QUnit.test("print string", (assert) => {
|
let elementId = "string-output";
|
let terminal = new DomOutput(elementId);
|
let testText = "test print string";
|
terminal.printl(testText);
|
let printedText = document.getElementById(elementId).innerText;
|
assert.ok(printedText.trim() === testText, `${printedText} === ${testText}`);
|
});
|
|
|
QUnit.test("print number", (assert) => {
|
let elementId = "number-output";
|
let terminal = new DomOutput(elementId);
|
let testText = 12;
|
terminal.printl(testText);
|
let printedText = document.getElementById(elementId).innerText;
|
assert.ok(printedText.trim() === String(testText), `${printedText} === ${testText}`);
|
});
|
|
QUnit.test("print array", (assert) => {
|
let elementId = "array-output";
|
let terminal = new DomOutput(elementId);
|
let testText = [1, 2, 3];
|
terminal.printl(testText);
|
let printedText = document.getElementById(elementId).innerText;
|
assert.ok(printedText.trim().indexOf("[") === 0, `print [ for array object`);
|
assert.ok(printedText.trim().indexOf("]") > 1, `print ] for array object`);
|
});
|
|
QUnit.test("print object", (assert) => {
|
let elementId = "object-output";
|
let terminal = new DomOutput(elementId);
|
let testText = {a: 1, b: 2, c: 3};
|
terminal.printl(testText);
|
let printedText = document.getElementById(elementId).innerText;
|
assert.ok(printedText.trim().indexOf("{") === 0, `print [ for literal object`);
|
assert.ok(printedText.trim().indexOf("}") > 1, `print ] for literal object`);
|
});
|
|
QUnit.test("clear() removes all printed objects", (assert) => {
|
let elementId = "output-cleanup";
|
let terminal = new DomOutput(elementId);
|
let testText = {a: 1, b: 2, c: 3};
|
terminal.printl(testText);
|
let printedText = document.getElementById(elementId).innerText;
|
assert.ok(printedText.trim().length > 0, `print something`);
|
terminal.clear();
|
printedText = document.getElementById(elementId).innerText;
|
assert.ok(printedText.trim().length === 0, `cleanup terminal`);
|
});
|