@serenity-js/core 3.23.2 → 3.24.0

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.
Files changed (137) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/lib/errors/ErrorFactory.js +4 -4
  3. package/lib/errors/ErrorFactory.js.map +1 -1
  4. package/lib/errors/RaiseErrors.d.ts +2 -2
  5. package/lib/errors/RaiseErrors.js +2 -2
  6. package/lib/io/index.d.ts +0 -1
  7. package/lib/io/index.d.ts.map +1 -1
  8. package/lib/io/index.js +0 -1
  9. package/lib/io/index.js.map +1 -1
  10. package/lib/io/inspectedObject.js +1 -1
  11. package/lib/io/inspectedObject.js.map +1 -1
  12. package/lib/io/reflection/ValueInspector.d.ts +56 -0
  13. package/lib/io/reflection/ValueInspector.d.ts.map +1 -0
  14. package/lib/io/reflection/ValueInspector.js +149 -0
  15. package/lib/io/reflection/ValueInspector.js.map +1 -0
  16. package/lib/io/reflection/index.d.ts +1 -2
  17. package/lib/io/reflection/index.d.ts.map +1 -1
  18. package/lib/io/reflection/index.js +1 -2
  19. package/lib/io/reflection/index.js.map +1 -1
  20. package/lib/io/stringified.js +7 -90
  21. package/lib/io/stringified.js.map +1 -1
  22. package/lib/screenplay/Activity.d.ts +5 -12
  23. package/lib/screenplay/Activity.d.ts.map +1 -1
  24. package/lib/screenplay/Activity.js +3 -14
  25. package/lib/screenplay/Activity.js.map +1 -1
  26. package/lib/screenplay/Actor.js +1 -1
  27. package/lib/screenplay/Actor.js.map +1 -1
  28. package/lib/screenplay/Interaction.d.ts +4 -3
  29. package/lib/screenplay/Interaction.d.ts.map +1 -1
  30. package/lib/screenplay/Interaction.js +2 -2
  31. package/lib/screenplay/Interaction.js.map +1 -1
  32. package/lib/screenplay/Question.d.ts +73 -21
  33. package/lib/screenplay/Question.d.ts.map +1 -1
  34. package/lib/screenplay/Question.js +237 -30
  35. package/lib/screenplay/Question.js.map +1 -1
  36. package/lib/screenplay/Task.d.ts +16 -15
  37. package/lib/screenplay/Task.d.ts.map +1 -1
  38. package/lib/screenplay/Task.js +14 -14
  39. package/lib/screenplay/Task.js.map +1 -1
  40. package/lib/screenplay/abilities/Ability.d.ts +8 -6
  41. package/lib/screenplay/abilities/Ability.d.ts.map +1 -1
  42. package/lib/screenplay/abilities/Ability.js +8 -6
  43. package/lib/screenplay/abilities/Ability.js.map +1 -1
  44. package/lib/screenplay/abilities/AbilityType.d.ts +3 -3
  45. package/lib/screenplay/abilities/AnswerQuestions.d.ts +0 -1
  46. package/lib/screenplay/abilities/AnswerQuestions.d.ts.map +1 -1
  47. package/lib/screenplay/abilities/AnswerQuestions.js +2 -4
  48. package/lib/screenplay/abilities/AnswerQuestions.js.map +1 -1
  49. package/lib/screenplay/abilities/PerformActivities.d.ts +5 -3
  50. package/lib/screenplay/abilities/PerformActivities.d.ts.map +1 -1
  51. package/lib/screenplay/abilities/PerformActivities.js +12 -10
  52. package/lib/screenplay/abilities/PerformActivities.js.map +1 -1
  53. package/lib/screenplay/artifacts/CollectsArtifacts.d.ts +2 -2
  54. package/lib/screenplay/notes/NotepadAdapter.d.ts.map +1 -1
  55. package/lib/screenplay/notes/NotepadAdapter.js +44 -4
  56. package/lib/screenplay/notes/NotepadAdapter.js.map +1 -1
  57. package/lib/screenplay/questions/Describable.d.ts +27 -0
  58. package/lib/screenplay/questions/Describable.d.ts.map +1 -0
  59. package/lib/screenplay/questions/Describable.js +40 -0
  60. package/lib/screenplay/questions/Describable.js.map +1 -0
  61. package/lib/screenplay/questions/DescriptionFormattingOptions.d.ts +14 -0
  62. package/lib/screenplay/questions/DescriptionFormattingOptions.d.ts.map +1 -0
  63. package/lib/screenplay/questions/DescriptionFormattingOptions.js +3 -0
  64. package/lib/screenplay/questions/DescriptionFormattingOptions.js.map +1 -0
  65. package/lib/screenplay/questions/Expectation.d.ts +6 -10
  66. package/lib/screenplay/questions/Expectation.d.ts.map +1 -1
  67. package/lib/screenplay/questions/Expectation.js +12 -15
  68. package/lib/screenplay/questions/Expectation.js.map +1 -1
  69. package/lib/screenplay/questions/List.d.ts +1 -3
  70. package/lib/screenplay/questions/List.d.ts.map +1 -1
  71. package/lib/screenplay/questions/List.js +6 -31
  72. package/lib/screenplay/questions/List.js.map +1 -1
  73. package/lib/screenplay/questions/Unanswered.d.ts +1 -0
  74. package/lib/screenplay/questions/Unanswered.d.ts.map +1 -1
  75. package/lib/screenplay/questions/Unanswered.js +3 -0
  76. package/lib/screenplay/questions/Unanswered.js.map +1 -1
  77. package/lib/screenplay/questions/expectations/ExpectationDetails.js +1 -1
  78. package/lib/screenplay/questions/expectations/ExpectationDetails.js.map +1 -1
  79. package/lib/screenplay/questions/index.d.ts +3 -1
  80. package/lib/screenplay/questions/index.d.ts.map +1 -1
  81. package/lib/screenplay/questions/index.js +3 -1
  82. package/lib/screenplay/questions/index.js.map +1 -1
  83. package/lib/screenplay/questions/tag-functions.d.ts +228 -0
  84. package/lib/screenplay/questions/tag-functions.d.ts.map +1 -0
  85. package/lib/screenplay/questions/tag-functions.js +115 -0
  86. package/lib/screenplay/questions/tag-functions.js.map +1 -0
  87. package/lib/screenplay/time/activities/Wait.d.ts.map +1 -1
  88. package/lib/screenplay/time/activities/Wait.js +4 -3
  89. package/lib/screenplay/time/activities/Wait.js.map +1 -1
  90. package/package.json +4 -4
  91. package/src/errors/ErrorFactory.ts +5 -5
  92. package/src/errors/RaiseErrors.ts +2 -2
  93. package/src/io/index.ts +0 -1
  94. package/src/io/inspectedObject.ts +2 -2
  95. package/src/io/reflection/ValueInspector.ts +165 -0
  96. package/src/io/reflection/index.ts +1 -2
  97. package/src/io/stringified.ts +7 -103
  98. package/src/screenplay/Activity.ts +6 -17
  99. package/src/screenplay/Actor.ts +2 -2
  100. package/src/screenplay/Interaction.ts +5 -4
  101. package/src/screenplay/Question.ts +299 -49
  102. package/src/screenplay/Task.ts +18 -17
  103. package/src/screenplay/abilities/Ability.ts +8 -6
  104. package/src/screenplay/abilities/AbilityType.ts +3 -3
  105. package/src/screenplay/abilities/AnswerQuestions.ts +2 -5
  106. package/src/screenplay/abilities/PerformActivities.ts +35 -18
  107. package/src/screenplay/artifacts/CollectsArtifacts.ts +2 -2
  108. package/src/screenplay/notes/NotepadAdapter.ts +57 -6
  109. package/src/screenplay/questions/Describable.ts +48 -0
  110. package/src/screenplay/questions/DescriptionFormattingOptions.ts +13 -0
  111. package/src/screenplay/questions/Expectation.ts +19 -19
  112. package/src/screenplay/questions/List.ts +7 -41
  113. package/src/screenplay/questions/Unanswered.ts +4 -0
  114. package/src/screenplay/questions/expectations/ExpectationDetails.ts +2 -2
  115. package/src/screenplay/questions/index.ts +3 -1
  116. package/src/screenplay/questions/tag-functions.ts +313 -0
  117. package/src/screenplay/time/activities/Wait.ts +4 -3
  118. package/lib/io/isPlainObject.d.ts +0 -7
  119. package/lib/io/isPlainObject.d.ts.map +0 -1
  120. package/lib/io/isPlainObject.js +0 -25
  121. package/lib/io/isPlainObject.js.map +0 -1
  122. package/lib/io/reflection/isPrimitive.d.ts +0 -8
  123. package/lib/io/reflection/isPrimitive.d.ts.map +0 -1
  124. package/lib/io/reflection/isPrimitive.js +0 -24
  125. package/lib/io/reflection/isPrimitive.js.map +0 -1
  126. package/lib/io/reflection/typeOf.d.ts +0 -7
  127. package/lib/io/reflection/typeOf.d.ts.map +0 -1
  128. package/lib/io/reflection/typeOf.js +0 -35
  129. package/lib/io/reflection/typeOf.js.map +0 -1
  130. package/lib/screenplay/questions/q.d.ts +0 -66
  131. package/lib/screenplay/questions/q.d.ts.map +0 -1
  132. package/lib/screenplay/questions/q.js +0 -77
  133. package/lib/screenplay/questions/q.js.map +0 -1
  134. package/src/io/isPlainObject.ts +0 -24
  135. package/src/io/reflection/isPrimitive.ts +0 -20
  136. package/src/io/reflection/typeOf.ts +0 -31
  137. package/src/screenplay/questions/q.ts +0 -82
