source: trip-planner-front/node_modules/@angular/material/bundles/material-radio-testing.umd.js@ 59329aa

Last change on this file since 59329aa was 6a3a178, checked in by Ema <ema_spirova@…>, 3 years ago

initial commit

  • Property mode set to 100644
File size: 37.7 KB
Line 
1(function (global, factory) {
2 typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/cdk/coercion'), require('@angular/cdk/testing')) :
3 typeof define === 'function' && define.amd ? define('@angular/material/radio/testing', ['exports', '@angular/cdk/coercion', '@angular/cdk/testing'], factory) :
4 (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.ng = global.ng || {}, global.ng.material = global.ng.material || {}, global.ng.material.radio = global.ng.material.radio || {}, global.ng.material.radio.testing = {}), global.ng.cdk.coercion, global.ng.cdk.testing));
5}(this, (function (exports, coercion, testing) { 'use strict';
6
7 /*! *****************************************************************************
8 Copyright (c) Microsoft Corporation.
9
10 Permission to use, copy, modify, and/or distribute this software for any
11 purpose with or without fee is hereby granted.
12
13 THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
14 REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
15 AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
16 INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
17 LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
18 OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
19 PERFORMANCE OF THIS SOFTWARE.
20 ***************************************************************************** */
21 /* global Reflect, Promise */
22 var extendStatics = function (d, b) {
23 extendStatics = Object.setPrototypeOf ||
24 ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
25 function (d, b) { for (var p in b)
26 if (Object.prototype.hasOwnProperty.call(b, p))
27 d[p] = b[p]; };
28 return extendStatics(d, b);
29 };
30 function __extends(d, b) {
31 if (typeof b !== "function" && b !== null)
32 throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
33 extendStatics(d, b);
34 function __() { this.constructor = d; }
35 d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
36 }
37 var __assign = function () {
38 __assign = Object.assign || function __assign(t) {
39 for (var s, i = 1, n = arguments.length; i < n; i++) {
40 s = arguments[i];
41 for (var p in s)
42 if (Object.prototype.hasOwnProperty.call(s, p))
43 t[p] = s[p];
44 }
45 return t;
46 };
47 return __assign.apply(this, arguments);
48 };
49 function __rest(s, e) {
50 var t = {};
51 for (var p in s)
52 if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
53 t[p] = s[p];
54 if (s != null && typeof Object.getOwnPropertySymbols === "function")
55 for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
56 if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
57 t[p[i]] = s[p[i]];
58 }
59 return t;
60 }
61 function __decorate(decorators, target, key, desc) {
62 var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
63 if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
64 r = Reflect.decorate(decorators, target, key, desc);
65 else
66 for (var i = decorators.length - 1; i >= 0; i--)
67 if (d = decorators[i])
68 r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
69 return c > 3 && r && Object.defineProperty(target, key, r), r;
70 }
71 function __param(paramIndex, decorator) {
72 return function (target, key) { decorator(target, key, paramIndex); };
73 }
74 function __metadata(metadataKey, metadataValue) {
75 if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
76 return Reflect.metadata(metadataKey, metadataValue);
77 }
78 function __awaiter(thisArg, _arguments, P, generator) {
79 function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
80 return new (P || (P = Promise))(function (resolve, reject) {
81 function fulfilled(value) { try {
82 step(generator.next(value));
83 }
84 catch (e) {
85 reject(e);
86 } }
87 function rejected(value) { try {
88 step(generator["throw"](value));
89 }
90 catch (e) {
91 reject(e);
92 } }
93 function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
94 step((generator = generator.apply(thisArg, _arguments || [])).next());
95 });
96 }
97 function __generator(thisArg, body) {
98 var _ = { label: 0, sent: function () { if (t[0] & 1)
99 throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
100 return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function () { return this; }), g;
101 function verb(n) { return function (v) { return step([n, v]); }; }
102 function step(op) {
103 if (f)
104 throw new TypeError("Generator is already executing.");
105 while (_)
106 try {
107 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)
108 return t;
109 if (y = 0, t)
110 op = [op[0] & 2, t.value];
111 switch (op[0]) {
112 case 0:
113 case 1:
114 t = op;
115 break;
116 case 4:
117 _.label++;
118 return { value: op[1], done: false };
119 case 5:
120 _.label++;
121 y = op[1];
122 op = [0];
123 continue;
124 case 7:
125 op = _.ops.pop();
126 _.trys.pop();
127 continue;
128 default:
129 if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
130 _ = 0;
131 continue;
132 }
133 if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) {
134 _.label = op[1];
135 break;
136 }
137 if (op[0] === 6 && _.label < t[1]) {
138 _.label = t[1];
139 t = op;
140 break;
141 }
142 if (t && _.label < t[2]) {
143 _.label = t[2];
144 _.ops.push(op);
145 break;
146 }
147 if (t[2])
148 _.ops.pop();
149 _.trys.pop();
150 continue;
151 }
152 op = body.call(thisArg, _);
153 }
154 catch (e) {
155 op = [6, e];
156 y = 0;
157 }
158 finally {
159 f = t = 0;
160 }
161 if (op[0] & 5)
162 throw op[1];
163 return { value: op[0] ? op[1] : void 0, done: true };
164 }
165 }
166 var __createBinding = Object.create ? (function (o, m, k, k2) {
167 if (k2 === undefined)
168 k2 = k;
169 Object.defineProperty(o, k2, { enumerable: true, get: function () { return m[k]; } });
170 }) : (function (o, m, k, k2) {
171 if (k2 === undefined)
172 k2 = k;
173 o[k2] = m[k];
174 });
175 function __exportStar(m, o) {
176 for (var p in m)
177 if (p !== "default" && !Object.prototype.hasOwnProperty.call(o, p))
178 __createBinding(o, m, p);
179 }
180 function __values(o) {
181 var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
182 if (m)
183 return m.call(o);
184 if (o && typeof o.length === "number")
185 return {
186 next: function () {
187 if (o && i >= o.length)
188 o = void 0;
189 return { value: o && o[i++], done: !o };
190 }
191 };
192 throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
193 }
194 function __read(o, n) {
195 var m = typeof Symbol === "function" && o[Symbol.iterator];
196 if (!m)
197 return o;
198 var i = m.call(o), r, ar = [], e;
199 try {
200 while ((n === void 0 || n-- > 0) && !(r = i.next()).done)
201 ar.push(r.value);
202 }
203 catch (error) {
204 e = { error: error };
205 }
206 finally {
207 try {
208 if (r && !r.done && (m = i["return"]))
209 m.call(i);
210 }
211 finally {
212 if (e)
213 throw e.error;
214 }
215 }
216 return ar;
217 }
218 /** @deprecated */
219 function __spread() {
220 for (var ar = [], i = 0; i < arguments.length; i++)
221 ar = ar.concat(__read(arguments[i]));
222 return ar;
223 }
224 /** @deprecated */
225 function __spreadArrays() {
226 for (var s = 0, i = 0, il = arguments.length; i < il; i++)
227 s += arguments[i].length;
228 for (var r = Array(s), k = 0, i = 0; i < il; i++)
229 for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
230 r[k] = a[j];
231 return r;
232 }
233 function __spreadArray(to, from, pack) {
234 if (pack || arguments.length === 2)
235 for (var i = 0, l = from.length, ar; i < l; i++) {
236 if (ar || !(i in from)) {
237 if (!ar)
238 ar = Array.prototype.slice.call(from, 0, i);
239 ar[i] = from[i];
240 }
241 }
242 return to.concat(ar || from);
243 }
244 function __await(v) {
245 return this instanceof __await ? (this.v = v, this) : new __await(v);
246 }
247 function __asyncGenerator(thisArg, _arguments, generator) {
248 if (!Symbol.asyncIterator)
249 throw new TypeError("Symbol.asyncIterator is not defined.");
250 var g = generator.apply(thisArg, _arguments || []), i, q = [];
251 return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
252 function verb(n) { if (g[n])
253 i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
254 function resume(n, v) { try {
255 step(g[n](v));
256 }
257 catch (e) {
258 settle(q[0][3], e);
259 } }
260 function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
261 function fulfill(value) { resume("next", value); }
262 function reject(value) { resume("throw", value); }
263 function settle(f, v) { if (f(v), q.shift(), q.length)
264 resume(q[0][0], q[0][1]); }
265 }
266 function __asyncDelegator(o) {
267 var i, p;
268 return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
269 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; }
270 }
271 function __asyncValues(o) {
272 if (!Symbol.asyncIterator)
273 throw new TypeError("Symbol.asyncIterator is not defined.");
274 var m = o[Symbol.asyncIterator], i;
275 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);
276 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); }); }; }
277 function settle(resolve, reject, d, v) { Promise.resolve(v).then(function (v) { resolve({ value: v, done: d }); }, reject); }
278 }
279 function __makeTemplateObject(cooked, raw) {
280 if (Object.defineProperty) {
281 Object.defineProperty(cooked, "raw", { value: raw });
282 }
283 else {
284 cooked.raw = raw;
285 }
286 return cooked;
287 }
288 ;
289 var __setModuleDefault = Object.create ? (function (o, v) {
290 Object.defineProperty(o, "default", { enumerable: true, value: v });
291 }) : function (o, v) {
292 o["default"] = v;
293 };
294 function __importStar(mod) {
295 if (mod && mod.__esModule)
296 return mod;
297 var result = {};
298 if (mod != null)
299 for (var k in mod)
300 if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k))
301 __createBinding(result, mod, k);
302 __setModuleDefault(result, mod);
303 return result;
304 }
305 function __importDefault(mod) {
306 return (mod && mod.__esModule) ? mod : { default: mod };
307 }
308 function __classPrivateFieldGet(receiver, state, kind, f) {
309 if (kind === "a" && !f)
310 throw new TypeError("Private accessor was defined without a getter");
311 if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
312 throw new TypeError("Cannot read private member from an object whose class did not declare it");
313 return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
314 }
315 function __classPrivateFieldSet(receiver, state, value, kind, f) {
316 if (kind === "m")
317 throw new TypeError("Private method is not writable");
318 if (kind === "a" && !f)
319 throw new TypeError("Private accessor was defined without a setter");
320 if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver))
321 throw new TypeError("Cannot write private member to an object whose class did not declare it");
322 return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
323 }
324
325 var _MatRadioGroupHarnessBase = /** @class */ (function (_super) {
326 __extends(_MatRadioGroupHarnessBase, _super);
327 function _MatRadioGroupHarnessBase() {
328 return _super !== null && _super.apply(this, arguments) || this;
329 }
330 /** Gets the name of the radio-group. */
331 _MatRadioGroupHarnessBase.prototype.getName = function () {
332 return __awaiter(this, void 0, void 0, function () {
333 var hostName, radioNames;
334 return __generator(this, function (_a) {
335 switch (_a.label) {
336 case 0: return [4 /*yield*/, this._getGroupNameFromHost()];
337 case 1:
338 hostName = _a.sent();
339 // It's not possible to always determine the "name" of a radio-group by reading
340 // the attribute. This is because the radio-group does not set the "name" as an
341 // element attribute if the "name" value is set through a binding.
342 if (hostName !== null) {
343 return [2 /*return*/, hostName];
344 }
345 return [4 /*yield*/, this._getNamesFromRadioButtons()];
346 case 2:
347 radioNames = _a.sent();
348 if (!radioNames.length) {
349 return [2 /*return*/, null];
350 }
351 if (!this._checkRadioNamesInGroupEqual(radioNames)) {
352 throw Error('Radio buttons in radio-group have mismatching names.');
353 }
354 return [2 /*return*/, radioNames[0]];
355 }
356 });
357 });
358 };
359 /** Gets the id of the radio-group. */
360 _MatRadioGroupHarnessBase.prototype.getId = function () {
361 return __awaiter(this, void 0, void 0, function () {
362 return __generator(this, function (_a) {
363 switch (_a.label) {
364 case 0: return [4 /*yield*/, this.host()];
365 case 1: return [2 /*return*/, (_a.sent()).getProperty('id')];
366 }
367 });
368 });
369 };
370 /** Gets the checked radio-button in a radio-group. */
371 _MatRadioGroupHarnessBase.prototype.getCheckedRadioButton = function () {
372 return __awaiter(this, void 0, void 0, function () {
373 var _a, _b, radioButton, e_1_1;
374 var e_1, _c;
375 return __generator(this, function (_d) {
376 switch (_d.label) {
377 case 0:
378 _d.trys.push([0, 6, 7, 8]);
379 return [4 /*yield*/, this.getRadioButtons()];
380 case 1:
381 _a = __values.apply(void 0, [_d.sent()]), _b = _a.next();
382 _d.label = 2;
383 case 2:
384 if (!!_b.done) return [3 /*break*/, 5];
385 radioButton = _b.value;
386 return [4 /*yield*/, radioButton.isChecked()];
387 case 3:
388 if (_d.sent()) {
389 return [2 /*return*/, radioButton];
390 }
391 _d.label = 4;
392 case 4:
393 _b = _a.next();
394 return [3 /*break*/, 2];
395 case 5: return [3 /*break*/, 8];
396 case 6:
397 e_1_1 = _d.sent();
398 e_1 = { error: e_1_1 };
399 return [3 /*break*/, 8];
400 case 7:
401 try {
402 if (_b && !_b.done && (_c = _a.return)) _c.call(_a);
403 }
404 finally { if (e_1) throw e_1.error; }
405 return [7 /*endfinally*/];
406 case 8: return [2 /*return*/, null];
407 }
408 });
409 });
410 };
411 /** Gets the checked value of the radio-group. */
412 _MatRadioGroupHarnessBase.prototype.getCheckedValue = function () {
413 return __awaiter(this, void 0, void 0, function () {
414 var checkedRadio;
415 return __generator(this, function (_a) {
416 switch (_a.label) {
417 case 0: return [4 /*yield*/, this.getCheckedRadioButton()];
418 case 1:
419 checkedRadio = _a.sent();
420 if (!checkedRadio) {
421 return [2 /*return*/, null];
422 }
423 return [2 /*return*/, checkedRadio.getValue()];
424 }
425 });
426 });
427 };
428 /**
429 * Gets a list of radio buttons which are part of the radio-group.
430 * @param filter Optionally filters which radio buttons are included.
431 */
432 _MatRadioGroupHarnessBase.prototype.getRadioButtons = function (filter) {
433 return __awaiter(this, void 0, void 0, function () {
434 return __generator(this, function (_a) {
435 return [2 /*return*/, this.locatorForAll(this._buttonClass.with(filter))()];
436 });
437 });
438 };
439 /**
440 * Checks a radio button in this group.
441 * @param filter An optional filter to apply to the child radio buttons. The first tab matching
442 * the filter will be selected.
443 */
444 _MatRadioGroupHarnessBase.prototype.checkRadioButton = function (filter) {
445 return __awaiter(this, void 0, void 0, function () {
446 var radioButtons;
447 return __generator(this, function (_a) {
448 switch (_a.label) {
449 case 0: return [4 /*yield*/, this.getRadioButtons(filter)];
450 case 1:
451 radioButtons = _a.sent();
452 if (!radioButtons.length) {
453 throw Error("Could not find radio button matching " + JSON.stringify(filter));
454 }
455 return [2 /*return*/, radioButtons[0].check()];
456 }
457 });
458 });
459 };
460 /** Gets the name attribute of the host element. */
461 _MatRadioGroupHarnessBase.prototype._getGroupNameFromHost = function () {
462 return __awaiter(this, void 0, void 0, function () {
463 return __generator(this, function (_a) {
464 switch (_a.label) {
465 case 0: return [4 /*yield*/, this.host()];
466 case 1: return [2 /*return*/, (_a.sent()).getAttribute('name')];
467 }
468 });
469 });
470 };
471 /** Gets a list of the name attributes of all child radio buttons. */
472 _MatRadioGroupHarnessBase.prototype._getNamesFromRadioButtons = function () {
473 return __awaiter(this, void 0, void 0, function () {
474 var groupNames, _a, _b, radio, radioName, e_2_1;
475 var e_2, _c;
476 return __generator(this, function (_d) {
477 switch (_d.label) {
478 case 0:
479 groupNames = [];
480 _d.label = 1;
481 case 1:
482 _d.trys.push([1, 7, 8, 9]);
483 return [4 /*yield*/, this.getRadioButtons()];
484 case 2:
485 _a = __values.apply(void 0, [_d.sent()]), _b = _a.next();
486 _d.label = 3;
487 case 3:
488 if (!!_b.done) return [3 /*break*/, 6];
489 radio = _b.value;
490 return [4 /*yield*/, radio.getName()];
491 case 4:
492 radioName = _d.sent();
493 if (radioName !== null) {
494 groupNames.push(radioName);
495 }
496 _d.label = 5;
497 case 5:
498 _b = _a.next();
499 return [3 /*break*/, 3];
500 case 6: return [3 /*break*/, 9];
501 case 7:
502 e_2_1 = _d.sent();
503 e_2 = { error: e_2_1 };
504 return [3 /*break*/, 9];
505 case 8:
506 try {
507 if (_b && !_b.done && (_c = _a.return)) _c.call(_a);
508 }
509 finally { if (e_2) throw e_2.error; }
510 return [7 /*endfinally*/];
511 case 9: return [2 /*return*/, groupNames];
512 }
513 });
514 });
515 };
516 /** Checks if the specified radio names are all equal. */
517 _MatRadioGroupHarnessBase.prototype._checkRadioNamesInGroupEqual = function (radioNames) {
518 var e_3, _a;
519 var groupName = null;
520 try {
521 for (var radioNames_1 = __values(radioNames), radioNames_1_1 = radioNames_1.next(); !radioNames_1_1.done; radioNames_1_1 = radioNames_1.next()) {
522 var radioName = radioNames_1_1.value;
523 if (groupName === null) {
524 groupName = radioName;
525 }
526 else if (groupName !== radioName) {
527 return false;
528 }
529 }
530 }
531 catch (e_3_1) { e_3 = { error: e_3_1 }; }
532 finally {
533 try {
534 if (radioNames_1_1 && !radioNames_1_1.done && (_a = radioNames_1.return)) _a.call(radioNames_1);
535 }
536 finally { if (e_3) throw e_3.error; }
537 }
538 return true;
539 };
540 /**
541 * Checks if a radio-group harness has the given name. Throws if a radio-group with
542 * matching name could be found but has mismatching radio-button names.
543 */
544 _MatRadioGroupHarnessBase._checkRadioGroupName = function (harness, name) {
545 return __awaiter(this, void 0, void 0, function () {
546 var radioNames;
547 return __generator(this, function (_a) {
548 switch (_a.label) {
549 case 0: return [4 /*yield*/, harness._getGroupNameFromHost()];
550 case 1:
551 // Check if there is a radio-group which has the "name" attribute set
552 // to the expected group name. It's not possible to always determine
553 // the "name" of a radio-group by reading the attribute. This is because
554 // the radio-group does not set the "name" as an element attribute if the
555 // "name" value is set through a binding.
556 if ((_a.sent()) === name) {
557 return [2 /*return*/, true];
558 }
559 return [4 /*yield*/, harness._getNamesFromRadioButtons()];
560 case 2:
561 radioNames = _a.sent();
562 if (radioNames.indexOf(name) === -1) {
563 return [2 /*return*/, false];
564 }
565 if (!harness._checkRadioNamesInGroupEqual(radioNames)) {
566 throw Error("The locator found a radio-group with name \"" + name + "\", but some " +
567 "radio-button's within the group have mismatching names, which is invalid.");
568 }
569 return [2 /*return*/, true];
570 }
571 });
572 });
573 };
574 return _MatRadioGroupHarnessBase;
575 }(testing.ComponentHarness));
576 /** Harness for interacting with a standard mat-radio-group in tests. */
577 var MatRadioGroupHarness = /** @class */ (function (_super) {
578 __extends(MatRadioGroupHarness, _super);
579 function MatRadioGroupHarness() {
580 var _this = _super.apply(this, __spreadArray([], __read(arguments))) || this;
581 _this._buttonClass = MatRadioButtonHarness;
582 return _this;
583 }
584 /**
585 * Gets a `HarnessPredicate` that can be used to search for a `MatRadioGroupHarness` that meets
586 * certain criteria.
587 * @param options Options for filtering which radio group instances are considered a match.
588 * @return a `HarnessPredicate` configured with the given options.
589 */
590 MatRadioGroupHarness.with = function (options) {
591 if (options === void 0) { options = {}; }
592 return new testing.HarnessPredicate(MatRadioGroupHarness, options)
593 .addOption('name', options.name, this._checkRadioGroupName);
594 };
595 return MatRadioGroupHarness;
596 }(_MatRadioGroupHarnessBase));
597 /** The selector for the host element of a `MatRadioGroup` instance. */
598 MatRadioGroupHarness.hostSelector = '.mat-radio-group';
599 var _MatRadioButtonHarnessBase = /** @class */ (function (_super) {
600 __extends(_MatRadioButtonHarnessBase, _super);
601 function _MatRadioButtonHarnessBase() {
602 var _this = _super.apply(this, __spreadArray([], __read(arguments))) || this;
603 _this._input = _this.locatorFor('input');
604 return _this;
605 }
606 /** Whether the radio-button is checked. */
607 _MatRadioButtonHarnessBase.prototype.isChecked = function () {
608 return __awaiter(this, void 0, void 0, function () {
609 var checked, _a;
610 return __generator(this, function (_b) {
611 switch (_b.label) {
612 case 0: return [4 /*yield*/, this._input()];
613 case 1:
614 checked = (_b.sent()).getProperty('checked');
615 _a = coercion.coerceBooleanProperty;
616 return [4 /*yield*/, checked];
617 case 2: return [2 /*return*/, _a.apply(void 0, [_b.sent()])];
618 }
619 });
620 });
621 };
622 /** Whether the radio-button is disabled. */
623 _MatRadioButtonHarnessBase.prototype.isDisabled = function () {
624 return __awaiter(this, void 0, void 0, function () {
625 var disabled, _a;
626 return __generator(this, function (_b) {
627 switch (_b.label) {
628 case 0: return [4 /*yield*/, this._input()];
629 case 1:
630 disabled = (_b.sent()).getAttribute('disabled');
631 _a = coercion.coerceBooleanProperty;
632 return [4 /*yield*/, disabled];
633 case 2: return [2 /*return*/, _a.apply(void 0, [_b.sent()])];
634 }
635 });
636 });
637 };
638 /** Whether the radio-button is required. */
639 _MatRadioButtonHarnessBase.prototype.isRequired = function () {
640 return __awaiter(this, void 0, void 0, function () {
641 var required, _a;
642 return __generator(this, function (_b) {
643 switch (_b.label) {
644 case 0: return [4 /*yield*/, this._input()];
645 case 1:
646 required = (_b.sent()).getAttribute('required');
647 _a = coercion.coerceBooleanProperty;
648 return [4 /*yield*/, required];
649 case 2: return [2 /*return*/, _a.apply(void 0, [_b.sent()])];
650 }
651 });
652 });
653 };
654 /** Gets the radio-button's name. */
655 _MatRadioButtonHarnessBase.prototype.getName = function () {
656 return __awaiter(this, void 0, void 0, function () {
657 return __generator(this, function (_a) {
658 switch (_a.label) {
659 case 0: return [4 /*yield*/, this._input()];
660 case 1: return [2 /*return*/, (_a.sent()).getAttribute('name')];
661 }
662 });
663 });
664 };
665 /** Gets the radio-button's id. */
666 _MatRadioButtonHarnessBase.prototype.getId = function () {
667 return __awaiter(this, void 0, void 0, function () {
668 return __generator(this, function (_a) {
669 switch (_a.label) {
670 case 0: return [4 /*yield*/, this.host()];
671 case 1: return [2 /*return*/, (_a.sent()).getProperty('id')];
672 }
673 });
674 });
675 };
676 /**
677 * Gets the value of the radio-button. The radio-button value will be converted to a string.
678 *
679 * Note: This means that for radio-button's with an object as a value `[object Object]` is
680 * intentionally returned.
681 */
682 _MatRadioButtonHarnessBase.prototype.getValue = function () {
683 return __awaiter(this, void 0, void 0, function () {
684 return __generator(this, function (_a) {
685 switch (_a.label) {
686 case 0: return [4 /*yield*/, this._input()];
687 case 1: return [2 /*return*/, (_a.sent()).getProperty('value')];
688 }
689 });
690 });
691 };
692 /** Gets the radio-button's label text. */
693 _MatRadioButtonHarnessBase.prototype.getLabelText = function () {
694 return __awaiter(this, void 0, void 0, function () {
695 return __generator(this, function (_a) {
696 switch (_a.label) {
697 case 0: return [4 /*yield*/, this._textLabel()];
698 case 1: return [2 /*return*/, (_a.sent()).text()];
699 }
700 });
701 });
702 };
703 /** Focuses the radio-button. */
704 _MatRadioButtonHarnessBase.prototype.focus = function () {
705 return __awaiter(this, void 0, void 0, function () {
706 return __generator(this, function (_a) {
707 switch (_a.label) {
708 case 0: return [4 /*yield*/, this._input()];
709 case 1: return [2 /*return*/, (_a.sent()).focus()];
710 }
711 });
712 });
713 };
714 /** Blurs the radio-button. */
715 _MatRadioButtonHarnessBase.prototype.blur = function () {
716 return __awaiter(this, void 0, void 0, function () {
717 return __generator(this, function (_a) {
718 switch (_a.label) {
719 case 0: return [4 /*yield*/, this._input()];
720 case 1: return [2 /*return*/, (_a.sent()).blur()];
721 }
722 });
723 });
724 };
725 /** Whether the radio-button is focused. */
726 _MatRadioButtonHarnessBase.prototype.isFocused = function () {
727 return __awaiter(this, void 0, void 0, function () {
728 return __generator(this, function (_a) {
729 switch (_a.label) {
730 case 0: return [4 /*yield*/, this._input()];
731 case 1: return [2 /*return*/, (_a.sent()).isFocused()];
732 }
733 });
734 });
735 };
736 /**
737 * Puts the radio-button in a checked state by clicking it if it is currently unchecked,
738 * or doing nothing if it is already checked.
739 */
740 _MatRadioButtonHarnessBase.prototype.check = function () {
741 return __awaiter(this, void 0, void 0, function () {
742 return __generator(this, function (_a) {
743 switch (_a.label) {
744 case 0: return [4 /*yield*/, this.isChecked()];
745 case 1:
746 if (!!(_a.sent())) return [3 /*break*/, 3];
747 return [4 /*yield*/, this._clickLabel()];
748 case 2: return [2 /*return*/, (_a.sent()).click()];
749 case 3: return [2 /*return*/];
750 }
751 });
752 });
753 };
754 return _MatRadioButtonHarnessBase;
755 }(testing.ComponentHarness));
756 /** Harness for interacting with a standard mat-radio-button in tests. */
757 var MatRadioButtonHarness = /** @class */ (function (_super) {
758 __extends(MatRadioButtonHarness, _super);
759 function MatRadioButtonHarness() {
760 var _this = _super.apply(this, __spreadArray([], __read(arguments))) || this;
761 _this._textLabel = _this.locatorFor('.mat-radio-label-content');
762 _this._clickLabel = _this.locatorFor('.mat-radio-label');
763 return _this;
764 }
765 /**
766 * Gets a `HarnessPredicate` that can be used to search for a `MatRadioButtonHarness` that meets
767 * certain criteria.
768 * @param options Options for filtering which radio button instances are considered a match.
769 * @return a `HarnessPredicate` configured with the given options.
770 */
771 MatRadioButtonHarness.with = function (options) {
772 var _this = this;
773 if (options === void 0) { options = {}; }
774 return new testing.HarnessPredicate(MatRadioButtonHarness, options)
775 .addOption('label', options.label, function (harness, label) { return testing.HarnessPredicate.stringMatches(harness.getLabelText(), label); })
776 .addOption('name', options.name, function (harness, name) { return __awaiter(_this, void 0, void 0, function () { return __generator(this, function (_a) {
777 switch (_a.label) {
778 case 0: return [4 /*yield*/, harness.getName()];
779 case 1: return [2 /*return*/, (_a.sent()) === name];
780 }
781 }); }); });
782 };
783 return MatRadioButtonHarness;
784 }(_MatRadioButtonHarnessBase));
785 /** The selector for the host element of a `MatRadioButton` instance. */
786 MatRadioButtonHarness.hostSelector = '.mat-radio-button';
787
788 /**
789 * @license
790 * Copyright Google LLC All Rights Reserved.
791 *
792 * Use of this source code is governed by an MIT-style license that can be
793 * found in the LICENSE file at https://angular.io/license
794 */
795
796 /**
797 * @license
798 * Copyright Google LLC All Rights Reserved.
799 *
800 * Use of this source code is governed by an MIT-style license that can be
801 * found in the LICENSE file at https://angular.io/license
802 */
803
804 exports.MatRadioButtonHarness = MatRadioButtonHarness;
805 exports.MatRadioGroupHarness = MatRadioGroupHarness;
806 exports._MatRadioButtonHarnessBase = _MatRadioButtonHarnessBase;
807 exports._MatRadioGroupHarnessBase = _MatRadioGroupHarnessBase;
808
809 Object.defineProperty(exports, '__esModule', { value: true });
810
811})));
812//# sourceMappingURL=material-radio-testing.umd.js.map
Note: See TracBrowser for help on using the repository browser.