@anddone/coretestautomation 1.0.1

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 (72) hide show
  1. package/.github/workflows/npm-release.yml +102 -0
  2. package/dist/api/base.api.d.ts +32 -0
  3. package/dist/api/base.api.d.ts.map +1 -0
  4. package/dist/api/base.api.js +7 -0
  5. package/dist/api/base.api.js.map +1 -0
  6. package/dist/api/headers.d.ts +6 -0
  7. package/dist/api/headers.d.ts.map +1 -0
  8. package/dist/api/headers.js +23 -0
  9. package/dist/api/headers.js.map +1 -0
  10. package/dist/index.d.ts +13 -0
  11. package/dist/index.d.ts.map +1 -0
  12. package/dist/index.js +29 -0
  13. package/dist/index.js.map +1 -0
  14. package/dist/pages/basepage.d.ts +6 -0
  15. package/dist/pages/basepage.d.ts.map +1 -0
  16. package/dist/pages/basepage.js +10 -0
  17. package/dist/pages/basepage.js.map +1 -0
  18. package/dist/testData/api.data.json +6 -0
  19. package/dist/utils/apiUtils.d.ts +123 -0
  20. package/dist/utils/apiUtils.d.ts.map +1 -0
  21. package/dist/utils/apiUtils.js +264 -0
  22. package/dist/utils/apiUtils.js.map +1 -0
  23. package/dist/utils/assertionUtils.d.ts +223 -0
  24. package/dist/utils/assertionUtils.d.ts.map +1 -0
  25. package/dist/utils/assertionUtils.js +400 -0
  26. package/dist/utils/assertionUtils.js.map +1 -0
  27. package/dist/utils/commonUtils.d.ts +590 -0
  28. package/dist/utils/commonUtils.d.ts.map +1 -0
  29. package/dist/utils/commonUtils.js +1292 -0
  30. package/dist/utils/commonUtils.js.map +1 -0
  31. package/dist/utils/fakerStaticData.d.ts +16 -0
  32. package/dist/utils/fakerStaticData.d.ts.map +1 -0
  33. package/dist/utils/fakerStaticData.js +88 -0
  34. package/dist/utils/fakerStaticData.js.map +1 -0
  35. package/dist/utils/fileCommonUtils.d.ts +22 -0
  36. package/dist/utils/fileCommonUtils.d.ts.map +1 -0
  37. package/dist/utils/fileCommonUtils.js +243 -0
  38. package/dist/utils/fileCommonUtils.js.map +1 -0
  39. package/dist/utils/generationUtils.d.ts +424 -0
  40. package/dist/utils/generationUtils.d.ts.map +1 -0
  41. package/dist/utils/generationUtils.js +869 -0
  42. package/dist/utils/generationUtils.js.map +1 -0
  43. package/dist/utils/pageUtils.d.ts +90 -0
  44. package/dist/utils/pageUtils.d.ts.map +1 -0
  45. package/dist/utils/pageUtils.js +214 -0
  46. package/dist/utils/pageUtils.js.map +1 -0
  47. package/dist/utils/tableUtils.d.ts +304 -0
  48. package/dist/utils/tableUtils.d.ts.map +1 -0
  49. package/dist/utils/tableUtils.js +555 -0
  50. package/dist/utils/tableUtils.js.map +1 -0
  51. package/dist/utils/validationUtils.d.ts +80 -0
  52. package/dist/utils/validationUtils.d.ts.map +1 -0
  53. package/dist/utils/validationUtils.js +172 -0
  54. package/dist/utils/validationUtils.js.map +1 -0
  55. package/package.json +23 -0
  56. package/playwright.config.ts +79 -0
  57. package/src/api/base.api.ts +39 -0
  58. package/src/api/headers.ts +17 -0
  59. package/src/index.ts +12 -0
  60. package/src/pages/basepage.ts +11 -0
  61. package/src/testData/api.data.json +6 -0
  62. package/src/types/pdf-parse.d.ts +6 -0
  63. package/src/utils/apiUtils.ts +307 -0
  64. package/src/utils/assertionUtils.ts +455 -0
  65. package/src/utils/commonUtils.ts +1544 -0
  66. package/src/utils/fakerStaticData.ts +91 -0
  67. package/src/utils/fileCommonUtils.ts +239 -0
  68. package/src/utils/generationUtils.ts +929 -0
  69. package/src/utils/pageUtils.ts +224 -0
  70. package/src/utils/tableUtils.ts +715 -0
  71. package/src/utils/validationUtils.ts +179 -0
  72. package/tsconfig.json +19 -0
