@taiga-ui/testing 3.69.0 → 3.70.0-canary.e02fd1e
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/taiga-ui-testing-core.umd.js +1519 -1373
- package/bundles/taiga-ui-testing-core.umd.js.map +1 -1
- package/bundles/taiga-ui-testing-cypress.umd.js +152 -6
- package/bundles/taiga-ui-testing-cypress.umd.js.map +1 -1
- package/bundles/taiga-ui-testing-exceptions.umd.js +484 -338
- package/bundles/taiga-ui-testing-exceptions.umd.js.map +1 -1
- package/bundles/taiga-ui-testing-mocks.umd.js +503 -357
- package/bundles/taiga-ui-testing-mocks.umd.js.map +1 -1
- package/bundles/taiga-ui-testing-utils.umd.js +152 -6
- package/bundles/taiga-ui-testing-utils.umd.js.map +1 -1
- package/package.json +17 -17
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"taiga-ui-testing-utils.umd.js","sources":["../../../projects/testing/utils/keyboard-event.ts","../../../projects/testing/utils/active-element.ts","../../../node_modules/tslib/tslib.es6.js","../../../projects/testing/utils/configure-test-suite.ts","../../../projects/testing/utils/date.ts","../../../projects/testing/utils/helpers.ts","../../../projects/testing/utils/input/cleaner.unit-common.ts","../../../projects/testing/utils/input/filler.unit-common.ts","../../../projects/testing/utils/input/form-control-state.unit-common.ts","../../../projects/testing/utils/input/placeholder.unit-common.ts","../../../projects/testing/utils/input/tooltip.unit-common.ts","../../../projects/testing/utils/page-object.ts","../../../projects/testing/utils/replace-nbsp.ts","../../../projects/testing/utils/native-input.page-object.ts","../../../projects/testing/utils/viewport.ts","../../../projects/testing/utils/taiga-ui-testing-utils.ts"],"sourcesContent":["export function tuiCreateKeyboardEvent(\n key: string,\n eventType: string = 'keydown',\n): KeyboardEvent {\n const event = new KeyboardEvent(eventType, {bubbles: true});\n\n delete (event as any).target;\n Object.defineProperty(event, 'type', {value: eventType});\n\n delete (event as any).key;\n Object.defineProperty(event, 'key', {value: key});\n\n return event;\n}\n","import {ComponentFixture} from '@angular/core/testing';\n\nimport {tuiCreateKeyboardEvent} from './keyboard-event';\n\nexport function tuiDispatchOnActive<T>(key: string, fixture?: ComponentFixture<T>): void {\n document.activeElement?.dispatchEvent(tuiCreateKeyboardEvent(key, 'keydown'));\n\n fixture?.detectChanges();\n}\n\nexport function tuiActiveText(): string {\n return document.activeElement?.textContent?.trim() ?? '';\n}\n\nexport function tuiIsActive(element: Element): boolean {\n return document.activeElement === element;\n}\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || from);\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import {ComponentFixture, getTestBed, TestBed} from '@angular/core/testing';\n\n/** deprecated, will be removed in 4.0 */\nexport const configureTestSuite = (configureModule?: () => void): void => {\n const testBedApi = getTestBed();\n const originReset = TestBed.resetTestingModule;\n\n beforeAll(() => {\n TestBed.resetTestingModule();\n TestBed.resetTestingModule = () => TestBed;\n });\n\n // Custom hook\n if (configureModule) {\n beforeAll(async () => {\n configureModule();\n await TestBed.compileComponents();\n });\n }\n\n afterEach(() => {\n // @ts-ignore\n testBedApi._activeFixtures.forEach((fixture: ComponentFixture<unknown>) =>\n fixture.destroy(),\n );\n // reset ViewEngine TestBed\n // @ts-ignore\n testBedApi._instantiated = false;\n // reset Ivy TestBed\n // @ts-ignore\n testBedApi._testModuleRef = null;\n });\n\n afterAll(() => {\n TestBed.resetTestingModule = originReset;\n TestBed.resetTestingModule();\n });\n};\n","import {tuiIsNumber} from '@taiga-ui/cdk';\n\ndeclare const global: {Date: typeof Date};\n\nconst OriginalDate = global.Date;\n\nexport function tuiMockCurrentDate(dateOrNumber: Date | number): void {\n const date: Date = tuiIsNumber(dateOrNumber)\n ? new OriginalDate(dateOrNumber)\n : dateOrNumber;\n\n class MockDate extends OriginalDate {\n constructor() {\n super();\n\n return date;\n }\n }\n\n global.Date = MockDate as typeof Date;\n}\n\nexport function tuiRestoreRealDate(): void {\n global.Date = OriginalDate;\n}\n","import {\n BaseHarnessFilters,\n ComponentHarness,\n ComponentHarnessConstructor,\n ContentContainerComponentHarness,\n HarnessPredicate,\n} from '@angular/cdk/testing';\n\n/**\n * Decorator to add default static 'with' method.\n * Use in conjunction with {@link tuiHarnessWith} mixin.\n */\nexport function tuiWithPredicate<\n T extends ComponentHarnessConstructor<ComponentHarness> & {\n with: (options?: BaseHarnessFilters) => HarnessPredicate<ComponentHarness>;\n },\n>(original: T): T {\n original.with = (options: BaseHarnessFilters = {}) =>\n new HarnessPredicate(original, options);\n\n return original;\n}\n\n/**\n * Mixin to extend {@link ComponentHarness} and add typed\n * static 'with' method. Use {@link tuiWithPredicate} decorator\n * to monkey-patch default static 'with' method.\n */\nexport function tuiHarnessWith<T>(\n hostSelector: string,\n): ComponentHarnessConstructor<ComponentHarness> & {\n with: (options?: BaseHarnessFilters) => HarnessPredicate<ComponentHarness>;\n} {\n return class extends ComponentHarness {\n static hostSelector = hostSelector;\n\n // @ts-ignore\n static with(_options: BaseHarnessFilters = {}): HarnessPredicate<T> {\n throw new Error('Hummus');\n }\n } as unknown as ComponentHarnessConstructor<ComponentHarness> & {\n with: (options?: BaseHarnessFilters) => HarnessPredicate<ComponentHarness>;\n };\n}\n\nexport class TuiComponentHarness extends ComponentHarness {\n static with<T extends ComponentHarness>(\n this: ComponentHarnessConstructor<T>,\n options: BaseHarnessFilters,\n ): HarnessPredicate<T> {\n return new HarnessPredicate(this, options);\n }\n}\n\nexport class TuiContentContainerComponentHarness extends ContentContainerComponentHarness {\n static with<T extends ComponentHarness>(\n this: ComponentHarnessConstructor<T>,\n options: BaseHarnessFilters,\n ): HarnessPredicate<T> {\n return new HarnessPredicate(this, options);\n }\n}\n","/// <reference types=\"jest\" />\n\nimport {DebugElement} from '@angular/core';\nimport {ComponentFixture} from '@angular/core/testing';\nimport {FormControl} from '@angular/forms';\n\nimport {TuiNativeInputPO} from '../native-input.page-object';\nimport {TuiPageObject} from '../page-object';\n\ninterface TestParams {\n fixture: ComponentFixture<unknown>;\n inputPO: TuiNativeInputPO;\n pageObject: TuiPageObject<unknown>;\n prefix: string;\n testComponent: TestComponent;\n}\n\ninterface TestComponent {\n cleaner: boolean;\n control?: FormControl;\n disabled?: boolean;\n readOnly: boolean;\n value?: unknown;\n}\n\nexport function tuiTestCleaner(\n context: TestParams,\n setValue: any = 'value',\n clearValue: any = null,\n): void {\n let pageObject: TuiPageObject<unknown>;\n let fixture: ComponentFixture<unknown>;\n let testComponent: TestComponent;\n let inputPO: TuiNativeInputPO;\n\n describe('Cross for field cleaning', () => {\n beforeEach(() => {\n pageObject = context.pageObject;\n fixture = context.fixture;\n testComponent = context.testComponent;\n inputPO = context.inputPO;\n\n fixture.autoDetectChanges();\n });\n\n describe('Cross included', () => {\n beforeEach(() => {\n testComponent.cleaner = true;\n });\n\n it('If no value is specified, the cross is not shown', () => {\n updateValue(clearValue);\n\n fixture.detectChanges();\n\n expect(getCleaner()).toBeNull();\n });\n\n it('If the field is readonly, the cross is not shown', () => {\n updateValue(setValue);\n\n testComponent.readOnly = true;\n fixture.detectChanges();\n\n expect(getCleaner()).toBeNull();\n });\n\n it('If the field is disabled, the cross is not shown', () => {\n updateValue(setValue);\n\n if (testComponent.control) {\n testComponent.control.disable();\n }\n\n testComponent.disabled = true;\n fixture.detectChanges();\n\n expect(getCleaner()).toBeNull();\n });\n\n it('If a value is specified, a cross is shown', () => {\n updateValue(setValue);\n\n fixture.detectChanges();\n\n expect(getCleaner()).not.toBeNull();\n });\n\n it('When you click on the cross, the field value is cleared', () => {\n updateValue(setValue);\n\n fixture.detectChanges();\n\n getCleaner()!.nativeElement.click();\n fixture.detectChanges();\n\n expect(inputPO.value).toBe('');\n\n if (testComponent.control !== undefined) {\n expect(testComponent.control.value).toEqual(clearValue);\n }\n\n if (testComponent.value !== undefined) {\n expect(testComponent.value).toEqual(clearValue);\n }\n });\n });\n\n describe('Cross disabled', () => {\n it('The value is set, the cross is not shown', () => {\n updateValue(setValue);\n\n testComponent.cleaner = false;\n fixture.detectChanges();\n\n expect(getCleaner()).toBeNull();\n });\n });\n });\n\n function updateValue(value: unknown): void {\n if (testComponent.control) {\n testComponent.control.setValue(value);\n } else {\n testComponent.value = value;\n }\n }\n\n function getCleaner(): DebugElement | null {\n return pageObject.getByAutomationId(`${context.prefix}cleaner`);\n }\n}\n","import {DebugElement} from '@angular/core';\nimport {ComponentFixture} from '@angular/core/testing';\nimport {FormControl} from '@angular/forms';\n\nimport {TuiNativeInputPO} from '../native-input.page-object';\nimport {TuiPageObject} from '../page-object';\n\ninterface TestParams {\n fixture: ComponentFixture<unknown>;\n inputPO: TuiNativeInputPO;\n pageObject: TuiPageObject<unknown>;\n prefix: string;\n testComponent: TestComponent;\n}\n\ninterface TestComponent {\n control: FormControl;\n}\n\nexport function tuiTestFiller(\n context: TestParams,\n setValue: unknown = 'value',\n clearValue: unknown = null,\n): void {\n let pageObject: TuiPageObject<unknown>;\n let fixture: ComponentFixture<unknown>;\n let testComponent: TestComponent;\n let inputPO: TuiNativeInputPO;\n\n describe('Filler (mask)', () => {\n beforeEach(() => {\n pageObject = context.pageObject;\n fixture = context.fixture;\n testComponent = context.testComponent;\n inputPO = context.inputPO;\n\n fixture.detectChanges();\n });\n\n describe('if there is no value in the field', () => {\n beforeEach(() => {\n testComponent.control.setValue(clearValue);\n fixture.detectChanges();\n });\n\n it('not visible', () => {\n expect(getFiller()).toBeNull();\n });\n\n it('when focusing appears', async () => {\n inputPO.focus();\n fixture.detectChanges();\n await fixture.whenStable();\n expect(getFiller()).not.toBeNull();\n });\n });\n\n describe('if the field has a value', () => {\n beforeEach(() => {\n testComponent.control.setValue(setValue);\n fixture.detectChanges();\n });\n\n it('not visible', () => {\n expect(getFiller()).toBeNull();\n });\n\n it('also not visible when focusing', () => {\n inputPO.nativeElement?.focus();\n fixture.detectChanges();\n\n expect(getFiller()).toBeNull();\n });\n });\n });\n\n function getFiller(): DebugElement | null {\n return pageObject.getByAutomationId(`${context.prefix}filler`);\n }\n}\n","import {ComponentFixture} from '@angular/core/testing';\nimport {FormControl} from '@angular/forms';\n\nimport {TuiNativeInputPO} from '../native-input.page-object';\n\ninterface TestParams {\n fixture: ComponentFixture<unknown>;\n inputPO: TuiNativeInputPO;\n testComponent: TestComponent;\n}\n\ninterface TestComponent {\n control: FormControl;\n}\n\nexport function tuiTestFormControlState(context: TestParams): void {\n let fixture: ComponentFixture<unknown>;\n let testComponent: TestComponent;\n let inputPO: TuiNativeInputPO;\n\n describe('FormControl state', () => {\n beforeEach(() => {\n fixture = context.fixture;\n testComponent = context.testComponent;\n inputPO = context.inputPO;\n\n fixture.detectChanges();\n });\n\n it('After initializing control dirty === false', () => {\n expect(testComponent.control.dirty).toBe(false);\n });\n\n it('After control initialization touched === false', () => {\n expect(testComponent.control.touched).toBe(false);\n });\n\n it('After setting value from outside dirty === false', () => {\n testComponent.control.setValue('123');\n fixture.detectChanges();\n\n expect(testComponent.control.dirty).toBe(false);\n });\n\n it('After entering the value dirty === true', () => {\n inputPO.sendText('123');\n\n expect(testComponent.control.dirty).toBe(true);\n });\n\n it('After setting and de-focusing touched === true', async () => {\n inputPO.focus();\n inputPO.blur();\n\n await fixture.whenStable();\n\n fixture.detectChanges();\n expect(testComponent.control.touched).toBe(true);\n });\n });\n}\n","import {DebugElement} from '@angular/core';\nimport {ComponentFixture} from '@angular/core/testing';\nimport {FormControl} from '@angular/forms';\n\nimport {TuiPageObject} from '../page-object';\n\ninterface TestParams {\n fixture: ComponentFixture<unknown>;\n pageObject: TuiPageObject<unknown>;\n prefix: string;\n testComponent: TestComponent;\n}\n\ninterface TestComponent {\n control?: FormControl;\n labelOutside: boolean;\n size: 'l' | 'm' | 's';\n value?: unknown;\n}\n\nexport function tuiTestPlaceholder(\n context: TestParams,\n setValue: unknown = 'value',\n clearValue: unknown = '',\n): void {\n let pageObject: TuiPageObject<unknown>;\n let fixture: ComponentFixture<unknown>;\n let testComponent: TestComponent;\n\n describe('Placeholder', () => {\n beforeEach(() => {\n pageObject = context.pageObject;\n fixture = context.fixture;\n testComponent = context.testComponent;\n\n fixture.autoDetectChanges();\n });\n\n describe('in size S', () => {\n beforeEach(() => {\n testComponent.size = 's';\n fixture.detectChanges();\n });\n\n it('if no value, then shown', () => {\n updateValue(clearValue);\n fixture.detectChanges();\n\n expect(getPlaceholder()).not.toBeNull();\n });\n\n it('if specified, not shown', () => {\n updateValue(setValue);\n fixture.detectChanges();\n\n expect(getPlaceholder()).toBeNull();\n });\n });\n\n describe('in size M', () => {\n beforeEach(() => {\n testComponent.size = 'm';\n fixture.detectChanges();\n });\n\n it('if no value, then shown', () => {\n updateValue(clearValue);\n fixture.detectChanges();\n\n expect(getPlaceholder()).not.toBeNull();\n });\n\n it('if a value is given, then', () => {\n updateValue(setValue);\n testComponent.labelOutside = false;\n fixture.detectChanges();\n\n expect(getPlaceholder()).not.toBeNull();\n });\n\n it('if value is given but label is outside, then not shown', () => {\n updateValue(setValue);\n testComponent.labelOutside = true;\n fixture.detectChanges();\n\n expect(getPlaceholder()).toBeNull();\n });\n });\n\n describe('in size L', () => {\n beforeEach(() => {\n testComponent.size = 'l';\n fixture.detectChanges();\n });\n\n it('if no value, then shown', () => {\n updateValue(clearValue);\n fixture.detectChanges();\n\n expect(getPlaceholder()).not.toBeNull();\n });\n\n it('if a value is given, then', () => {\n updateValue(setValue);\n testComponent.labelOutside = false;\n fixture.detectChanges();\n\n expect(getPlaceholder()).not.toBeNull();\n });\n\n it('if value is given but label is outside, then not shown', () => {\n updateValue(setValue);\n testComponent.labelOutside = true;\n fixture.detectChanges();\n\n expect(getPlaceholder()).toBeNull();\n });\n });\n });\n\n function updateValue(value: unknown): void {\n if (testComponent.control) {\n testComponent.control.setValue(value);\n } else {\n testComponent.value = value;\n }\n }\n\n function getPlaceholder(): DebugElement | null {\n return pageObject.getByAutomationId(`${context.prefix}placeholder`);\n }\n}\n","import {DebugElement} from '@angular/core';\nimport {ComponentFixture} from '@angular/core/testing';\nimport {FormControl} from '@angular/forms';\n\nimport {TuiPageObject} from '../page-object';\n\ninterface TestParams {\n fixture: ComponentFixture<unknown>;\n pageObject: TuiPageObject<unknown>;\n prefix: string;\n testComponent: TestComponent;\n}\n\ninterface TestComponent {\n control?: FormControl;\n disabled?: boolean;\n hintContent: string | null;\n readOnly: boolean;\n size: unknown;\n}\n\nexport function tuiTestTooltip(context: TestParams): void {\n let pageObject: TuiPageObject<unknown>;\n let fixture: ComponentFixture<unknown>;\n let testComponent: TestComponent;\n\n describe('Tooltip in a field', () => {\n beforeEach(() => {\n pageObject = context.pageObject;\n fixture = context.fixture;\n testComponent = context.testComponent;\n\n fixture.autoDetectChanges();\n });\n\n describe('There is tooltip content', () => {\n it('if field is disabled, there is no tooltip', () => {\n testComponent.disabled = true;\n\n if (testComponent.control) {\n testComponent.control.disable();\n }\n\n fixture.detectChanges();\n\n expect(getTooltip()).toBeNull();\n });\n\n it('if field is not disabled, there is tooltip', () => {\n fixture.detectChanges();\n\n expect(getTooltip()).not.toBeNull();\n });\n\n it('if field is readonly, there is tooltip', () => {\n testComponent.readOnly = true;\n fixture.detectChanges();\n\n expect(getTooltip()).not.toBeNull();\n });\n });\n\n describe('There is no tooltip content', () => {\n beforeEach(() => {\n testComponent.hintContent = null;\n fixture.detectChanges();\n });\n\n it('tooltip without content is hidden', () => {\n fixture.detectChanges();\n\n expect(getTooltip()).toBeNull();\n });\n });\n });\n\n function getTooltip(): DebugElement | null {\n return pageObject.getByAutomationId(`${context.prefix}tooltip`);\n }\n}\n","import {DebugElement, Predicate} from '@angular/core';\nimport {ComponentFixture} from '@angular/core/testing';\n\nexport class TuiPageObject<T> {\n constructor(protected fixture: ComponentFixture<T>) {}\n\n static getIds({nativeElement}: DebugElement): string[] {\n const attributeValue: string | null = nativeElement.getAttribute('automation-id');\n\n return attributeValue === null ? [] : attributeValue.split(' ');\n }\n\n static containsId(debugElement: DebugElement, automationId: string): boolean {\n return TuiPageObject.getIds(debugElement).includes(automationId);\n }\n\n private static byAutomationId(automationId: string): Predicate<DebugElement> {\n return debugElement => TuiPageObject.containsId(debugElement, automationId);\n }\n\n getByAutomationId(\n automationId: string,\n debugElement: DebugElement = this.fixture.debugElement,\n ): DebugElement | null {\n return debugElement.query(TuiPageObject.byAutomationId(automationId));\n }\n\n // Syncing result order with DOM order: https://github.com/angular/angular/issues/13066\n getAllByAutomationId(\n automationId: string,\n debugElement: DebugElement = this.fixture.debugElement,\n ): DebugElement[] {\n const debugEls = debugElement.queryAll(\n TuiPageObject.byAutomationId(automationId),\n );\n const domEls = Array.from(\n debugElement.nativeElement.querySelectorAll(\n `[automation-id='${automationId}']`,\n ),\n );\n\n return debugEls.sort(\n (a, b) => domEls.indexOf(a.nativeElement) - domEls.indexOf(b.nativeElement),\n );\n }\n}\n","import {CHAR_NO_BREAK_SPACE} from '@taiga-ui/cdk';\n\nexport function tuiReplaceNbsp(content?: string): string {\n return content?.replace(new RegExp(CHAR_NO_BREAK_SPACE, 'g'), ' ') ?? '';\n}\n","import {DebugElement} from '@angular/core';\nimport {ComponentFixture} from '@angular/core/testing';\n\nimport {tuiCreateKeyboardEvent} from './keyboard-event';\nimport {TuiPageObject} from './page-object';\nimport {tuiReplaceNbsp} from './replace-nbsp';\n\nexport class TuiNativeInputPO {\n private readonly pageObject: TuiPageObject<unknown>;\n\n constructor(\n private readonly fixture: ComponentFixture<unknown>,\n private readonly automationId: string,\n private readonly hostDebugElement?: DebugElement,\n ) {\n this.pageObject = new TuiPageObject(fixture);\n }\n\n get nativeElement(): HTMLInputElement | HTMLTextAreaElement | null {\n return (\n this.pageObject.getByAutomationId(this.automationId, this.hostDebugElement)\n ?.nativeElement ?? null\n );\n }\n\n get value(): string {\n return tuiReplaceNbsp(this.nativeElement?.value ?? '');\n }\n\n get focused(): boolean {\n return document.activeElement === this.nativeElement;\n }\n\n sendText(value: string): void {\n this.focus(); // need focus before initial value for emulate user interaction\n\n const nativeElement = this.nativeElement;\n\n if (nativeElement) {\n nativeElement.value = value;\n nativeElement.dispatchEvent(new Event('input', {bubbles: true}));\n }\n\n this.fixture.detectChanges();\n }\n\n // @bad TODO: Fix this with actually moving focus rather than just blurring\n sendTextAndBlur(value: string): void {\n this.focus();\n this.sendText(value);\n this.blur();\n }\n\n sendKeydown(key: string): void {\n this.nativeElement?.dispatchEvent(tuiCreateKeyboardEvent(key, 'keydown'));\n this.fixture.detectChanges();\n }\n\n focus(): void {\n this.nativeElement?.focus();\n this.fixture.detectChanges();\n }\n\n blur(): void {\n this.nativeElement?.blur();\n this.fixture.detectChanges();\n }\n\n click(): void {\n this.nativeElement?.click();\n this.fixture.detectChanges();\n }\n}\n","export function tuiTestingViewport(width: number, height: number): void {\n Object.defineProperty(global, 'innerWidth', {\n writable: true,\n configurable: true,\n value: width,\n });\n\n Object.defineProperty(global.document.documentElement, 'clientWidth', {\n writable: true,\n configurable: true,\n value: width - 15,\n });\n\n Object.defineProperty(global, 'innerHeight', {\n writable: true,\n configurable: true,\n value: height,\n });\n\n Object.defineProperty(global.document.documentElement, 'clientHeight', {\n writable: true,\n configurable: true,\n value: height,\n });\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["getTestBed","TestBed","tuiIsNumber","HarnessPredicate","ComponentHarness","ContentContainerComponentHarness","CHAR_NO_BREAK_SPACE"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"taiga-ui-testing-utils.umd.js","sources":["../../../projects/testing/utils/keyboard-event.ts","../../../projects/testing/utils/active-element.ts","../../../node_modules/tslib/tslib.es6.mjs","../../../projects/testing/utils/configure-test-suite.ts","../../../projects/testing/utils/date.ts","../../../projects/testing/utils/helpers.ts","../../../projects/testing/utils/input/cleaner.unit-common.ts","../../../projects/testing/utils/input/filler.unit-common.ts","../../../projects/testing/utils/input/form-control-state.unit-common.ts","../../../projects/testing/utils/input/placeholder.unit-common.ts","../../../projects/testing/utils/input/tooltip.unit-common.ts","../../../projects/testing/utils/page-object.ts","../../../projects/testing/utils/replace-nbsp.ts","../../../projects/testing/utils/native-input.page-object.ts","../../../projects/testing/utils/viewport.ts","../../../projects/testing/utils/taiga-ui-testing-utils.ts"],"sourcesContent":["export function tuiCreateKeyboardEvent(\n key: string,\n eventType: string = 'keydown',\n): KeyboardEvent {\n const event = new KeyboardEvent(eventType, {bubbles: true});\n\n delete (event as any).target;\n Object.defineProperty(event, 'type', {value: eventType});\n\n delete (event as any).key;\n Object.defineProperty(event, 'key', {value: key});\n\n return event;\n}\n","import {ComponentFixture} from '@angular/core/testing';\n\nimport {tuiCreateKeyboardEvent} from './keyboard-event';\n\nexport function tuiDispatchOnActive<T>(key: string, fixture?: ComponentFixture<T>): void {\n document.activeElement?.dispatchEvent(tuiCreateKeyboardEvent(key, 'keydown'));\n\n fixture?.detectChanges();\n}\n\nexport function tuiActiveText(): string {\n return document.activeElement?.textContent?.trim() ?? '';\n}\n\nexport function tuiIsActive(element: Element): boolean {\n return document.activeElement === element;\n}\n","/******************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\n/* global Reflect, Promise, SuppressedError, Symbol */\n\nvar extendStatics = function(d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n};\n\nexport function __extends(d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n}\n\nexport var __assign = function() {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n }\n return __assign.apply(this, arguments);\n}\n\nexport function __rest(s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n}\n\nexport function __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n}\n\nexport function __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n}\n\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\n var _, done = false;\n for (var i = decorators.length - 1; i >= 0; i--) {\n var context = {};\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\n if (kind === \"accessor\") {\n if (result === void 0) continue;\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\n if (_ = accept(result.get)) descriptor.get = _;\n if (_ = accept(result.set)) descriptor.set = _;\n if (_ = accept(result.init)) initializers.unshift(_);\n }\n else if (_ = accept(result)) {\n if (kind === \"field\") initializers.unshift(_);\n else descriptor[key] = _;\n }\n }\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\n done = true;\n};\n\nexport function __runInitializers(thisArg, initializers, value) {\n var useValue = arguments.length > 2;\n for (var i = 0; i < initializers.length; i++) {\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\n }\n return useValue ? value : void 0;\n};\n\nexport function __propKey(x) {\n return typeof x === \"symbol\" ? x : \"\".concat(x);\n};\n\nexport function __setFunctionName(f, name, prefix) {\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\n};\n\nexport function __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\n}\n\nexport function __awaiter(thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n}\n\nexport function __generator(thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n}\n\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\n\nexport function __exportStar(m, o) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\n}\n\nexport function __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n}\n\nexport function __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n}\n\n/** @deprecated */\nexport function __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n}\n\n/** @deprecated */\nexport function __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n}\n\nexport function __spreadArray(to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n}\n\nexport function __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n}\n\nexport function __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n}\n\nexport function __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\n}\n\nexport function __asyncValues(o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n}\n\nexport function __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n};\n\nvar __setModuleDefault = Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n};\n\nexport function __importStar(mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n}\n\nexport function __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n}\n\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n}\n\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\n}\n\nexport function __classPrivateFieldIn(state, receiver) {\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\n}\n\nexport function __addDisposableResource(env, value, async) {\n if (value !== null && value !== void 0) {\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\n var dispose;\n if (async) {\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\n dispose = value[Symbol.asyncDispose];\n }\n if (dispose === void 0) {\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\n dispose = value[Symbol.dispose];\n }\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\n env.stack.push({ value: value, dispose: dispose, async: async });\n }\n else if (async) {\n env.stack.push({ async: true });\n }\n return value;\n}\n\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n};\n\nexport function __disposeResources(env) {\n function fail(e) {\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\n env.hasError = true;\n }\n function next() {\n while (env.stack.length) {\n var rec = env.stack.pop();\n try {\n var result = rec.dispose && rec.dispose.call(rec.value);\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\n }\n catch (e) {\n fail(e);\n }\n }\n if (env.hasError) throw env.error;\n }\n return next();\n}\n\nexport default {\n __extends,\n __assign,\n __rest,\n __decorate,\n __param,\n __metadata,\n __awaiter,\n __generator,\n __createBinding,\n __exportStar,\n __values,\n __read,\n __spread,\n __spreadArrays,\n __spreadArray,\n __await,\n __asyncGenerator,\n __asyncDelegator,\n __asyncValues,\n __makeTemplateObject,\n __importStar,\n __importDefault,\n __classPrivateFieldGet,\n __classPrivateFieldSet,\n __classPrivateFieldIn,\n __addDisposableResource,\n __disposeResources,\n};\n","import {ComponentFixture, getTestBed, TestBed} from '@angular/core/testing';\n\n/** deprecated, will be removed in 4.0 */\nexport const configureTestSuite = (configureModule?: () => void): void => {\n const testBedApi = getTestBed();\n const originReset = TestBed.resetTestingModule;\n\n beforeAll(() => {\n TestBed.resetTestingModule();\n TestBed.resetTestingModule = () => TestBed;\n });\n\n // Custom hook\n if (configureModule) {\n beforeAll(async () => {\n configureModule();\n await TestBed.compileComponents();\n });\n }\n\n afterEach(() => {\n // @ts-ignore\n testBedApi._activeFixtures.forEach((fixture: ComponentFixture<unknown>) =>\n fixture.destroy(),\n );\n // reset ViewEngine TestBed\n // @ts-ignore\n testBedApi._instantiated = false;\n // reset Ivy TestBed\n // @ts-ignore\n testBedApi._testModuleRef = null;\n });\n\n afterAll(() => {\n TestBed.resetTestingModule = originReset;\n TestBed.resetTestingModule();\n });\n};\n","import {tuiIsNumber} from '@taiga-ui/cdk';\n\ndeclare const global: {Date: typeof Date};\n\nconst OriginalDate = global.Date;\n\nexport function tuiMockCurrentDate(dateOrNumber: Date | number): void {\n const date: Date = tuiIsNumber(dateOrNumber)\n ? new OriginalDate(dateOrNumber)\n : dateOrNumber;\n\n class MockDate extends OriginalDate {\n constructor() {\n super();\n\n return date;\n }\n }\n\n global.Date = MockDate as typeof Date;\n}\n\nexport function tuiRestoreRealDate(): void {\n global.Date = OriginalDate;\n}\n","import {\n BaseHarnessFilters,\n ComponentHarness,\n ComponentHarnessConstructor,\n ContentContainerComponentHarness,\n HarnessPredicate,\n} from '@angular/cdk/testing';\n\n/**\n * Decorator to add default static 'with' method.\n * Use in conjunction with {@link tuiHarnessWith} mixin.\n */\nexport function tuiWithPredicate<\n T extends ComponentHarnessConstructor<ComponentHarness> & {\n with: (options?: BaseHarnessFilters) => HarnessPredicate<ComponentHarness>;\n },\n>(original: T): T {\n original.with = (options: BaseHarnessFilters = {}) =>\n new HarnessPredicate(original, options);\n\n return original;\n}\n\n/**\n * Mixin to extend {@link ComponentHarness} and add typed\n * static 'with' method. Use {@link tuiWithPredicate} decorator\n * to monkey-patch default static 'with' method.\n */\nexport function tuiHarnessWith<T>(\n hostSelector: string,\n): ComponentHarnessConstructor<ComponentHarness> & {\n with: (options?: BaseHarnessFilters) => HarnessPredicate<ComponentHarness>;\n} {\n return class extends ComponentHarness {\n static hostSelector = hostSelector;\n\n // @ts-ignore\n static with(_options: BaseHarnessFilters = {}): HarnessPredicate<T> {\n throw new Error('Hummus');\n }\n } as unknown as ComponentHarnessConstructor<ComponentHarness> & {\n with: (options?: BaseHarnessFilters) => HarnessPredicate<ComponentHarness>;\n };\n}\n\nexport class TuiComponentHarness extends ComponentHarness {\n static with<T extends ComponentHarness>(\n this: ComponentHarnessConstructor<T>,\n options: BaseHarnessFilters,\n ): HarnessPredicate<T> {\n return new HarnessPredicate(this, options);\n }\n}\n\nexport class TuiContentContainerComponentHarness extends ContentContainerComponentHarness {\n static with<T extends ComponentHarness>(\n this: ComponentHarnessConstructor<T>,\n options: BaseHarnessFilters,\n ): HarnessPredicate<T> {\n return new HarnessPredicate(this, options);\n }\n}\n","/// <reference types=\"jest\" />\n\nimport {DebugElement} from '@angular/core';\nimport {ComponentFixture} from '@angular/core/testing';\nimport {FormControl} from '@angular/forms';\n\nimport {TuiNativeInputPO} from '../native-input.page-object';\nimport {TuiPageObject} from '../page-object';\n\ninterface TestParams {\n fixture: ComponentFixture<unknown>;\n inputPO: TuiNativeInputPO;\n pageObject: TuiPageObject<unknown>;\n prefix: string;\n testComponent: TestComponent;\n}\n\ninterface TestComponent {\n cleaner: boolean;\n control?: FormControl;\n disabled?: boolean;\n readOnly: boolean;\n value?: unknown;\n}\n\nexport function tuiTestCleaner(\n context: TestParams,\n setValue: any = 'value',\n clearValue: any = null,\n): void {\n let pageObject: TuiPageObject<unknown>;\n let fixture: ComponentFixture<unknown>;\n let testComponent: TestComponent;\n let inputPO: TuiNativeInputPO;\n\n describe('Cross for field cleaning', () => {\n beforeEach(() => {\n pageObject = context.pageObject;\n fixture = context.fixture;\n testComponent = context.testComponent;\n inputPO = context.inputPO;\n\n fixture.autoDetectChanges();\n });\n\n describe('Cross included', () => {\n beforeEach(() => {\n testComponent.cleaner = true;\n });\n\n it('If no value is specified, the cross is not shown', () => {\n updateValue(clearValue);\n\n fixture.detectChanges();\n\n expect(getCleaner()).toBeNull();\n });\n\n it('If the field is readonly, the cross is not shown', () => {\n updateValue(setValue);\n\n testComponent.readOnly = true;\n fixture.detectChanges();\n\n expect(getCleaner()).toBeNull();\n });\n\n it('If the field is disabled, the cross is not shown', () => {\n updateValue(setValue);\n\n if (testComponent.control) {\n testComponent.control.disable();\n }\n\n testComponent.disabled = true;\n fixture.detectChanges();\n\n expect(getCleaner()).toBeNull();\n });\n\n it('If a value is specified, a cross is shown', () => {\n updateValue(setValue);\n\n fixture.detectChanges();\n\n expect(getCleaner()).not.toBeNull();\n });\n\n it('When you click on the cross, the field value is cleared', () => {\n updateValue(setValue);\n\n fixture.detectChanges();\n\n getCleaner()!.nativeElement.click();\n fixture.detectChanges();\n\n expect(inputPO.value).toBe('');\n\n if (testComponent.control !== undefined) {\n expect(testComponent.control.value).toEqual(clearValue);\n }\n\n if (testComponent.value !== undefined) {\n expect(testComponent.value).toEqual(clearValue);\n }\n });\n });\n\n describe('Cross disabled', () => {\n it('The value is set, the cross is not shown', () => {\n updateValue(setValue);\n\n testComponent.cleaner = false;\n fixture.detectChanges();\n\n expect(getCleaner()).toBeNull();\n });\n });\n });\n\n function updateValue(value: unknown): void {\n if (testComponent.control) {\n testComponent.control.setValue(value);\n } else {\n testComponent.value = value;\n }\n }\n\n function getCleaner(): DebugElement | null {\n return pageObject.getByAutomationId(`${context.prefix}cleaner`);\n }\n}\n","import {DebugElement} from '@angular/core';\nimport {ComponentFixture} from '@angular/core/testing';\nimport {FormControl} from '@angular/forms';\n\nimport {TuiNativeInputPO} from '../native-input.page-object';\nimport {TuiPageObject} from '../page-object';\n\ninterface TestParams {\n fixture: ComponentFixture<unknown>;\n inputPO: TuiNativeInputPO;\n pageObject: TuiPageObject<unknown>;\n prefix: string;\n testComponent: TestComponent;\n}\n\ninterface TestComponent {\n control: FormControl;\n}\n\nexport function tuiTestFiller(\n context: TestParams,\n setValue: unknown = 'value',\n clearValue: unknown = null,\n): void {\n let pageObject: TuiPageObject<unknown>;\n let fixture: ComponentFixture<unknown>;\n let testComponent: TestComponent;\n let inputPO: TuiNativeInputPO;\n\n describe('Filler (mask)', () => {\n beforeEach(() => {\n pageObject = context.pageObject;\n fixture = context.fixture;\n testComponent = context.testComponent;\n inputPO = context.inputPO;\n\n fixture.detectChanges();\n });\n\n describe('if there is no value in the field', () => {\n beforeEach(() => {\n testComponent.control.setValue(clearValue);\n fixture.detectChanges();\n });\n\n it('not visible', () => {\n expect(getFiller()).toBeNull();\n });\n\n it('when focusing appears', async () => {\n inputPO.focus();\n fixture.detectChanges();\n await fixture.whenStable();\n expect(getFiller()).not.toBeNull();\n });\n });\n\n describe('if the field has a value', () => {\n beforeEach(() => {\n testComponent.control.setValue(setValue);\n fixture.detectChanges();\n });\n\n it('not visible', () => {\n expect(getFiller()).toBeNull();\n });\n\n it('also not visible when focusing', () => {\n inputPO.nativeElement?.focus();\n fixture.detectChanges();\n\n expect(getFiller()).toBeNull();\n });\n });\n });\n\n function getFiller(): DebugElement | null {\n return pageObject.getByAutomationId(`${context.prefix}filler`);\n }\n}\n","import {ComponentFixture} from '@angular/core/testing';\nimport {FormControl} from '@angular/forms';\n\nimport {TuiNativeInputPO} from '../native-input.page-object';\n\ninterface TestParams {\n fixture: ComponentFixture<unknown>;\n inputPO: TuiNativeInputPO;\n testComponent: TestComponent;\n}\n\ninterface TestComponent {\n control: FormControl;\n}\n\nexport function tuiTestFormControlState(context: TestParams): void {\n let fixture: ComponentFixture<unknown>;\n let testComponent: TestComponent;\n let inputPO: TuiNativeInputPO;\n\n describe('FormControl state', () => {\n beforeEach(() => {\n fixture = context.fixture;\n testComponent = context.testComponent;\n inputPO = context.inputPO;\n\n fixture.detectChanges();\n });\n\n it('After initializing control dirty === false', () => {\n expect(testComponent.control.dirty).toBe(false);\n });\n\n it('After control initialization touched === false', () => {\n expect(testComponent.control.touched).toBe(false);\n });\n\n it('After setting value from outside dirty === false', () => {\n testComponent.control.setValue('123');\n fixture.detectChanges();\n\n expect(testComponent.control.dirty).toBe(false);\n });\n\n it('After entering the value dirty === true', () => {\n inputPO.sendText('123');\n\n expect(testComponent.control.dirty).toBe(true);\n });\n\n it('After setting and de-focusing touched === true', async () => {\n inputPO.focus();\n inputPO.blur();\n\n await fixture.whenStable();\n\n fixture.detectChanges();\n expect(testComponent.control.touched).toBe(true);\n });\n });\n}\n","import {DebugElement} from '@angular/core';\nimport {ComponentFixture} from '@angular/core/testing';\nimport {FormControl} from '@angular/forms';\n\nimport {TuiPageObject} from '../page-object';\n\ninterface TestParams {\n fixture: ComponentFixture<unknown>;\n pageObject: TuiPageObject<unknown>;\n prefix: string;\n testComponent: TestComponent;\n}\n\ninterface TestComponent {\n control?: FormControl;\n labelOutside: boolean;\n size: 'l' | 'm' | 's';\n value?: unknown;\n}\n\nexport function tuiTestPlaceholder(\n context: TestParams,\n setValue: unknown = 'value',\n clearValue: unknown = '',\n): void {\n let pageObject: TuiPageObject<unknown>;\n let fixture: ComponentFixture<unknown>;\n let testComponent: TestComponent;\n\n describe('Placeholder', () => {\n beforeEach(() => {\n pageObject = context.pageObject;\n fixture = context.fixture;\n testComponent = context.testComponent;\n\n fixture.autoDetectChanges();\n });\n\n describe('in size S', () => {\n beforeEach(() => {\n testComponent.size = 's';\n fixture.detectChanges();\n });\n\n it('if no value, then shown', () => {\n updateValue(clearValue);\n fixture.detectChanges();\n\n expect(getPlaceholder()).not.toBeNull();\n });\n\n it('if specified, not shown', () => {\n updateValue(setValue);\n fixture.detectChanges();\n\n expect(getPlaceholder()).toBeNull();\n });\n });\n\n describe('in size M', () => {\n beforeEach(() => {\n testComponent.size = 'm';\n fixture.detectChanges();\n });\n\n it('if no value, then shown', () => {\n updateValue(clearValue);\n fixture.detectChanges();\n\n expect(getPlaceholder()).not.toBeNull();\n });\n\n it('if a value is given, then', () => {\n updateValue(setValue);\n testComponent.labelOutside = false;\n fixture.detectChanges();\n\n expect(getPlaceholder()).not.toBeNull();\n });\n\n it('if value is given but label is outside, then not shown', () => {\n updateValue(setValue);\n testComponent.labelOutside = true;\n fixture.detectChanges();\n\n expect(getPlaceholder()).toBeNull();\n });\n });\n\n describe('in size L', () => {\n beforeEach(() => {\n testComponent.size = 'l';\n fixture.detectChanges();\n });\n\n it('if no value, then shown', () => {\n updateValue(clearValue);\n fixture.detectChanges();\n\n expect(getPlaceholder()).not.toBeNull();\n });\n\n it('if a value is given, then', () => {\n updateValue(setValue);\n testComponent.labelOutside = false;\n fixture.detectChanges();\n\n expect(getPlaceholder()).not.toBeNull();\n });\n\n it('if value is given but label is outside, then not shown', () => {\n updateValue(setValue);\n testComponent.labelOutside = true;\n fixture.detectChanges();\n\n expect(getPlaceholder()).toBeNull();\n });\n });\n });\n\n function updateValue(value: unknown): void {\n if (testComponent.control) {\n testComponent.control.setValue(value);\n } else {\n testComponent.value = value;\n }\n }\n\n function getPlaceholder(): DebugElement | null {\n return pageObject.getByAutomationId(`${context.prefix}placeholder`);\n }\n}\n","import {DebugElement} from '@angular/core';\nimport {ComponentFixture} from '@angular/core/testing';\nimport {FormControl} from '@angular/forms';\n\nimport {TuiPageObject} from '../page-object';\n\ninterface TestParams {\n fixture: ComponentFixture<unknown>;\n pageObject: TuiPageObject<unknown>;\n prefix: string;\n testComponent: TestComponent;\n}\n\ninterface TestComponent {\n control?: FormControl;\n disabled?: boolean;\n hintContent: string | null;\n readOnly: boolean;\n size: unknown;\n}\n\nexport function tuiTestTooltip(context: TestParams): void {\n let pageObject: TuiPageObject<unknown>;\n let fixture: ComponentFixture<unknown>;\n let testComponent: TestComponent;\n\n describe('Tooltip in a field', () => {\n beforeEach(() => {\n pageObject = context.pageObject;\n fixture = context.fixture;\n testComponent = context.testComponent;\n\n fixture.autoDetectChanges();\n });\n\n describe('There is tooltip content', () => {\n it('if field is disabled, there is no tooltip', () => {\n testComponent.disabled = true;\n\n if (testComponent.control) {\n testComponent.control.disable();\n }\n\n fixture.detectChanges();\n\n expect(getTooltip()).toBeNull();\n });\n\n it('if field is not disabled, there is tooltip', () => {\n fixture.detectChanges();\n\n expect(getTooltip()).not.toBeNull();\n });\n\n it('if field is readonly, there is tooltip', () => {\n testComponent.readOnly = true;\n fixture.detectChanges();\n\n expect(getTooltip()).not.toBeNull();\n });\n });\n\n describe('There is no tooltip content', () => {\n beforeEach(() => {\n testComponent.hintContent = null;\n fixture.detectChanges();\n });\n\n it('tooltip without content is hidden', () => {\n fixture.detectChanges();\n\n expect(getTooltip()).toBeNull();\n });\n });\n });\n\n function getTooltip(): DebugElement | null {\n return pageObject.getByAutomationId(`${context.prefix}tooltip`);\n }\n}\n","import {DebugElement, Predicate} from '@angular/core';\nimport {ComponentFixture} from '@angular/core/testing';\n\nexport class TuiPageObject<T> {\n constructor(protected fixture: ComponentFixture<T>) {}\n\n static getIds({nativeElement}: DebugElement): string[] {\n const attributeValue: string | null = nativeElement.getAttribute('automation-id');\n\n return attributeValue === null ? [] : attributeValue.split(' ');\n }\n\n static containsId(debugElement: DebugElement, automationId: string): boolean {\n return TuiPageObject.getIds(debugElement).includes(automationId);\n }\n\n private static byAutomationId(automationId: string): Predicate<DebugElement> {\n return debugElement => TuiPageObject.containsId(debugElement, automationId);\n }\n\n getByAutomationId(\n automationId: string,\n debugElement: DebugElement = this.fixture.debugElement,\n ): DebugElement | null {\n return debugElement.query(TuiPageObject.byAutomationId(automationId));\n }\n\n // Syncing result order with DOM order: https://github.com/angular/angular/issues/13066\n getAllByAutomationId(\n automationId: string,\n debugElement: DebugElement = this.fixture.debugElement,\n ): DebugElement[] {\n const debugEls = debugElement.queryAll(\n TuiPageObject.byAutomationId(automationId),\n );\n const domEls = Array.from(\n debugElement.nativeElement.querySelectorAll(\n `[automation-id='${automationId}']`,\n ),\n );\n\n return debugEls.sort(\n (a, b) => domEls.indexOf(a.nativeElement) - domEls.indexOf(b.nativeElement),\n );\n }\n}\n","import {CHAR_NO_BREAK_SPACE} from '@taiga-ui/cdk';\n\nexport function tuiReplaceNbsp(content?: string): string {\n return content?.replace(new RegExp(CHAR_NO_BREAK_SPACE, 'g'), ' ') ?? '';\n}\n","import {DebugElement} from '@angular/core';\nimport {ComponentFixture} from '@angular/core/testing';\n\nimport {tuiCreateKeyboardEvent} from './keyboard-event';\nimport {TuiPageObject} from './page-object';\nimport {tuiReplaceNbsp} from './replace-nbsp';\n\nexport class TuiNativeInputPO {\n private readonly pageObject: TuiPageObject<unknown>;\n\n constructor(\n private readonly fixture: ComponentFixture<unknown>,\n private readonly automationId: string,\n private readonly hostDebugElement?: DebugElement,\n ) {\n this.pageObject = new TuiPageObject(fixture);\n }\n\n get nativeElement(): HTMLInputElement | HTMLTextAreaElement | null {\n return (\n this.pageObject.getByAutomationId(this.automationId, this.hostDebugElement)\n ?.nativeElement ?? null\n );\n }\n\n get value(): string {\n return tuiReplaceNbsp(this.nativeElement?.value ?? '');\n }\n\n get focused(): boolean {\n return document.activeElement === this.nativeElement;\n }\n\n sendText(value: string): void {\n this.focus(); // need focus before initial value for emulate user interaction\n\n const nativeElement = this.nativeElement;\n\n if (nativeElement) {\n nativeElement.value = value;\n nativeElement.dispatchEvent(new Event('input', {bubbles: true}));\n }\n\n this.fixture.detectChanges();\n }\n\n // @bad TODO: Fix this with actually moving focus rather than just blurring\n sendTextAndBlur(value: string): void {\n this.focus();\n this.sendText(value);\n this.blur();\n }\n\n sendKeydown(key: string): void {\n this.nativeElement?.dispatchEvent(tuiCreateKeyboardEvent(key, 'keydown'));\n this.fixture.detectChanges();\n }\n\n focus(): void {\n this.nativeElement?.focus();\n this.fixture.detectChanges();\n }\n\n blur(): void {\n this.nativeElement?.blur();\n this.fixture.detectChanges();\n }\n\n click(): void {\n this.nativeElement?.click();\n this.fixture.detectChanges();\n }\n}\n","export function tuiTestingViewport(width: number, height: number): void {\n Object.defineProperty(global, 'innerWidth', {\n writable: true,\n configurable: true,\n value: width,\n });\n\n Object.defineProperty(global.document.documentElement, 'clientWidth', {\n writable: true,\n configurable: true,\n value: width - 15,\n });\n\n Object.defineProperty(global, 'innerHeight', {\n writable: true,\n configurable: true,\n value: height,\n });\n\n Object.defineProperty(global.document.documentElement, 'clientHeight', {\n writable: true,\n configurable: true,\n value: height,\n });\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["getTestBed","TestBed","tuiIsNumber","HarnessPredicate","ComponentHarness","ContentContainerComponentHarness","CHAR_NO_BREAK_SPACE"],"mappings":"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"}
|
package/package.json
CHANGED
@@ -1,19 +1,19 @@
|
|
1
1
|
{
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
2
|
+
"name": "@taiga-ui/testing",
|
3
|
+
"version": "3.70.0-canary.e02fd1e",
|
4
|
+
"description": "Utils functions for testing Taiga UI packages",
|
5
|
+
"dependencies": {
|
6
|
+
"cypress-image-snapshot": "4.0.1",
|
7
|
+
"tslib": "2.6.2"
|
8
|
+
},
|
9
|
+
"peerDependencies": {
|
10
|
+
"@taiga-ui/cdk": "^3.70.0-canary.e02fd1e"
|
11
|
+
},
|
12
|
+
"main": "bundles/taiga-ui-testing.umd.js",
|
13
|
+
"module": "fesm2015/taiga-ui-testing.js",
|
14
|
+
"es2015": "fesm2015/taiga-ui-testing.js",
|
15
|
+
"esm2015": "esm2015/taiga-ui-testing.js",
|
16
|
+
"fesm2015": "fesm2015/taiga-ui-testing.js",
|
17
|
+
"typings": "taiga-ui-testing.d.ts",
|
18
|
+
"sideEffects": false
|
19
19
|
}
|