tdesign-mobile-vue
Version:
tdesign-mobile-vue
56 lines (53 loc) • 2.29 kB
JavaScript
/**
* tdesign v1.15.1
* (c) 2026 TDesign Group
* @license MIT
*/
import { a as afterEach, v as vi, d as describe, i as it, g as globalExpect } from '../../../../_chunks/dep-813af447.mjs';
import calcTextareaHeight from '../../../js/utils/calcTextareaHeight.mjs';
import '../../../../_chunks/dep-214f6ad4.mjs';
import '../../../../_chunks/dep-138f4d48.mjs';
import '../../../../_chunks/dep-742e9c83.mjs';
import '../../../../_chunks/dep-9ad74cca.mjs';
import '../../../../_chunks/dep-eb033f2c.mjs';
import '../../../../_chunks/dep-7dbd371d.mjs';
import '../../../../_chunks/dep-1295fc08.mjs';
import '../../../../_chunks/dep-a5927a65.mjs';
import '../../../../_chunks/dep-ccb9f40d.mjs';
import 'lodash-es';
import '../../../js/utils/helper.mjs';
afterEach(function () {
vi.restoreAllMocks();
document.body.innerHTML = "";
});
describe("calcTextareaHeight", function () {
it("removes hidden textarea after height calculation", function () {
var textarea = document.createElement("textarea");
textarea.value = "textarea content";
document.body.appendChild(textarea);
var result = calcTextareaHeight(textarea);
globalExpect(result.height).toBeDefined();
globalExpect(document.body.querySelectorAll("textarea")).toHaveLength(1);
});
it("removes hidden textarea after reentrant height calculations", function () {
var firstTextarea = document.createElement("textarea");
firstTextarea.value = "first textarea content";
document.body.appendChild(firstTextarea);
var secondTextarea = document.createElement("textarea");
secondTextarea.value = "second textarea content";
document.body.appendChild(secondTextarea);
var isReentered = false;
vi.spyOn(HTMLTextAreaElement.prototype, "scrollHeight", "get").mockImplementation(function mockScrollHeight() {
if (!isReentered && !this.isConnected) return 0;
if (!isReentered && this !== firstTextarea && this !== secondTextarea) {
isReentered = true;
calcTextareaHeight(secondTextarea);
}
return 20;
});
var result = calcTextareaHeight(firstTextarea);
globalExpect(result.height).toBeDefined();
globalExpect(document.body.querySelectorAll("textarea")).toHaveLength(2);
});
});
//# sourceMappingURL=calcTextareaHeight.test.mjs.map