@@ -0,0 +1,424 @@
1
+ export declare class GenerationUtils {
2
+ /**
3
+ * Returns a random integer between min and max (inclusive).
4
+ *
5
+ * @param min Minimum number (inclusive)
6
+ * @param max Maximum number (inclusive)
7
+ * @returns Random number between min and max
8
+ *
9
+ * Example:
10
+ * randomNumber(1, 10) → 7
11
+ */
12
+ static randomNumber(min: number, max: number): number;
13
+ /**
14
+ * Returns a random floating-point number between min and max.
15
+ *
16
+ * @param min Minimum number
17
+ * @param max Maximum number
18
+ * @param decimals Number of decimal places (default: 2)
19
+ * @returns Random float between min and max
20
+ *
21
+ * Example:
22
+ * randomFloat(1, 5, 2) → 3.47
23
+ */
24
+ static randomFloat(min: number, max: number, decimals?: number): number;
25
+ /**
26
+ * Returns a random boolean value.
27
+ *
28
+ * @returns true or false
29
+ *
30
+ * Example:
31
+ * randomBoolean() → true
32
+ */
33
+ static randomBoolean(): boolean;
34
+ /**
35
+ * Returns a random element from an array.
36
+ *
37
+ * @param values Array of values
38
+ * @returns Random element or null if array is empty
39
+ *
40
+ * Example:
41
+ * randomFromArray(["A", "B", "C"]) → "B"
42
+ */
43
+ static randomFromArray<T>(values: T[]): T | null;
44
+ /**
45
+ * Returns a random valid index for an array.
46
+ *
47
+ * @param max Length of the array
48
+ * @returns Random index between 0 and max - 1
49
+ *
50
+ * Example:
51
+ * randomIndex(5) → 3
52
+ */
53
+ static randomIndex(max: number): number;
54
+ /**
55
+ * Returns a random alphabetic string (A–Z, a–z).
56
+ *
57
+ * @param length Length of the string
58
+ * @returns Random alphabetic string
59
+ *
60
+ * Example:
61
+ * randomAlphaString(5) → "aZxQe"
62
+ */
63
+ static randomAlphaString(length: number): string;
64
+ /**
65
+ * Returns a random numeric string (0–9).
66
+ *
67
+ * @param length Length of the string
68
+ * @returns Random numeric string
69
+ *
70
+ * Example:
71
+ * randomNumericString(4) → "4829"
72
+ */
73
+ static randomNumericString(length: number): string;
74
+ /**
75
+ * Returns a random alphanumeric string (letters + numbers).
76
+ *
77
+ * @param length Length of the string
78
+ * @returns Random alphanumeric string
79
+ *
80
+ * Example:
81
+ * randomAlphaNumericString(8) → "A9bX2Lq7"
82
+ */
83
+ static randomAlphaNumericString(length: number): string;
84
+ /**
85
+ * Internal helper to generate random string from a given character set.
86
+ *
87
+ * @param chars Allowed characters
88
+ * @param length Length of string
89
+ * @returns Random string
90
+ */
91
+ private static generateRandomFromCharset;
92
+ /**
93
+ * Returns a random first name.
94
+ *
95
+ * @returns Random first name
96
+ *
97
+ * Example:
98
+ * randomFirstName() → "Rahul"
99
+ */
100
+ static randomFirstName(): string;
101
+ /**
102
+ * Returns a random last name.
103
+ *
104
+ * @returns Random last name
105
+ *
106
+ * Example:
107
+ * randomLastName() → "Sharma"
108
+ */
109
+ static randomLastName(): string;
110
+ /**
111
+ * Returns a random full name (first name + last name).
112
+ *
113
+ * @returns Random full name
114
+ *
115
+ * Example:
116
+ * randomFullName() → "Rahul Sharma"
117
+ */
118
+ static randomFullName(): string;
119
+ /**
120
+ * Returns a random username generated from name and number.
121
+ *
122
+ * @returns Random username
123
+ *
124
+ * Example:
125
+ * randomUsername() → "rahul.sharma482"
126
+ */
127
+ static randomUsername(): string;
128
+ /**
129
+ * Returns a random email address.
130
+ *
131
+ * @returns Random email string
132
+ *
133
+ * Example:
134
+ * randomEmail() → "rahul.sharma482@gmail.com"
135
+ */
136
+ static randomEmail(): string;
137
+ /**
138
+ * Returns a random country calling code.
139
+ *
140
+ * @returns Country code string (e.g. "+91")
141
+ *
142
+ * Example:
143
+ * randomCountryCode() → "+91"
144
+ */
145
+ static randomCountryCode(): string;
146
+ /**
147
+ * Returns a random phone number with country code.
148
+ *
149
+ * @returns Phone number string
150
+ *
151
+ * Example:
152
+ * randomPhoneNumber() → "+91 9876543210"
153
+ */
154
+ static randomPhoneNumber(): string;
155
+ /**
156
+ * Returns a random US phone number.
157
+ *
158
+ * Format: +1 XXX-XXX-XXXX
159
+ *
160
+ * @returns US phone number string
161
+ *
162
+ * Example:
163
+ * getRandomUSPhoneNumber() → "+1 415-782-3490"
164
+ */
165
+ static getRandomUSPhoneNumber(): string;
166
+ /**
167
+ * Generates a random user object containing basic identity and contact details.
168
+ *
169
+ * @returns Generated fields include:
170
+ * - First name
171
+ * - Last name
172
+ * - Full name (first + last)
173
+ * - Username (lowercased name with numeric suffix)
174
+ * - Email address (using common email domains)
175
+ *
176
+ * - Generic phone number (with random country code)
177
+ * - US-specific phone number
178
+ */
179
+ static generateUserObject(): {
180
+ firstName: string;
181
+ lastName: string;
182
+ fullName: string;
183
+ username: string;
184
+ email: string;
185
+ phoneNo: string;
186
+ usPhone: string;
187
+ };
188
+ private static generateIndiaPincode;
189
+ /**
190
+ * Returns a random India location (country, state, city).
191
+ *
192
+ * @returns Object containing country, state, and city
193
+ *
194
+ * Example:
195
+ * getRandomIndiaLocation()
196
+ * → { country: "India", state: "Karnataka", city: "Bengaluru", pincode: "560102" }
197
+ */
198
+ static getRandomIndiaLocation(): {
199
+ country: string;
200
+ state: string;
201
+ city: string;
202
+ pincode: string;
203
+ };
204
+ private static generateUSZipCode;
205
+ /**
206
+ * Returns a random USA location (country, state, city).
207
+ *
208
+ * @returns Object containing country, state, and city
209
+ *
210
+ * Example:
211
+ * getRandomUSALocation()
212
+ * → { country: "United States", state: "California", city: "San Diego" }
213
+ */
214
+ static getRandomUSALocation(): {
215
+ country: string;
216
+ state: string;
217
+ city: string;
218
+ zipCode: string;
219
+ };
220
+ /**
221
+ * Returns a random address line.
222
+ *
223
+ * @returns Random address line
224
+ *
225
+ * Example:
226
+ * randomAddressLine() → "Flat 302, MG Road"
227
+ */
228
+ static randomAddressLine(): string;
229
+ /**
230
+ * Returns a random UUID.
231
+ *
232
+ * @returns Random UUID string
233
+ *
234
+ * Example:
235
+ * randomUUID() → "f47ac10b-58cc-4372-a567-0e02b2c3d479"
236
+ */
237
+ static randomUUID(): string;
238
+ /**
239
+ * Returns a random lorem sentence.
240
+ *
241
+ * @param wordCount Optional number of words in the sentence
242
+ * @returns Random lorem sentence string
243
+ *
244
+ * Example:
245
+ * randomLoremSentence() → "Lorem ipsum dolor sit amet."
246
+ * randomLoremSentence(8) → "Lorem ipsum dolor sit amet consectetur elit."
247
+ */
248
+ static randomLoremSentence(wordCount?: number): string;
249
+ /**
250
+ * Returns the current date formatted in the given timezone.
251
+ *
252
+ * @param timezone IANA timezone
253
+ * @param format date-fns format string
254
+ * @returns formatted date string
255
+ *
256
+ * Example:
257
+ * getCurrentDateByTimezoneFormat("Asia/Kolkata", "dd/MM/yyyy") → "07/01/2026"
258
+ */
259
+ static getCurrentDateByTimezoneFormat(timezone: string, format: string): string;
260
+ /**
261
+ * Parses a date string using the provided format.
262
+ *
263
+ * @param dateStr input date string
264
+ * @param format date-fns format describing the input
265
+ * @returns Date object if valid, otherwise null
266
+ *
267
+ * Example:
268
+ * parseDate("02/Jan/2003", "dd/MMM/yyyy") -> 2003-01-01T18:30:00.000Z
269
+ */
270
+ static parseDate(dateStr: string, format: string): Date | null;
271
+ /**
272
+ * Converts a date string from one format to another.
273
+ *
274
+ * @param dateStr input date string
275
+ * @param inputFormat format of input string
276
+ * @param outputFormat desired output format
277
+ * @returns formatted date string or null if invalid
278
+ *
279
+ * Example:
280
+ * convertDateFormat("2026-01-07", "yyyy-MM-dd", "dd/MM/yyyy") → "07/01/2026"
281
+ */
282
+ static convertDateFormat(dateStr: string, inputFormat: string, outputFormat: string): string | null;
283
+ /**
284
+ * Removes the time portion from a Date and normalizes it to local midnight.
285
+ *
286
+ * @param date Date object
287
+ * @returns Date with time set to 00:00 or null if invalid
288
+ *
289
+ * Example:
290
+ * normalizeToDateOnly(new Date("2026-01-07T10:30:00")) -> 2024-01-14T18:30:00.000Z
291
+ */
292
+ static normalizeToDateOnly(date: Date): Date | null;
293
+ /**
294
+ * Adjusts a date by adding or subtracting days, months, and/or years.
295
+ *
296
+ * Positive values add time, negative values subtract time.
297
+ *
298
+ * @param date Base date to adjust
299
+ * @param options Object containing days, months, and/or years
300
+ * @returns Adjusted Date or null if input date is invalid
301
+ *
302
+ * Example:
303
+ * adjustDate(new Date(), { days: 5 })
304
+ * adjustDate(new Date(), { months: -2 })
305
+ * adjustDate(new Date(), { years: 1, days: 10 })
306
+ */
307
+ static adjustDate(date: Date, options: {
308
+ days?: number;
309
+ months?: number;
310
+ years?: number;
311
+ }): Date | null;
312
+ /**
313
+ * Adjusts the current date by adding or subtracting days, months, and/or years.
314
+ *
315
+ * Positive values add time, negative values subtract time.
316
+ *
317
+ * @param options Object containing days, months, and/or years
318
+ * @returns Adjusted Date or null if input date is invalid
319
+ *
320
+ * Example:
321
+ * adjustDate({ days: 5 })
322
+ * adjustDate({ months: -2 })
323
+ * adjustDate({ years: 1, days: 10 })
324
+ */
325
+ static adjustFromCurrentDate(options: {
326
+ days?: number;
327
+ months?: number;
328
+ years?: number;
329
+ }): Date | null;
330
+ /**
331
+ * Extracts day, month, and year from a Date object.
332
+ *
333
+ * @param date Date object
334
+ * @returns {{ day: number; month: number; year: number } | null}
335
+ * Object containing day (1–31), month (1–12), and year
336
+ */
337
+ static getDayMonthYear(date: Date): {
338
+ day: number;
339
+ month: number;
340
+ year: number;
341
+ } | null;
342
+ /**
343
+ * Splits a string using a string or regex delimiter.
344
+ *
345
+ * @param value Input string to split
346
+ * @param delimiter String or RegExp used as delimiter
347
+ * @returns Array of split values (trimmed, non-empty)
348
+ *
349
+ * Examples:
350
+ * splitByDelimiter("A,B,C", ",") → ["A", "B", "C"]
351
+ * splitByDelimiter("A | B | C", "|") → ["A", "B", "C"]
352
+ * splitByDelimiter("A,B;C|D", /[,;|]/) → ["A", "B", "C", "D"]
353
+ */
354
+ static splitByDelimiter(value: string, delimiter: string | RegExp): string[];
355
+ /**
356
+ * Returns the first regex match found in a string.
357
+ *
358
+ * If the regex contains capturing groups, the full match is returned.
359
+ *
360
+ * @param value Input string
361
+ * @param pattern Regular expression
362
+ * @returns First matched string or null if no match
363
+ *
364
+ * Example:
365
+ * getFirstMatch("Amount: $250", /\d+/) → "250"
366
+ */
367
+ static getFirstMatch(value: string, pattern: RegExp): string | null;
368
+ /**
369
+ * Returns all matches of a regex pattern found in a string.
370
+ *
371
+ * Note: For full functionality, the regex should have the global (g) flag.
372
+ *
373
+ * @param value Input string
374
+ * @param pattern Regular expression (preferably with /g)
375
+ * @returns Array of matched strings (empty array if no matches)
376
+ *
377
+ * Example:
378
+ * getAllMatches("IDs: 12, 45, 78", /\d+/g) → ["12", "45", "78"]
379
+ */
380
+ static getAllMatches(value: string, pattern: RegExp): string[];
381
+ /**
382
+ * This method is to get total technology fee
383
+ * @since 13-01-2026
384
+ * @param fixedFee number
385
+ * @param percentageFee number
386
+ * @param amount number
387
+ * @returns number | null
388
+ */
389
+ static getTotalFees(fixedFee: number, percentageFee: number, amount: number): number | null;
390
+ /**
391
+ * This method is get total amount as per passed fixed & percentage fee and amount
392
+ * @since 13-01-2026
393
+ * @param fixedFee number
394
+ * @param percentageFee number
395
+ * @param amount number
396
+ * @returns number | null
397
+ */
398
+ static getTotalAmount(fixedFee: number, percentageFee: number, amount: number): number | null;
399
+ /**
400
+ * Returns the difference between two dates in years.
401
+ *
402
+ * @param date1 Start date
403
+ * @param date2 End date
404
+ * @returns Difference in days or null if invalid
405
+ */
406
+ static getDifferenceInDays(date1: Date, date2: Date): number | null;
407
+ /**
408
+ * Returns the difference between two dates in years.
409
+ *
410
+ * @param date1 Start date
411
+ * @param date2 End date
412
+ * @returns Difference in months or null if invalid
413
+ */
414
+ static getDifferenceInMonths(date1: Date, date2: Date): number | null;
415
+ /**
416
+ * Returns the difference between two dates in years.
417
+ *
418
+ * @param date1 Start date
419
+ * @param date2 End date
420
+ * @returns Difference in years or null if invalid
421
+ */
422
+ static getDifferenceInYears(date1: Date, date2: Date): number | null;
423
+ }
424
+ //# sourceMappingURL=generationUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generationUtils.d.ts","sourceRoot":"","sources":["../../src/utils/generationUtils.ts"],"names":[],"mappings":"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"}