@@ -3,15 +3,17 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Expectation = void 0;
4
4
  const io_1 = require("../../io");
5
5
  const __1 = require("../");
6
+ const index_1 = require("../index");
7
+ const Question_1 = require("../Question");
8
+ const questions_1 = require("../questions");
6
9
  /**
7
10
  * Defines an expectation to be used with {@apilink @apilink Wait.until}, {@apilink Check.whether}, {@apilink Ensure.that}
8
11
  * and as part of the Page Element Query Language with {@apilink PageElements.where} and {@apilink List.where}.
9
12
  *
10
13
  * @group Expectations
11
14
  */
12
- class Expectation {
15
+ class Expectation extends questions_1.Describable {
13
16
  functionName;
14
- description;
15
17
  predicate;
16
18
  /**
17
19
  * A factory method to that makes defining custom {@apilink Expectation|expectations} easier
@@ -101,19 +103,20 @@ class Expectation {
101
103
  static define(functionName, relationship, predicate) {
102
104
  return Object.defineProperty(function (...answerableArguments) {
103
105
  const description = typeof relationship === 'function' ? relationship(...answerableArguments)
104
- : (answerableArguments.length === 1 ? relationship.trim() + (0, io_1.d) ` ${answerableArguments[0]}`
106
+ : (answerableArguments.length === 1 ? (0, index_1.the) `${{ toString: () => relationship }} ${answerableArguments[0]}`
105
107
  : relationship);
106
108
  return new Expectation(functionName, description, async (actor, actualValue) => {
107
109
  const predicateArguments = await (0, io_1.asyncMap)(answerableArguments, answerableArgument => actor.answer(answerableArgument));
108
110
  const actual = await actor.answer(actualValue);
109
111
  const result = await predicate(actual, ...predicateArguments);
112
+ const descriptionText = await actor.answer(description);
110
113
  const expectationDetails = __1.ExpectationDetails.of(functionName, ...predicateArguments);
111
114
  const expected = predicateArguments.length > 0
112
115
  ? predicateArguments[0]
113
116
  : true; // the only parameter-less expectations are boolean ones like `isPresent`, `isActive`, etc.
114
117
  return result
115
- ? new __1.ExpectationMet(description, expectationDetails, expected, actual)
116
- : new __1.ExpectationNotMet(description, expectationDetails, expected, actual);
118
+ ? new __1.ExpectationMet(descriptionText, expectationDetails, expected, actual)
119
+ : new __1.ExpectationNotMet(descriptionText, expectationDetails, expected, actual);
117
120
  });
118
121
  }, 'name', { value: functionName, writable: false });
119
122
  }
@@ -199,8 +202,8 @@ class Expectation {
199
202
  };
200
203
  }
201
204
  constructor(functionName, description, predicate) {
205
+ super(description);
202
206
  this.functionName = functionName;
203
- this.description = description;
204
207
  this.predicate = predicate;
205
208
  }
206
209
  /**
@@ -211,21 +214,15 @@ class Expectation {
211
214
  * @param actual
212
215
  */
213
216
  isMetFor(actual) {
214
- return __1.Question.about(this.description, actor => this.predicate(actor, actual));
217
+ return Question_1.Question.about(this.getDescription(), actor => this.predicate(actor, actual));
215
218
  }
216
219
  /**
217
220
  * @inheritDoc
218
221
  */
219
- describedAs(subject) {
220
- this.description = subject;
222
+ describedAs(description) {
223
+ super.setDescription(description);
221
224
  return this;
222
225
  }
223
- /**
224
- * @inheritDoc
225
- */
226
- toString() {
227
- return this.description;
228
- }
229
226
  }
230
227
  exports.Expectation = Expectation;
231
228
  //# sourceMappingURL=Expectation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Expectation.js","sourceRoot":"","sources":["../../../src/screenplay/questions/Expectation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Expectation.js","sourceRoot":"","sources":["../../../src/screenplay/questions/Expectation.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,7 @@ import type { Expectation } from './Expectation';
12
12
  *
13
13
  * @group Questions
14
14
  */
15
- export declare abstract class List<Item_Type> extends Question<Promise<Item_Type[]>> {
15
+ export declare abstract class List<Item_Type> extends Question<Promise<Array<Item_Type>>> {
16
16
  protected readonly collection: Answerable<Array<Item_Type>>;
17
17
  protected subject?: string;
18
18
  static of<IT, CT, RQT extends (Question<Promise<Array<IT>>> | Question<Array<IT>>)>(collection: Answerable<Array<IT>> & ChainableMetaQuestion<CT, RQT>): MetaList<CT, IT>;
@@ -26,8 +26,6 @@ export declare abstract class List<Item_Type> extends Question<Promise<Item_Type
26
26
  abstract last(): QuestionAdapter<Item_Type>;
27
27
  abstract nth(index: number): QuestionAdapter<Item_Type>;
28
28
  answeredBy(actor: AnswersQuestions & UsesAbilities): Promise<Array<Item_Type>>;
29
- describedAs(subject: string): this;
30
- toString(): string;
31
29
  /**
32
30
  * @param {number} index
33
31
  */
@@ -1 +1 @@
1
- {"version":3,"file":"List.d.ts","sourceRoot":"","sources":["../../../src/screenplay/questions/List.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"List.d.ts","sourceRoot":"","sources":["../../../src/screenplay/questions/List.ts"],"names":[],"mappings":"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"}
@@ -22,7 +22,7 @@ class List extends Question_1.Question {
22
22
  return new ArrayList(collection);
23
23
  }
24
24
  constructor(collection) {
25
- super();
25
+ super((0, io_1.d) `${collection}`);
26
26
  this.collection = collection;
27
27
  }
28
28
  forEach(callback) {
@@ -35,13 +35,6 @@ class List extends Question_1.Question {
35
35
  }
36
36
  return collection;
37
37
  }
38
- describedAs(subject) {
39
- this.subject = subject;
40
- return this;
41
- }
42
- toString() {
43
- return this.subject ?? (0, io_1.d) `${this.collection}`;
44
- }
45
38
  /**
46
39
  * @param {number} index
47
40
  */
@@ -193,16 +186,14 @@ class Where extends Question_1.Question {
193
186
  collection;
194
187
  question;
195
188
  expectation;
196
- subject;
197
189
  constructor(collection, question, expectation, originalSubject) {
198
- super();
190
+ const prefix = collection instanceof Where
191
+ ? ' and'
192
+ : ' where';
193
+ super(originalSubject + prefix + (0, io_1.d) ` ${question} does ${expectation}`);
199
194
  this.collection = collection;
200
195
  this.question = question;
201
196
  this.expectation = expectation;
202
- const prefix = this.collection instanceof Where
203
- ? ' and'
204
- : ' where';
205
- this.subject = originalSubject + prefix + (0, io_1.d) ` ${question} does ${expectation}`;
206
197
  }
207
198
  async answeredBy(actor) {
208
199
  try {
@@ -221,13 +212,6 @@ class Where extends Question_1.Question {
221
212
  throw new errors_1.LogicError((0, io_1.d) `Couldn't check if ${this.question} of an item of ${this.collection} does ${this.expectation}: ` + error.message, error);
222
213
  }
223
214
  }
224
- describedAs(subject) {
225
- this.subject = subject;
226
- return this;
227
- }
228
- toString() {
229
- return this.subject;
230
- }
231
215
  }
232
216
  /**
233
217
  * @package
@@ -243,12 +227,10 @@ class MetaWhere extends Where {
243
227
  class EachMappedTo extends Question_1.Question {
244
228
  collection;
245
229
  mapping;
246
- subject;
247
230
  constructor(collection, mapping, originalSubject) {
248
- super();
231
+ super(originalSubject + (0, io_1.d) ` mapped to ${mapping}`);
249
232
  this.collection = collection;
250
233
  this.mapping = mapping;
251
- this.subject = originalSubject + (0, io_1.d) ` mapped to ${this.mapping}`;
252
234
  }
253
235
  async answeredBy(actor) {
254
236
  const collection = await actor.answer(this.collection);
@@ -258,13 +240,6 @@ class EachMappedTo extends Question_1.Question {
258
240
  }
259
241
  return mapped;
260
242
  }
261
- describedAs(subject) {
262
- this.subject = subject;
263
- return this;
264
- }
265
- toString() {
266
- return this.subject;
267
- }
268
243
  }
269
244
  /**
270
245
  * @package
@@ -1 +1 @@
1
- {"version":3,"file":"List.js","sourceRoot":"","sources":["../../../src/screenplay/questions/List.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"List.js","sourceRoot":"","sources":["../../../src/screenplay/questions/List.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ import * as util from 'util';
14
14
  * @group Questions
15
15
  */
16
16
  export declare class Unanswered extends TinyType {
17
+ static isUnanswered(value: unknown): value is Unanswered;
17
18
  [util.inspect.custom](): string;
18
19
  toString(): string;
19
20
  toJSON(): JSONValue;
@@ -1 +1 @@
1
- {"version":3,"file":"Unanswered.d.ts","sourceRoot":"","sources":["../../../src/screenplay/questions/Unanswered.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,SAAS,EAAC,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B;;;;;;;;;;GAUG;AACH,qBAAa,UAAW,SAAQ,QAAQ;IACpC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM;IAI/B,QAAQ,IAAI,MAAM;IAIlB,MAAM,IAAI,SAAS;CAGtB"}
1
+ {"version":3,"file":"Unanswered.d.ts","sourceRoot":"","sources":["../../../src/screenplay/questions/Unanswered.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,SAAS,EAAC,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B;;;;;;;;;;GAUG;AACH,qBAAa,UAAW,SAAQ,QAAQ;IACpC,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,UAAU;IAIxD,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM;IAI/B,QAAQ,IAAI,MAAM;IAIlB,MAAM,IAAI,SAAS;CAGtB"}
@@ -38,6 +38,9 @@ const util = __importStar(require("util")); // eslint-disable-line unicorn/impor
38
38
  * @group Questions
39
39
  */
40
40
  class Unanswered extends tiny_types_1.TinyType {
41
+ static isUnanswered(value) {
42
+ return value instanceof Unanswered;
43
+ }
41
44
  [util.inspect.custom]() {
42
45
  return `<<unanswered>>`;
43
46
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Unanswered.js","sourceRoot":"","sources":["../../../src/screenplay/questions/Unanswered.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,2CAAsC;AACtC,2CAA6B,CAAG,2CAA2C;AAE3E;;;;;;;;;;GAUG;AACH,MAAa,UAAW,SAAQ,qBAAQ;IACpC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QACjB,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAED,QAAQ;QACJ,OAAO,YAAY,CAAC;IACxB,CAAC;IAED,MAAM;QACF,OAAO,SAAS,CAAC,CAAG,mDAAmD;IAC3E,CAAC;CACJ;AAZD,gCAYC"}
1
+ {"version":3,"file":"Unanswered.js","sourceRoot":"","sources":["../../../src/screenplay/questions/Unanswered.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,2CAAsC;AACtC,2CAA6B,CAAG,2CAA2C;AAE3E;;;;;;;;;;GAUG;AACH,MAAa,UAAW,SAAQ,qBAAQ;IACpC,MAAM,CAAC,YAAY,CAAC,KAAc;QAC9B,OAAO,KAAK,YAAY,UAAU,CAAC;IACvC,CAAC;IAED,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QACjB,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAED,QAAQ;QACJ,OAAO,YAAY,CAAC;IACxB,CAAC;IAED,MAAM;QACF,OAAO,SAAS,CAAC,CAAG,mDAAmD;IAC3E,CAAC;CACJ;AAhBD,gCAgBC"}
@@ -45,7 +45,7 @@ class ExpectationDetails extends tiny_types_1.TinyType {
45
45
  return {
46
46
  name: this.name.value,
47
47
  args: this.args.map(arg => ({
48
- type: (0, io_1.typeOf)(arg),
48
+ type: io_1.ValueInspector.typeOf(arg),
49
49
  value: arg['toJSON']
50
50
  ? arg.toJSON()
51
51
  : arg,
@@ -1 +1 @@
1
- {"version":3,"file":"ExpectationDetails.js","sourceRoot":"","sources":["../../../../src/screenplay/questions/expectations/ExpectationDetails.ts"],"names":[],"mappings":";;;AACA,2CAAkE;AAElE,oCAAgD;AAChD,0CAAsC;AACtC,8CAA2C;AAE3C;;;;GAIG;AACH,MAAa,kBAAmB,SAAQ,qBAAQ;IAuBxB;IACA;IAtBpB,MAAM,CAAC,EAAE,CAAC,YAAoB,EAAE,GAAG,iBAAqE;QACpG,OAAO,IAAI,kBAAkB,CAAC,IAAI,YAAI,CAAC,YAAY,CAAC,EAAE,iBAAiB,CAAC,CAAC;IAC7E,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,CAAa;QACzB,OAAO,IAAI,kBAAkB,CACzB,YAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAc,CAAC,EAC9B,CAAC,CAAC,IAAkD,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YAC5D,IAAI,GAAG,CAAC,IAAI,KAAK,uBAAU,CAAC,IAAI,EAAE;gBAC9B,OAAO,IAAI,uBAAU,EAAE,CAAC;aAC3B;YACD,IAAI,GAAG,CAAC,IAAI,KAAK,kBAAkB,CAAC,IAAI,EAAE;gBACtC,OAAO,kBAAkB,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAmB,CAAC,CAAA;aAC9D;YACD,2BAA2B;YAC3B,OAAO,GAAG,CAAC,KAAK,CAAC;QACrB,CAAC,CAAC,CACL,CAAC;IACN,CAAC;IAED,YACoB,IAAU,EACV,IAAwD;QAExE,KAAK,EAAE,CAAC;QAHQ,SAAI,GAAJ,IAAI,CAAM;QACV,SAAI,GAAJ,IAAI,CAAoD;QAGxE,IAAA,mBAAM,EAAC,MAAM,EAAE,IAAI,EAAE,IAAA,sBAAS,GAAE,CAAC,CAAC;QAClC,IAAA,mBAAM,EAAC,MAAM,EAAE,IAAI,EAAE,IAAA,oBAAO,GAAE,CAAC,CAAC;IACpC,CAAC;IAED,QAAQ;QACJ,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CACvC,GAAG,YAAY,kBAAkB;YAC7B,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE;YAChB,CAAC,CAAC,IAAA,cAAS,EAAC,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAC1C,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEb,OAAO,GAAI,IAAI,CAAC,IAAI,CAAC,KAAM,IAAK,cAAe,GAAG,CAAC;IACvD,CAAC;IAED,MAAM;QACF,OAAO;YACH,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACxB,IAAI,EAAE,IAAA,WAAM,EAAC,GAAG,CAAC;gBACjB,KAAK,EAAE,GAAG,CAAC,QAAQ,CAAC;oBAChB,CAAC,CAAE,GAAW,CAAC,MAAM,EAAE;oBACvB,CAAC,CAAC,GAAG;aACZ,CAAC,CAAC;SACN,CAAA;IACL,CAAC;CACJ;AApDD,gDAoDC"}
1
+ {"version":3,"file":"ExpectationDetails.js","sourceRoot":"","sources":["../../../../src/screenplay/questions/expectations/ExpectationDetails.ts"],"names":[],"mappings":";;;AACA,2CAAkE;AAElE,oCAAwD;AACxD,0CAAsC;AACtC,8CAA2C;AAE3C;;;;GAIG;AACH,MAAa,kBAAmB,SAAQ,qBAAQ;IAuBxB;IACA;IAtBpB,MAAM,CAAC,EAAE,CAAC,YAAoB,EAAE,GAAG,iBAAqE;QACpG,OAAO,IAAI,kBAAkB,CAAC,IAAI,YAAI,CAAC,YAAY,CAAC,EAAE,iBAAiB,CAAC,CAAC;IAC7E,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,CAAa;QACzB,OAAO,IAAI,kBAAkB,CACzB,YAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAc,CAAC,EAC9B,CAAC,CAAC,IAAkD,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YAC5D,IAAI,GAAG,CAAC,IAAI,KAAK,uBAAU,CAAC,IAAI,EAAE;gBAC9B,OAAO,IAAI,uBAAU,EAAE,CAAC;aAC3B;YACD,IAAI,GAAG,CAAC,IAAI,KAAK,kBAAkB,CAAC,IAAI,EAAE;gBACtC,OAAO,kBAAkB,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAmB,CAAC,CAAA;aAC9D;YACD,2BAA2B;YAC3B,OAAO,GAAG,CAAC,KAAK,CAAC;QACrB,CAAC,CAAC,CACL,CAAC;IACN,CAAC;IAED,YACoB,IAAU,EACV,IAAwD;QAExE,KAAK,EAAE,CAAC;QAHQ,SAAI,GAAJ,IAAI,CAAM;QACV,SAAI,GAAJ,IAAI,CAAoD;QAGxE,IAAA,mBAAM,EAAC,MAAM,EAAE,IAAI,EAAE,IAAA,sBAAS,GAAE,CAAC,CAAC;QAClC,IAAA,mBAAM,EAAC,MAAM,EAAE,IAAI,EAAE,IAAA,oBAAO,GAAE,CAAC,CAAC;IACpC,CAAC;IAED,QAAQ;QACJ,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CACvC,GAAG,YAAY,kBAAkB;YAC7B,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE;YAChB,CAAC,CAAC,IAAA,cAAS,EAAC,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAC1C,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEb,OAAO,GAAI,IAAI,CAAC,IAAI,CAAC,KAAM,IAAK,cAAe,GAAG,CAAC;IACvD,CAAC;IAED,MAAM;QACF,OAAO;YACH,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACxB,IAAI,EAAE,mBAAc,CAAC,MAAM,CAAC,GAAG,CAAC;gBAChC,KAAK,EAAE,GAAG,CAAC,QAAQ,CAAC;oBAChB,CAAC,CAAE,GAAW,CAAC,MAAM,EAAE;oBACvB,CAAC,CAAC,GAAG;aACZ,CAAC,CAAC;SACN,CAAA;IACL,CAAC;CACJ;AApDD,gDAoDC"}
@@ -1,11 +1,13 @@
1
1
  export * from './AnswersQuestions';
2
2
  export * from './ChainableMetaQuestion';
3
3
  export * from './Check';
4
+ export * from './Describable';
5
+ export * from './DescriptionFormattingOptions';
4
6
  export * from './Expectation';
5
7
  export * from './expectations';
6
8
  export * from './List';
7
9
  export * from './Masked';
8
10
  export * from './MetaQuestion';
9
- export * from './q';
11
+ export * from './tag-functions';
10
12
  export * from './Unanswered';
11
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/screenplay/questions/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,KAAK,CAAC;AACpB,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/screenplay/questions/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC;AAC9B,cAAc,gCAAgC,CAAC;AAC/C,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC"}
@@ -17,11 +17,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./AnswersQuestions"), exports);
18
18
  __exportStar(require("./ChainableMetaQuestion"), exports);
19
19
  __exportStar(require("./Check"), exports);
20
+ __exportStar(require("./Describable"), exports);
21
+ __exportStar(require("./DescriptionFormattingOptions"), exports);
20
22
  __exportStar(require("./Expectation"), exports);
21
23
  __exportStar(require("./expectations"), exports);
22
24
  __exportStar(require("./List"), exports);
23
25
  __exportStar(require("./Masked"), exports);
24
26
  __exportStar(require("./MetaQuestion"), exports);
25
- __exportStar(require("./q"), exports);
27
+ __exportStar(require("./tag-functions"), exports);
26
28
  __exportStar(require("./Unanswered"), exports);
27
29
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/screenplay/questions/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,0DAAwC;AACxC,0CAAwB;AACxB,gDAA8B;AAC9B,iDAA+B;AAC/B,yCAAuB;AACvB,2CAAyB;AACzB,iDAA+B;AAC/B,sCAAoB;AACpB,+CAA6B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/screenplay/questions/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,0DAAwC;AACxC,0CAAwB;AACxB,gDAA8B;AAC9B,iEAA+C;AAC/C,gDAA8B;AAC9B,iDAA+B;AAC/B,yCAAuB;AACvB,2CAAyB;AACzB,iDAA+B;AAC/B,kDAAgC;AAChC,+CAA6B"}
@@ -0,0 +1,228 @@
1
+ import type { Answerable } from '../Answerable';
2
+ import type { MetaQuestionAdapter, QuestionAdapter } from '../Question';
3
+ import type { DescriptionFormattingOptions } from './DescriptionFormattingOptions';
4
+ import type { MetaQuestion } from './MetaQuestion';
5
+ /**
6
+ * Creates a single-line description of an {@apilink Activity} by transforming
7
+ * a [template literal](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals#Tagged_templates),
8
+ * parameterised with [primitive data types](https://developer.mozilla.org/en-US/docs/Glossary/Primitive),
9
+ * [complex data structures](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures#objects),
10
+ * or any other {@apilink Answerable|Answerables}, into a {@link QuestionAdapter|`QuestionAdapter<string>`}
11
+ * that can be used with {@apilink Task.where} and {@apilink Interaction.where} methods.
12
+ *
13
+ * ```ts
14
+ * const dial = (phoneNumber: Answerable<string>) =>
15
+ * Task.where(the `#actor dials ${ phoneNumber }`, /* *\/)
16
+ *
17
+ * await actorCalled('Alice').attemptsTo(
18
+ * dial('(555) 123-4567'),
19
+ * // reported as: Alice dials "(555) 123-4567"
20
+ * )
21
+ * ```
22
+ *
23
+ * ## Trimming the output
24
+ *
25
+ * Use {@apilink DescriptionFormattingOptions} to trim the descriptions of template parameters.
26
+ * By default, the output is displayed in full.
27
+ *
28
+ * ```ts
29
+ * import { actorCalled, Task, the } from '@serenity-js/core'
30
+ *
31
+ * const dial = (phoneNumber: Answerable<string>) =>
32
+ * Task.where(dial({ maxLength: 10 }) `#actor dials ${ phoneNumber }`, /* *\/)
33
+ *
34
+ * await actorCalled('Alice').attemptsTo(
35
+ * dial('(555) 123-4567'),
36
+ * // reported as: Alice dials "(555) 123-...'
37
+ * )
38
+ * ```
39
+ *
40
+ * ## Using with Questions
41
+ *
42
+ * When `the` is parameterised with {@apilink Question|Questions},
43
+ * it retrieves their description by calling {@apilink Question.describedBy}
44
+ * in the context of the {@apilink Actor} performing the {@apilink Activity}.
45
+ *
46
+ * ```ts
47
+ * import { actorCalled, Question, Task, the } from '@serenity-js/core'
48
+ *
49
+ * const phoneNumber = (areaCode: string, centralOfficeCode: string, lineNumber: string) =>
50
+ * Question.about('phone number', actor => {
51
+ * return `(${ this.areaCode }) ${ this.centralOfficeCode }-${ this.lineNumber }`
52
+ * })
53
+ *
54
+ * const dial = (phoneNumber: Answerable<string>) =>
55
+ * Task.where(dial({ maxLength: 10 }) `#actor dials ${ phoneNumber }`, /* *\/)
56
+ *
57
+ * await actorCalled('Alice').attemptsTo(
58
+ * dial(phoneNumber('555', '123', '4567'),
59
+ * // reported as: Alice dials phone number
60
+ * )
61
+ * ```
62
+ *
63
+ * If you'd like the question to be described using its formatted value instead of its description, use {@apilink Question.formattedValue}.
64
+ *
65
+ * ```ts
66
+ * import { actorCalled, Question, Task, the } from '@serenity-js/core'
67
+ *
68
+ * const phoneNumber = (areaCode: string, centralOfficeCode: string, lineNumber: string) =>
69
+ * Question.about('phone number', actor => {
70
+ * return `(${ this.areaCode }) ${ this.centralOfficeCode }-${ this.lineNumber }`
71
+ * }).describedAs(Question.formattedValue())
72
+ *
73
+ * const dial = (phoneNumber: Answerable<string>) =>
74
+ * Task.where(dial({ maxLength: 10 }) `#actor dials ${ phoneNumber }`, /* *\/)
75
+ *
76
+ * await actorCalled('Alice').attemptsTo(
77
+ * dial(phoneNumber('555', '123', '4567'),
78
+ * // reported as: Alice dials "(555) 123-4567"
79
+ * )
80
+ * ```
81
+ *
82
+ * ## Using with objects with a custom `toString` method
83
+ *
84
+ * When `the` is parameterised with objects that have
85
+ * a custom [`toString()`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/toString) method,
86
+ * or {@link Answerable|Answerables} resolving to such objects, the `toString()` method is called to produce the resulting description.
87
+ *
88
+ * ```ts
89
+ * import { actorCalled, description, Task } from '@serenity-js/core'
90
+ *
91
+ * class PhoneNumber {
92
+ * constructor(
93
+ * private readonly areaCode: string,
94
+ * private readonly centralOfficeCode: string,
95
+ * private readonly lineNumber: string,
96
+ * ) {}
97
+ *
98
+ * toString() {
99
+ * return `(${ this.areaCode }) ${ this.centralOfficeCode }-${ this.lineNumber }`
100
+ * }
101
+ * }
102
+ *
103
+ * const dial = (phoneNumber: Answerable<PhoneNumber>) =>
104
+ * Task.where(description `#actor dials ${ phoneNumber }`, /* *\/)
105
+ *
106
+ * await actorCalled('Alice').attemptsTo(
107
+ * dial(new PhoneNumber('555', '123', '4567')),
108
+ * // reported as: Alice dials (555) 123-4567
109
+ * )
110
+ * ```
111
+ *
112
+ * ## Using with objects without a custom `toString` method
113
+ *
114
+ * When `the` is parameterised with complex objects that don't have a custom `toString()` method,
115
+ * or {@link Answerable}s resolving to such objects,
116
+ * the resulting description will contain a JSON-like string representation of the object.
117
+ *
118
+ * ```ts
119
+ * import { actorCalled, description, Task } from '@serenity-js/core'
120
+ *
121
+ * interface PhoneNumber {
122
+ * areaCode: string;
123
+ * centralOfficeCode: string;
124
+ * lineNumber: string;
125
+ * }
126
+ *
127
+ * const dial = (phoneNumber: Answerable<PhoneNumber>) =>
128
+ * Task.where(the `#actor dials ${ phoneNumber }`, /* *\/)
129
+ *
130
+ * await actorCalled('Alice').attemptsTo(
131
+ * dial({ areaCode: '555', centralOfficeCode: '123', lineNumber: '4567' }),
132
+ * // reported as: Alice dials { areaCode: "555", centralOfficeCode: "123", lineNumber: "4567" }
133
+ * )
134
+ * ```
135
+ *
136
+ * ## Using with masked values
137
+ *
138
+ * When `the` is parameterised with {@apilink Masked} values,
139
+ * the resulting description will contain a masked representation of the values.
140
+ *
141
+ * ```ts
142
+ * import { actorCalled, description, Task } from '@serenity-js/core'
143
+ *
144
+ * const dial = (phoneNumber: Answerable<string>) =>
145
+ * Task.where(description `#actor dials ${ phoneNumber }`, /* *\/)
146
+ *
147
+ * await actorCalled('Alice').attemptsTo(
148
+ * dial(Masked.valueOf('(555) 123-4567')),
149
+ * // reported as: Alice dials [a masked value]
150
+ * )
151
+ * ```
152
+ *
153
+ * ## Learn more
154
+ *
155
+ * - {@apilink Answerable}
156
+ * - {@apilink Question}
157
+ * - {@apilink Question.describedAs}
158
+ * - {@apilink QuestionAdapter}
159
+ * - {@apilink Masked}
160
+ *
161
+ * @group Questions
162
+ */
163
+ export declare function the(options: DescriptionFormattingOptions): <Supported_Context_Type>(templates: TemplateStringsArray, ...placeholders: Array<MetaQuestion<Supported_Context_Type, any> | any>) => MetaQuestionAdapter<Supported_Context_Type, string>;
164
+ export declare function the<Supported_Context_Type>(templates: TemplateStringsArray, ...parameters: Array<MetaQuestion<Supported_Context_Type, any> | any>): MetaQuestionAdapter<Supported_Context_Type, string>;
165
+ /**
166
+ * A Serenity/JS Screenplay Pattern-flavour
167
+ * of a [tagged template literal](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals#Tagged_templates),
168
+ * `q` is a tag function capable of resolving any `Answerable<string>` or `Answerable<number>`
169
+ * you parametrise it with, and returning a `QuestionAdapter<string>`.
170
+ *
171
+ * Use `q` to concatenate `string` and `number` values returned from synchronous an asynchronous sources.
172
+ *
173
+ * ## Interpolating questions
174
+ *
175
+ * ```ts
176
+ * import { q, actorCalled } from '@serenity-js/core'
177
+ * import { Send, DeleteRequest } from '@serenity-js/rest'
178
+ * import { Text } from '@serenity-js/web'
179
+ *
180
+ * await actorCalled('Alice').attemptsTo(
181
+ * Send.a(DeleteRequest.to(
182
+ * q `/articles/${ Text.of(Article.id()) }`
183
+ * ))
184
+ * )
185
+ * ```
186
+ *
187
+ * ## Using a custom description
188
+ *
189
+ * ```ts
190
+ * import { q, actorCalled } from '@serenity-js/core'
191
+ * import { Send, DeleteRequest } from '@serenity-js/rest'
192
+ *
193
+ * await actorCalled('Alice').attemptsTo(
194
+ * Send.a(DeleteRequest.to(
195
+ * q `/articles/${ Text.of(Article.id()) }`.describedAs('/articles/:id')
196
+ * ))
197
+ * )
198
+ * ```
199
+ *
200
+ * ## Transforming the interpolated string
201
+ *
202
+ * The mechanism presented below relies on {@apilink QuestionAdapter}.
203
+ *
204
+ * ```ts
205
+ * import { q, actorCalled } from '@serenity-js/core'
206
+ * import { Send, DeleteRequest } from '@serenity-js/rest'
207
+ *
208
+ * await actorCalled('Alice').attemptsTo(
209
+ * Send.a(DeleteRequest.to(
210
+ * q `/articles/${ Text.of(Article.id()) }`.toLocaleLowerCase()
211
+ * ))
212
+ * )
213
+ * ```
214
+ *
215
+ * ## Learn more
216
+ *
217
+ * - {@apilink Answerable}
218
+ * - {@apilink Question}
219
+ * - {@apilink Question.describedAs}
220
+ * - {@apilink QuestionAdapter}
221
+ *
222
+ * @group Questions
223
+ *
224
+ * @param templates
225
+ * @param parameters
226
+ */
227
+ export declare function q(templates: TemplateStringsArray, ...parameters: Array<Answerable<string | number>>): QuestionAdapter<string>;
228
+ //# sourceMappingURL=tag-functions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tag-functions.d.ts","sourceRoot":"","sources":["../../../src/screenplay/questions/tag-functions.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,KAAK,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAIxE,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AACnF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEnD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6JG;AACH,wBAAgB,GAAG,CAAC,OAAO,EAAE,4BAA4B,GAAG,CAAC,sBAAsB,EAAE,SAAS,EAAE,oBAAoB,EAAE,GAAG,YAAY,EAAE,KAAK,CAAC,YAAY,CAAC,sBAAsB,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC,KAAK,mBAAmB,CAAC,sBAAsB,EAAE,MAAM,CAAC,CAAA;AACrP,wBAAgB,GAAG,CAAC,sBAAsB,EAAE,SAAS,EAAE,oBAAoB,EAAE,GAAG,UAAU,EAAE,KAAK,CAAC,YAAY,CAAC,sBAAsB,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,mBAAmB,CAAC,sBAAsB,EAAE,MAAM,CAAC,CAAA;AAYxM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6DG;AACH,wBAAgB,CAAC,CAAC,SAAS,EAAE,oBAAoB,EAAE,GAAG,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,GAAG,eAAe,CAAC,MAAM,CAAC,CAc7H"}