@thisisagile/easy-test 18.16.2 → 19.0.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 (87) hide show
  1. package/dist/chunk-6FEQASGO.mjs +17 -0
  2. package/dist/chunk-6FEQASGO.mjs.map +1 -0
  3. package/dist/chunk-ART72TJA.mjs +25 -0
  4. package/dist/chunk-ART72TJA.mjs.map +1 -0
  5. package/dist/chunk-BN2IG45X.mjs +24 -0
  6. package/dist/chunk-BN2IG45X.mjs.map +1 -0
  7. package/dist/chunk-BZXBZCMZ.mjs +26 -0
  8. package/dist/chunk-BZXBZCMZ.mjs.map +1 -0
  9. package/dist/chunk-CQPHLHB7.mjs +86 -0
  10. package/dist/chunk-CQPHLHB7.mjs.map +1 -0
  11. package/dist/chunk-DHDFXV7G.mjs +53 -0
  12. package/dist/chunk-DHDFXV7G.mjs.map +1 -0
  13. package/dist/chunk-DMSYYRBM.mjs +59 -0
  14. package/dist/chunk-DMSYYRBM.mjs.map +1 -0
  15. package/dist/chunk-EZNTPFD2.mjs +39 -0
  16. package/dist/chunk-EZNTPFD2.mjs.map +1 -0
  17. package/dist/chunk-GRYVDJXU.mjs +1 -0
  18. package/dist/chunk-GRYVDJXU.mjs.map +1 -0
  19. package/dist/chunk-MBQSBGEE.mjs +1 -0
  20. package/dist/chunk-MBQSBGEE.mjs.map +1 -0
  21. package/dist/chunk-PPXFT3SX.mjs +14 -0
  22. package/dist/chunk-PPXFT3SX.mjs.map +1 -0
  23. package/dist/chunk-QWLALNJL.mjs +30 -0
  24. package/dist/chunk-QWLALNJL.mjs.map +1 -0
  25. package/dist/chunk-RPYWAKYZ.mjs +39 -0
  26. package/dist/chunk-RPYWAKYZ.mjs.map +1 -0
  27. package/dist/chunk-SGV4XPW3.mjs +27 -0
  28. package/dist/chunk-SGV4XPW3.mjs.map +1 -0
  29. package/dist/chunk-TUE23FNE.mjs +17 -0
  30. package/dist/chunk-TUE23FNE.mjs.map +1 -0
  31. package/dist/chunk-UFDXFCRK.mjs +19 -0
  32. package/dist/chunk-UFDXFCRK.mjs.map +1 -0
  33. package/dist/chunk-UOO6EMXQ.mjs +20 -0
  34. package/dist/chunk-UOO6EMXQ.mjs.map +1 -0
  35. package/dist/chunk-WAKTWLNU.mjs +32 -0
  36. package/dist/chunk-WAKTWLNU.mjs.map +1 -0
  37. package/dist/chunk-YL7PRCYP.mjs +26 -0
  38. package/dist/chunk-YL7PRCYP.mjs.map +1 -0
  39. package/dist/chunk-Z6NXMCUL.mjs +17 -0
  40. package/dist/chunk-Z6NXMCUL.mjs.map +1 -0
  41. package/dist/chunk-ZBSBLFC7.mjs +20 -0
  42. package/dist/chunk-ZBSBLFC7.mjs.map +1 -0
  43. package/dist/index.mjs +150 -2
  44. package/dist/index.mjs.map +1 -1
  45. package/dist/matchers/HttpMatchers.mjs +13 -41
  46. package/dist/matchers/HttpMatchers.mjs.map +1 -1
  47. package/dist/matchers/ResultMatchers.mjs +5 -22
  48. package/dist/matchers/ResultMatchers.mjs.map +1 -1
  49. package/dist/matchers/index.mjs +132 -19
  50. package/dist/matchers/index.mjs.map +1 -1
  51. package/dist/matchers/toBeArrayOf.mjs +3 -8
  52. package/dist/matchers/toBeArrayOf.mjs.map +1 -1
  53. package/dist/matchers/toBeArrayOfWithLength.mjs +3 -11
  54. package/dist/matchers/toBeArrayOfWithLength.mjs.map +1 -1
  55. package/dist/matchers/toBeAt.mjs +3 -19
  56. package/dist/matchers/toBeAt.mjs.map +1 -1
  57. package/dist/matchers/toBeExactlyAt.mjs +4 -20
  58. package/dist/matchers/toBeExactlyAt.mjs.map +1 -1
  59. package/dist/matchers/toBeQueriedWith.mjs +3 -11
  60. package/dist/matchers/toBeQueriedWith.mjs.map +1 -1
  61. package/dist/matchers/toBeRoutedTo.mjs +7 -24
  62. package/dist/matchers/toBeRoutedTo.mjs.map +1 -1
  63. package/dist/matchers/toBeValid.mjs +4 -11
  64. package/dist/matchers/toBeValid.mjs.map +1 -1
  65. package/dist/matchers/toFailMatcher.mjs +6 -29
  66. package/dist/matchers/toFailMatcher.mjs.map +1 -1
  67. package/dist/matchers/toMatchArray.mjs +3 -13
  68. package/dist/matchers/toMatchArray.mjs.map +1 -1
  69. package/dist/matchers/toMatchExactJson.mjs +5 -17
  70. package/dist/matchers/toMatchExactJson.mjs.map +1 -1
  71. package/dist/matchers/toMatchException.mjs +4 -20
  72. package/dist/matchers/toMatchException.mjs.map +1 -1
  73. package/dist/matchers/toMatchJson.mjs +6 -20
  74. package/dist/matchers/toMatchJson.mjs.map +1 -1
  75. package/dist/matchers/toMatchRoute.mjs +4 -14
  76. package/dist/matchers/toMatchRoute.mjs.map +1 -1
  77. package/dist/matchers/toMatchText.mjs +4 -14
  78. package/dist/matchers/toMatchText.mjs.map +1 -1
  79. package/dist/matchers/toPassMatcher.mjs +6 -29
  80. package/dist/matchers/toPassMatcher.mjs.map +1 -1
  81. package/dist/mock/Fits.mjs +7 -44
  82. package/dist/mock/Fits.mjs.map +1 -1
  83. package/dist/mock/Mocks.mjs +4 -79
  84. package/dist/mock/Mocks.mjs.map +1 -1
  85. package/dist/mock/index.mjs +22 -2
  86. package/dist/mock/index.mjs.map +1 -1
  87. package/package.json +125 -3
@@ -1,25 +1,9 @@
1
1
  import {
2
- match
3
- } from "../chunk-LN24S2PC.mjs";
4
- import "../chunk-6EKWTLNQ.mjs";
5
- import {
6
- isDefined
7
- } from "../chunk-O475TEG2.mjs";
8
-
9
- // src/matchers/toBeExactlyAt.ts
10
- var toUrl = (uc, id) => {
11
- const i = isDefined(id) ? `/${id}` : "";
12
- return `/${uc.app.id}/${uc.id}${i}`;
13
- };
14
- var toBeExactlyAt = (tester, uc, id) => {
15
- return match(tester).undefined((t) => t, "Tester is undefined").undefined((t) => t.url, "Tester does not contain a URL").undefined(() => uc, "Use case is undefined").not(
16
- (t) => t.url.includes(toUrl(uc, id)),
17
- (t) => `We expected the tester to be at: '${toUrl(uc, id)}', but it is at: '${t?.url}' instead.`
18
- ).else((t) => `The tester is at '${t?.url}'`);
19
- };
20
- expect.extend({
21
2
  toBeExactlyAt
22
- });
3
+ } from "../chunk-BZXBZCMZ.mjs";
4
+ import "../chunk-LN24S2PC.mjs";
5
+ import "../chunk-6EKWTLNQ.mjs";
6
+ import "../chunk-O475TEG2.mjs";
23
7
  export {
24
8
  toBeExactlyAt
25
9
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/matchers/toBeExactlyAt.ts"],"sourcesContent":["import { Id, Tester, UseCase } from '../utils/Types';\nimport { isDefined } from '../utils/Utils';\nimport { match } from './Match';\n\nconst toUrl = (uc: UseCase, id?: Id): string => {\n const i = isDefined(id) ? `/${id}` : '';\n return `/${uc.app.id}/${uc.id}${i}`;\n};\n\nexport const toBeExactlyAt = (tester?: Tester, uc?: UseCase, id?: Id): jest.CustomMatcherResult => {\n return match<Tester>(tester as Tester)\n .undefined(t => t, 'Tester is undefined')\n .undefined(t => t.url, 'Tester does not contain a URL')\n .undefined(() => uc, 'Use case is undefined')\n .not(\n t => t.url.includes(toUrl(uc as UseCase, id)),\n t => `We expected the tester to be at: '${toUrl(uc as UseCase, id)}', but it is at: '${t?.url}' instead.`\n )\n .else(t => `The tester is at '${t?.url}'`);\n};\n\nexpect.extend({\n toBeExactlyAt,\n});\n\ndeclare global {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace jest {\n interface Matchers<R, T> {\n toBeExactlyAt(uc?: UseCase, id?: Id): R;\n }\n }\n}\n"],"mappings":";;;;;;;;;AAIA,IAAM,QAAQ,CAAC,IAAa,OAAoB;AAC9C,QAAM,IAAI,UAAU,EAAE,IAAI,IAAI,EAAE,KAAK;AACrC,SAAO,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,EAAE,GAAG,CAAC;AACnC;AAEO,IAAM,gBAAgB,CAAC,QAAiB,IAAc,OAAsC;AACjG,SAAO,MAAc,MAAgB,EAClC,UAAU,OAAK,GAAG,qBAAqB,EACvC,UAAU,OAAK,EAAE,KAAK,+BAA+B,EACrD,UAAU,MAAM,IAAI,uBAAuB,EAC3C;AAAA,IACC,OAAK,EAAE,IAAI,SAAS,MAAM,IAAe,EAAE,CAAC;AAAA,IAC5C,OAAK,qCAAqC,MAAM,IAAe,EAAE,CAAC,qBAAqB,GAAG,GAAG;AAAA,EAC/F,EACC,KAAK,OAAK,qBAAqB,GAAG,GAAG,GAAG;AAC7C;AAEA,OAAO,OAAO;AAAA,EACZ;AACF,CAAC;","names":[]}
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1,17 +1,9 @@
1
1
  import {
2
- match
3
- } from "../chunk-LN24S2PC.mjs";
2
+ toBeQueriedWith
3
+ } from "../chunk-TUE23FNE.mjs";
4
+ import "../chunk-LN24S2PC.mjs";
4
5
  import "../chunk-6EKWTLNQ.mjs";
5
6
  import "../chunk-O475TEG2.mjs";
6
-
7
- // src/matchers/toBeQueriedWith.ts
8
- var toBeQueriedWith = (query, expected) => match(query?.mock?.calls).undefined((c) => c, "Query is unknown.").not((c) => c.length === 1, "Query did not execute.").not(
9
- (c) => c[0][0].toString() === expected?.toString(),
10
- (c) => `We expected query '${expected}', but we received query '${c[0][0]}' instead.`
11
- ).else(`Received query does match '${expected}'`);
12
- expect.extend({
13
- toBeQueriedWith
14
- });
15
7
  export {
16
8
  toBeQueriedWith
17
9
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/matchers/toBeQueriedWith.ts"],"sourcesContent":["import { match } from './Match';\nimport { Query } from '../utils/Types';\n\nexport const toBeQueriedWith = (query: jest.Mock, expected: Query): jest.CustomMatcherResult =>\n match<any[]>(query?.mock?.calls)\n .undefined(c => c, 'Query is unknown.')\n .not(c => c.length === 1, 'Query did not execute.')\n .not(\n c => c[0][0].toString() === expected?.toString(),\n c => `We expected query '${expected}', but we received query '${c[0][0]}' instead.`\n )\n .else(`Received query does match '${expected}'`);\n\nexpect.extend({\n toBeQueriedWith: toBeQueriedWith,\n});\n\ndeclare global {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace jest {\n interface Matchers<R, T> {\n toBeQueriedWith(expected: Query): R;\n }\n }\n}\n"],"mappings":";;;;;;;AAGO,IAAM,kBAAkB,CAAC,OAAkB,aAChD,MAAa,OAAO,MAAM,KAAK,EAC5B,UAAU,OAAK,GAAG,mBAAmB,EACrC,IAAI,OAAK,EAAE,WAAW,GAAG,wBAAwB,EACjD;AAAA,EACC,OAAK,EAAE,CAAC,EAAE,CAAC,EAAE,SAAS,MAAM,UAAU,SAAS;AAAA,EAC/C,OAAK,sBAAsB,QAAQ,6BAA6B,EAAE,CAAC,EAAE,CAAC,CAAC;AACzE,EACC,KAAK,8BAA8B,QAAQ,GAAG;AAEnD,OAAO,OAAO;AAAA,EACZ;AACF,CAAC;","names":[]}
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1,29 +1,12 @@
1
1
  import {
2
- checkDefined
3
- } from "../chunk-Z4XAP66Q.mjs";
4
- import {
5
- match
6
- } from "../chunk-LN24S2PC.mjs";
2
+ toBeRoutedTo,
3
+ toMatchAsString,
4
+ weExpectedButReceivedInstead
5
+ } from "../chunk-WAKTWLNU.mjs";
6
+ import "../chunk-Z4XAP66Q.mjs";
7
+ import "../chunk-LN24S2PC.mjs";
7
8
  import "../chunk-6EKWTLNQ.mjs";
8
- import {
9
- asString
10
- } from "../chunk-O475TEG2.mjs";
11
-
12
- // src/matchers/toBeRoutedTo.ts
13
- var weExpectedButReceivedInstead = ([r, e]) => `We expected ${asString(e)}, but we received '${asString(r)}' instead.`;
14
- function toMatchAsString(received, expected) {
15
- return checkDefined(this, received, expected).not(
16
- ([r, e]) => this.equals(asString(r), asString(e)),
17
- ([r, e]) => weExpectedButReceivedInstead([r, e])
18
- ).else();
19
- }
20
- var toBeRoutedTo = (query, expected) => match(query?.mock?.calls).undefined((c) => c, "Uri is unknown.").not((c) => c.length === 1, "Method was not called.").not(
21
- (c) => asString(c[0][0]) === asString(expected),
22
- (c) => `We expected uri '${asString(expected)}', but we received uri '${asString(c[0][0])}' instead.`
23
- ).else(`Called uri does match '${asString(expected)}'`);
24
- expect.extend({
25
- toBeRoutedTo
26
- });
9
+ import "../chunk-O475TEG2.mjs";
27
10
  export {
28
11
  toBeRoutedTo,
29
12
  toMatchAsString,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/matchers/toBeRoutedTo.ts"],"sourcesContent":["import { checkDefined } from './Check';\nimport { Uri } from '../utils/Types';\nimport { asString } from '../utils/Utils';\nimport { match } from './Match';\n\nexport const weExpectedButReceivedInstead = ([r, e]: [any, any]) => `We expected ${asString(e)}, but we received '${asString(r)}' instead.`;\n\nexport function toMatchAsString(this: jest.MatcherContext, received: unknown, expected: unknown): jest.CustomMatcherResult {\n return checkDefined(this, received, expected)\n .not(\n ([r, e]) => this.equals(asString(r), asString(e)),\n ([r, e]) => weExpectedButReceivedInstead([r, e])\n )\n .else();\n}\n\n// export function toBeRoutedTo(this: jest.MatcherContext, query: jest.Mock, expected: Uri): jest.CustomMatcherResult {\n// return check<any[]>(this, query?.mock?.calls)\n// .undefined(r => r, \"Uri is unknown.\")\n// .not(r => r.length === 1, \"Method was not called.\")\n// .not(r => this.equals(asString(r[0][0]), asString(expected)), ([r,e]) => weExpectedButReceivedInstead([r[0][0], e]))\n// .else();\n// }\n\nexport const toBeRoutedTo = (query: jest.Mock, expected: Uri): jest.CustomMatcherResult =>\n match<any[]>(query?.mock?.calls)\n .undefined(c => c, 'Uri is unknown.')\n .not(c => c.length === 1, 'Method was not called.')\n .not(\n c => asString(c[0][0]) === asString(expected),\n c => `We expected uri '${asString(expected)}', but we received uri '${asString(c[0][0])}' instead.`\n )\n .else(`Called uri does match '${asString(expected)}'`);\n\nexpect.extend({\n toBeRoutedTo: toBeRoutedTo,\n});\n\ndeclare global {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace jest {\n interface Matchers<R, T> {\n toBeRoutedTo(uri: Uri): R;\n }\n }\n}\n"],"mappings":";;;;;;;;;;;;AAKO,IAAM,+BAA+B,CAAC,CAAC,GAAG,CAAC,MAAkB,eAAe,SAAS,CAAC,CAAC,sBAAsB,SAAS,CAAC,CAAC;AAExH,SAAS,gBAA2C,UAAmB,UAA6C;AACzH,SAAO,aAAa,MAAM,UAAU,QAAQ,EACzC;AAAA,IACC,CAAC,CAAC,GAAG,CAAC,MAAM,KAAK,OAAO,SAAS,CAAC,GAAG,SAAS,CAAC,CAAC;AAAA,IAChD,CAAC,CAAC,GAAG,CAAC,MAAM,6BAA6B,CAAC,GAAG,CAAC,CAAC;AAAA,EACjD,EACC,KAAK;AACV;AAUO,IAAM,eAAe,CAAC,OAAkB,aAC7C,MAAa,OAAO,MAAM,KAAK,EAC5B,UAAU,OAAK,GAAG,iBAAiB,EACnC,IAAI,OAAK,EAAE,WAAW,GAAG,wBAAwB,EACjD;AAAA,EACC,OAAK,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC,MAAM,SAAS,QAAQ;AAAA,EAC5C,OAAK,oBAAoB,SAAS,QAAQ,CAAC,2BAA2B,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACzF,EACC,KAAK,0BAA0B,SAAS,QAAQ,CAAC,GAAG;AAEzD,OAAO,OAAO;AAAA,EACZ;AACF,CAAC;","names":[]}
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1,16 +1,9 @@
1
1
  import {
2
- match
3
- } from "../chunk-LN24S2PC.mjs";
4
- import "../chunk-6EKWTLNQ.mjs";
5
- import {
6
- isA
7
- } from "../chunk-O475TEG2.mjs";
8
-
9
- // src/matchers/toBeValid.ts
10
- var toBeValid = (v) => match(v).undefined((s) => s, "Subject is undefined.").not((s) => isA(s, "isValid"), "Subject is not validatable.").not((s) => s.isValid, `Subject is not valid.`).else(`Subject is valid`);
11
- expect.extend({
12
2
  toBeValid
13
- });
3
+ } from "../chunk-6FEQASGO.mjs";
4
+ import "../chunk-LN24S2PC.mjs";
5
+ import "../chunk-6EKWTLNQ.mjs";
6
+ import "../chunk-O475TEG2.mjs";
14
7
  export {
15
8
  toBeValid
16
9
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/matchers/toBeValid.ts"],"sourcesContent":["import { Validatable } from '../utils/Types';\nimport { isA } from '../utils/Utils';\nimport { match } from './Match';\n\nexport const toBeValid = (v?: unknown): jest.CustomMatcherResult =>\n match<Validatable>(v as Validatable)\n .undefined(s => s, 'Subject is undefined.')\n .not(s => isA<Validatable>(s, 'isValid'), 'Subject is not validatable.')\n .not(s => s.isValid, `Subject is not valid.`)\n .else(`Subject is valid`);\n\nexpect.extend({\n toBeValid,\n});\n\ndeclare global {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace jest {\n interface Matchers<R, T> {\n toBeValid(): R;\n }\n }\n}\n"],"mappings":";;;;;;;;;AAIO,IAAM,YAAY,CAAC,MACxB,MAAmB,CAAgB,EAChC,UAAU,OAAK,GAAG,uBAAuB,EACzC,IAAI,OAAK,IAAiB,GAAG,SAAS,GAAG,6BAA6B,EACtE,IAAI,OAAK,EAAE,SAAS,uBAAuB,EAC3C,KAAK,kBAAkB;AAE5B,OAAO,OAAO;AAAA,EACZ;AACF,CAAC;","names":[]}
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1,35 +1,12 @@
1
1
  import {
2
- match
3
- } from "../chunk-LN24S2PC.mjs";
4
- import {
5
- toMessage
6
- } from "../chunk-6EKWTLNQ.mjs";
7
- import "../chunk-O475TEG2.mjs";
8
-
9
- // src/matchers/toFailMatcher.ts
10
- var Fails = {
11
- Yes: "Match fails, instead of passes.",
12
- No: (reason) => `Match doesn't fail, because '${reason}'`
13
- };
14
- var FailsWith = {
15
- Yes: "Match fails with correct message.",
16
- No: (message, instead) => `Match does fail, however not with message '${message}', but with message '${instead}' instead.`
17
- };
18
- var toFailMatcher = (result) => match(result).not(
19
- (c) => !c.pass,
20
- (c) => Fails.No(c.message())
21
- ).else(Fails.Yes);
22
- var toFailMatcherWith = (result, message) => match(result).not(
23
- (c) => !c.pass,
24
- (c) => Fails.No(c.message())
25
- ).not(
26
- (c) => c.message().includes(toMessage(message)),
27
- (c) => FailsWith.No(toMessage(message), c.message())
28
- ).else(FailsWith.Yes);
29
- expect.extend({
2
+ Fails,
3
+ FailsWith,
30
4
  toFailMatcher,
31
5
  toFailMatcherWith
32
- });
6
+ } from "../chunk-EZNTPFD2.mjs";
7
+ import "../chunk-LN24S2PC.mjs";
8
+ import "../chunk-6EKWTLNQ.mjs";
9
+ import "../chunk-O475TEG2.mjs";
33
10
  export {
34
11
  Fails,
35
12
  FailsWith,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/matchers/toFailMatcher.ts"],"sourcesContent":["import { match } from './Match';\nimport { Message, toMessage } from '../utils/Types';\n\n// Handles CustomMatcherResult validations.\n\nexport const Fails = {\n Yes: 'Match fails, instead of passes.',\n No: (reason: string): string => `Match doesn't fail, because '${reason}'`,\n};\n\nexport const FailsWith = {\n Yes: 'Match fails with correct message.',\n No: (message: string, instead: string): string => `Match does fail, however not with message '${message}', but with message '${instead}' instead.`,\n};\n\nexport const toFailMatcher = (result: jest.CustomMatcherResult): jest.CustomMatcherResult =>\n match(result)\n .not(\n c => !c.pass,\n c => Fails.No(c.message())\n )\n .else(Fails.Yes);\n\nexport const toFailMatcherWith = (result: jest.CustomMatcherResult, message: Message<jest.CustomMatcherResult>): jest.CustomMatcherResult =>\n match(result)\n .not(\n c => !c.pass,\n c => Fails.No(c.message())\n )\n .not(\n c => c.message().includes(toMessage(message)),\n c => FailsWith.No(toMessage(message), c.message())\n )\n .else(FailsWith.Yes);\n\nexpect.extend({\n toFailMatcher: toFailMatcher,\n toFailMatcherWith: toFailMatcherWith,\n});\n\ndeclare global {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace jest {\n interface Matchers<R, T> {\n toFailMatcher(): R;\n\n toFailMatcherWith(message: string): R;\n }\n }\n}\n"],"mappings":";;;;;;;;;AAKO,IAAM,QAAQ;AAAA,EACnB,KAAK;AAAA,EACL,IAAI,CAAC,WAA2B,gCAAgC,MAAM;AACxE;AAEO,IAAM,YAAY;AAAA,EACvB,KAAK;AAAA,EACL,IAAI,CAAC,SAAiB,YAA4B,8CAA8C,OAAO,wBAAwB,OAAO;AACxI;AAEO,IAAM,gBAAgB,CAAC,WAC5B,MAAM,MAAM,EACT;AAAA,EACC,OAAK,CAAC,EAAE;AAAA,EACR,OAAK,MAAM,GAAG,EAAE,QAAQ,CAAC;AAC3B,EACC,KAAK,MAAM,GAAG;AAEZ,IAAM,oBAAoB,CAAC,QAAkC,YAClE,MAAM,MAAM,EACT;AAAA,EACC,OAAK,CAAC,EAAE;AAAA,EACR,OAAK,MAAM,GAAG,EAAE,QAAQ,CAAC;AAC3B,EACC;AAAA,EACC,OAAK,EAAE,QAAQ,EAAE,SAAS,UAAU,OAAO,CAAC;AAAA,EAC5C,OAAK,UAAU,GAAG,UAAU,OAAO,GAAG,EAAE,QAAQ,CAAC;AACnD,EACC,KAAK,UAAU,GAAG;AAEvB,OAAO,OAAO;AAAA,EACZ;AAAA,EACA;AACF,CAAC;","names":[]}
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1,18 +1,8 @@
1
1
  import {
2
- checkDefined
3
- } from "../chunk-Z4XAP66Q.mjs";
4
- import "../chunk-O475TEG2.mjs";
5
-
6
- // src/matchers/toMatchArray.ts
7
- function toMatchArray(received, expected) {
8
- return checkDefined(this, received, expected).not(
9
- ([r, e]) => r.length === e.length,
10
- ([r, e]) => `Received array has length ${r.length}, while expected array has length ${e.length}.`
11
- ).not(([r, e]) => r.every((el, i) => this.equals(el, e[i])), "Elements in {r} do not match elements in {e}. \n\n {diff}.").else();
12
- }
13
- expect.extend({
14
2
  toMatchArray
15
- });
3
+ } from "../chunk-UFDXFCRK.mjs";
4
+ import "../chunk-Z4XAP66Q.mjs";
5
+ import "../chunk-O475TEG2.mjs";
16
6
  export {
17
7
  toMatchArray
18
8
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/matchers/toMatchArray.ts"],"sourcesContent":["import { checkDefined } from './Check';\n\nexport function toMatchArray(this: jest.MatcherContext, received: any[], expected: any[]) {\n return checkDefined(this, received, expected)\n .not(\n ([r, e]) => r.length === e.length,\n ([r, e]) => `Received array has length ${r.length}, while expected array has length ${e.length}.`\n )\n .not(([r, e]) => r.every((el, i) => this.equals(el, e[i])), 'Elements in {r} do not match elements in {e}. \\n\\n {diff}.')\n .else();\n}\n\nexpect.extend({\n toMatchArray,\n});\n\ndeclare global {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace jest {\n interface Matchers<R, T> {\n toMatchArray(expected: any[]): R;\n }\n }\n}\n"],"mappings":";;;;;;AAEO,SAAS,aAAwC,UAAiB,UAAiB;AACxF,SAAO,aAAa,MAAM,UAAU,QAAQ,EACzC;AAAA,IACC,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE;AAAA,IAC3B,CAAC,CAAC,GAAG,CAAC,MAAM,6BAA6B,EAAE,MAAM,qCAAqC,EAAE,MAAM;AAAA,EAChG,EACC,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,MAAM,KAAK,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,4DAA4D,EACvH,KAAK;AACV;AAEA,OAAO,OAAO;AAAA,EACZ;AACF,CAAC;","names":[]}
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1,23 +1,11 @@
1
1
  import {
2
- eq
3
- } from "../chunk-QE3TR4BY.mjs";
4
- import {
5
- match
6
- } from "../chunk-LN24S2PC.mjs";
2
+ MatchesExactJson,
3
+ toMatchExactJson
4
+ } from "../chunk-BN2IG45X.mjs";
5
+ import "../chunk-QE3TR4BY.mjs";
6
+ import "../chunk-LN24S2PC.mjs";
7
7
  import "../chunk-6EKWTLNQ.mjs";
8
8
  import "../chunk-O475TEG2.mjs";
9
-
10
- // src/matchers/toMatchExactJson.ts
11
- var MatchesExactJson = {
12
- SubjectUndefined: "Subject is undefined.",
13
- SubsetUndefined: "Object to match with is undefined.",
14
- DoesNotMatch: "Object does not exactly match subject.",
15
- Yes: "Object matches subject exactly"
16
- };
17
- var toMatchExactJson = (value, json) => match(value).undefined((v) => v, MatchesExactJson.SubjectUndefined).undefined(() => json, MatchesExactJson.SubsetUndefined).not((v) => eq.exact(v, json), MatchesExactJson.DoesNotMatch).else(() => MatchesExactJson.Yes);
18
- expect.extend({
19
- toMatchExactJson
20
- });
21
9
  export {
22
10
  MatchesExactJson,
23
11
  toMatchExactJson
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/matchers/toMatchExactJson.ts"],"sourcesContent":["import { match } from './Match';\nimport { eq } from '../utils/Eq';\n\nexport const MatchesExactJson = {\n SubjectUndefined: 'Subject is undefined.',\n SubsetUndefined: 'Object to match with is undefined.',\n DoesNotMatch: 'Object does not exactly match subject.',\n Yes: 'Object matches subject exactly',\n};\n\nexport const toMatchExactJson = (value?: unknown, json?: unknown): jest.CustomMatcherResult =>\n match<unknown>(value)\n .undefined(v => v, MatchesExactJson.SubjectUndefined)\n .undefined(() => json, MatchesExactJson.SubsetUndefined)\n .not(v => eq.exact(v, json), MatchesExactJson.DoesNotMatch)\n .else(() => MatchesExactJson.Yes);\n\nexpect.extend({\n toMatchExactJson: toMatchExactJson,\n});\n\ndeclare global {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace jest {\n interface Matchers<R, T> {\n toMatchExactJson(json?: unknown): R;\n }\n }\n}\n"],"mappings":";;;;;;;;;;AAGO,IAAM,mBAAmB;AAAA,EAC9B,kBAAkB;AAAA,EAClB,iBAAiB;AAAA,EACjB,cAAc;AAAA,EACd,KAAK;AACP;AAEO,IAAM,mBAAmB,CAAC,OAAiB,SAChD,MAAe,KAAK,EACjB,UAAU,OAAK,GAAG,iBAAiB,gBAAgB,EACnD,UAAU,MAAM,MAAM,iBAAiB,eAAe,EACtD,IAAI,OAAK,GAAG,MAAM,GAAG,IAAI,GAAG,iBAAiB,YAAY,EACzD,KAAK,MAAM,iBAAiB,GAAG;AAEpC,OAAO,OAAO;AAAA,EACZ;AACF,CAAC;","names":[]}
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1,25 +1,9 @@
1
1
  import {
2
- match
3
- } from "../chunk-LN24S2PC.mjs";
4
- import "../chunk-6EKWTLNQ.mjs";
5
- import {
6
- isDefined
7
- } from "../chunk-O475TEG2.mjs";
8
-
9
- // src/matchers/toMatchException.ts
10
- var toMatchException = (received, expected, reason) => match(expected).undefined((e) => e.id, "Expected value is not an exception.").not(
11
- (e) => e.id === received.id,
12
- (e) => `Expected exception has id '${e.id}', while the received exception has id '${received.id}'.`
13
- ).not(
14
- () => !isDefined(reason) || isDefined(reason) && isDefined(received.reason),
15
- () => `We expected to have reason '${reason}', but we received no reason.`
16
- ).not(
17
- () => !isDefined(reason) || isDefined(reason) && received.reason === reason,
18
- () => `We expected to have reason '${reason}', but we received reason '${received.reason}'.`
19
- ).else(`Expected exception matches received exception`);
20
- expect.extend({
21
2
  toMatchException
22
- });
3
+ } from "../chunk-YL7PRCYP.mjs";
4
+ import "../chunk-LN24S2PC.mjs";
5
+ import "../chunk-6EKWTLNQ.mjs";
6
+ import "../chunk-O475TEG2.mjs";
23
7
  export {
24
8
  toMatchException
25
9
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/matchers/toMatchException.ts"],"sourcesContent":["import { Exception } from '../utils/Types';\nimport { match } from './Match';\nimport { isDefined } from '../utils/Utils';\n\nexport const toMatchException = (received: Exception, expected: unknown, reason?: string): jest.CustomMatcherResult =>\n match<Exception>(expected as Exception)\n .undefined(e => e.id, 'Expected value is not an exception.')\n .not(\n e => e.id === received.id,\n e => `Expected exception has id '${e.id}', while the received exception has id '${received.id}'.`\n )\n .not(\n () => !isDefined(reason) || (isDefined(reason) && isDefined(received.reason)),\n () => `We expected to have reason '${reason}', but we received no reason.`\n )\n .not(\n () => !isDefined(reason) || (isDefined(reason) && received.reason === reason),\n () => `We expected to have reason '${reason}', but we received reason '${received.reason}'.`\n )\n .else(`Expected exception matches received exception`);\n\nexpect.extend({\n toMatchException,\n});\n\ndeclare global {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace jest {\n interface Matchers<R, T> {\n toMatchException(exception: unknown, reason?: string): R;\n }\n }\n}\n"],"mappings":";;;;;;;;;AAIO,IAAM,mBAAmB,CAAC,UAAqB,UAAmB,WACvE,MAAiB,QAAqB,EACnC,UAAU,OAAK,EAAE,IAAI,qCAAqC,EAC1D;AAAA,EACC,OAAK,EAAE,OAAO,SAAS;AAAA,EACvB,OAAK,8BAA8B,EAAE,EAAE,2CAA2C,SAAS,EAAE;AAC/F,EACC;AAAA,EACC,MAAM,CAAC,UAAU,MAAM,KAAM,UAAU,MAAM,KAAK,UAAU,SAAS,MAAM;AAAA,EAC3E,MAAM,+BAA+B,MAAM;AAC7C,EACC;AAAA,EACC,MAAM,CAAC,UAAU,MAAM,KAAM,UAAU,MAAM,KAAK,SAAS,WAAW;AAAA,EACtE,MAAM,+BAA+B,MAAM,8BAA8B,SAAS,MAAM;AAC1F,EACC,KAAK,+CAA+C;AAEzD,OAAO,OAAO;AAAA,EACZ;AACF,CAAC;","names":[]}
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1,25 +1,11 @@
1
1
  import {
2
- eq
3
- } from "../chunk-QE3TR4BY.mjs";
4
- import {
5
- match
6
- } from "../chunk-LN24S2PC.mjs";
7
- import "../chunk-6EKWTLNQ.mjs";
8
- import {
9
- asJson
10
- } from "../chunk-O475TEG2.mjs";
11
-
12
- // src/matchers/toMatchJson.ts
13
- var MatchesJson = {
14
- SubjectUndefined: "Subject is undefined.",
15
- SubsetUndefined: "Subset to match with is undefined.",
16
- DoesNotMatch: "Subset does not match subject.",
17
- Yes: "Subset matches subject"
18
- };
19
- var toMatchJson = (value, subset) => match(value).undefined((v) => v, MatchesJson.SubjectUndefined).undefined(() => subset, MatchesJson.SubsetUndefined).not((v) => eq.subset(asJson(v), asJson(subset)), MatchesJson.DoesNotMatch).else(() => MatchesJson.Yes);
20
- expect.extend({
2
+ MatchesJson,
21
3
  toMatchJson
22
- });
4
+ } from "../chunk-SGV4XPW3.mjs";
5
+ import "../chunk-QE3TR4BY.mjs";
6
+ import "../chunk-LN24S2PC.mjs";
7
+ import "../chunk-6EKWTLNQ.mjs";
8
+ import "../chunk-O475TEG2.mjs";
23
9
  export {
24
10
  MatchesJson,
25
11
  toMatchJson
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/matchers/toMatchJson.ts"],"sourcesContent":["import { match } from './Match';\nimport { eq } from '../utils/Eq';\nimport { asJson } from '../utils/Utils';\n\nexport const MatchesJson = {\n SubjectUndefined: 'Subject is undefined.',\n SubsetUndefined: 'Subset to match with is undefined.',\n DoesNotMatch: 'Subset does not match subject.',\n Yes: 'Subset matches subject',\n};\n\nexport const toMatchJson = (value?: unknown, subset?: unknown): jest.CustomMatcherResult =>\n match<unknown>(value)\n .undefined(v => v, MatchesJson.SubjectUndefined)\n .undefined(() => subset, MatchesJson.SubsetUndefined)\n .not(v => eq.subset(asJson(v), asJson(subset)), MatchesJson.DoesNotMatch)\n .else(() => MatchesJson.Yes);\n\nexpect.extend({\n toMatchJson: toMatchJson,\n});\n\ndeclare global {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace jest {\n interface Matchers<R, T> {\n toMatchJson(subset?: unknown): R;\n }\n }\n}\n"],"mappings":";;;;;;;;;;;;AAIO,IAAM,cAAc;AAAA,EACzB,kBAAkB;AAAA,EAClB,iBAAiB;AAAA,EACjB,cAAc;AAAA,EACd,KAAK;AACP;AAEO,IAAM,cAAc,CAAC,OAAiB,WAC3C,MAAe,KAAK,EACjB,UAAU,OAAK,GAAG,YAAY,gBAAgB,EAC9C,UAAU,MAAM,QAAQ,YAAY,eAAe,EACnD,IAAI,OAAK,GAAG,OAAO,OAAO,CAAC,GAAG,OAAO,MAAM,CAAC,GAAG,YAAY,YAAY,EACvE,KAAK,MAAM,YAAY,GAAG;AAE/B,OAAO,OAAO;AAAA,EACZ;AACF,CAAC;","names":[]}
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1,19 +1,9 @@
1
1
  import {
2
- match
3
- } from "../chunk-LN24S2PC.mjs";
4
- import "../chunk-6EKWTLNQ.mjs";
5
- import {
6
- asString
7
- } from "../chunk-O475TEG2.mjs";
8
-
9
- // src/matchers/toMatchRoute.ts
10
- var toMatchRoute = (uri, route) => match(uri).undefined((u) => u, "Subject is undefined.").undefined(() => route, "Route to include is undefined.").not(
11
- (u) => asString(u).includes(asString(route)),
12
- (u) => `Uri '${u}' does not include '${route}'.`
13
- ).else((u) => `Uri '${u}' includes '${route}'`);
14
- expect.extend({
15
2
  toMatchRoute
16
- });
3
+ } from "../chunk-ZBSBLFC7.mjs";
4
+ import "../chunk-LN24S2PC.mjs";
5
+ import "../chunk-6EKWTLNQ.mjs";
6
+ import "../chunk-O475TEG2.mjs";
17
7
  export {
18
8
  toMatchRoute
19
9
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/matchers/toMatchRoute.ts"],"sourcesContent":["import { Uri } from '../utils/Types';\nimport { match } from './Match';\nimport { asString } from '../utils/Utils';\n\nexport const toMatchRoute = (uri?: Uri, route?: Uri | string): jest.CustomMatcherResult =>\n match<Uri | undefined>(uri)\n .undefined(u => u, 'Subject is undefined.')\n .undefined(() => route, 'Route to include is undefined.')\n .not(\n u => asString(u).includes(asString(route)),\n u => `Uri '${u}' does not include '${route}'.`\n )\n .else(u => `Uri '${u}' includes '${route}'`);\n\nexpect.extend({\n toMatchRoute: toMatchRoute,\n});\n\ndeclare global {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace jest {\n interface Matchers<R, T> {\n toMatchRoute(route?: Uri | string): R;\n }\n }\n}\n"],"mappings":";;;;;;;;;AAIO,IAAM,eAAe,CAAC,KAAW,UACtC,MAAuB,GAAG,EACvB,UAAU,OAAK,GAAG,uBAAuB,EACzC,UAAU,MAAM,OAAO,gCAAgC,EACvD;AAAA,EACC,OAAK,SAAS,CAAC,EAAE,SAAS,SAAS,KAAK,CAAC;AAAA,EACzC,OAAK,QAAQ,CAAC,uBAAuB,KAAK;AAC5C,EACC,KAAK,OAAK,QAAQ,CAAC,eAAe,KAAK,GAAG;AAE/C,OAAO,OAAO;AAAA,EACZ;AACF,CAAC;","names":[]}
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1,19 +1,9 @@
1
1
  import {
2
- match
3
- } from "../chunk-LN24S2PC.mjs";
4
- import "../chunk-6EKWTLNQ.mjs";
5
- import {
6
- asString
7
- } from "../chunk-O475TEG2.mjs";
8
-
9
- // src/matchers/toMatchText.ts
10
- var toMatchText = (value, text) => match(value).undefined((v) => v, "Subject is undefined.").undefined(() => text, "Text to match with is undefined.").not(
11
- (v) => asString(v) === asString(text),
12
- (v) => `Text '${v}' does not match with text '${text}'.`
13
- ).else((v) => `Text '${v}' matches`);
14
- expect.extend({
15
2
  toMatchText
16
- });
3
+ } from "../chunk-UOO6EMXQ.mjs";
4
+ import "../chunk-LN24S2PC.mjs";
5
+ import "../chunk-6EKWTLNQ.mjs";
6
+ import "../chunk-O475TEG2.mjs";
17
7
  export {
18
8
  toMatchText
19
9
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/matchers/toMatchText.ts"],"sourcesContent":["import { match } from './Match';\nimport { asString } from '../utils/Utils';\n\nexport const toMatchText = (value?: unknown, text?: unknown): jest.CustomMatcherResult =>\n match<unknown>(value)\n .undefined(v => v, 'Subject is undefined.')\n .undefined(() => text, 'Text to match with is undefined.')\n .not(\n v => asString(v) === asString(text),\n v => `Text '${v}' does not match with text '${text}'.`\n )\n .else(v => `Text '${v}' matches`);\n\nexpect.extend({\n toMatchText: toMatchText,\n});\n\ndeclare global {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace jest {\n interface Matchers<R, T> {\n toMatchText(text?: unknown): R;\n }\n }\n}\n"],"mappings":";;;;;;;;;AAGO,IAAM,cAAc,CAAC,OAAiB,SAC3C,MAAe,KAAK,EACjB,UAAU,OAAK,GAAG,uBAAuB,EACzC,UAAU,MAAM,MAAM,kCAAkC,EACxD;AAAA,EACC,OAAK,SAAS,CAAC,MAAM,SAAS,IAAI;AAAA,EAClC,OAAK,SAAS,CAAC,+BAA+B,IAAI;AACpD,EACC,KAAK,OAAK,SAAS,CAAC,WAAW;AAEpC,OAAO,OAAO;AAAA,EACZ;AACF,CAAC;","names":[]}
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1,35 +1,12 @@
1
1
  import {
2
- match
3
- } from "../chunk-LN24S2PC.mjs";
4
- import {
5
- toMessage
6
- } from "../chunk-6EKWTLNQ.mjs";
7
- import "../chunk-O475TEG2.mjs";
8
-
9
- // src/matchers/toPassMatcher.ts
10
- var Passes = {
11
- Yes: "Match passes, instead of fails.",
12
- No: (reason) => `Match doesn't pass, because '${reason}'`
13
- };
14
- var PassesWith = {
15
- Yes: "Match passes with correct message.",
16
- No: (message, instead) => `Match does pass, however not with message '${message}', but with message '${instead}' instead.`
17
- };
18
- var toPassMatcher = (result) => match(result).not(
19
- (c) => c.pass,
20
- (c) => Passes.No(c.message())
21
- ).else(Passes.Yes);
22
- var toPassMatcherWith = (result, message) => match(result).not(
23
- (c) => c.pass,
24
- (c) => Passes.No(c.message())
25
- ).not(
26
- (c) => c.message().includes(toMessage(message)),
27
- (c) => PassesWith.No(toMessage(message), c.message())
28
- ).else(PassesWith.Yes);
29
- expect.extend({
2
+ Passes,
3
+ PassesWith,
30
4
  toPassMatcher,
31
5
  toPassMatcherWith
32
- });
6
+ } from "../chunk-RPYWAKYZ.mjs";
7
+ import "../chunk-LN24S2PC.mjs";
8
+ import "../chunk-6EKWTLNQ.mjs";
9
+ import "../chunk-O475TEG2.mjs";
33
10
  export {
34
11
  Passes,
35
12
  PassesWith,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/matchers/toPassMatcher.ts"],"sourcesContent":["import { match } from './Match';\n\nimport { Message, toMessage } from '../utils/Types';\n\n// Handles CustomMatcherResult validations.\n\nexport const Passes = {\n Yes: 'Match passes, instead of fails.',\n No: (reason: string): string => `Match doesn't pass, because '${reason}'`,\n};\n\nexport const PassesWith = {\n Yes: 'Match passes with correct message.',\n No: (message: string, instead: string): string => `Match does pass, however not with message '${message}', but with message '${instead}' instead.`,\n};\n\nexport const toPassMatcher = (result: jest.CustomMatcherResult): jest.CustomMatcherResult =>\n match(result)\n .not(\n c => c.pass,\n c => Passes.No(c.message())\n )\n .else(Passes.Yes);\n\nexport const toPassMatcherWith = (result: jest.CustomMatcherResult, message: Message<jest.CustomMatcherResult>): jest.CustomMatcherResult =>\n match(result)\n .not(\n c => c.pass,\n c => Passes.No(c.message())\n )\n .not(\n c => c.message().includes(toMessage(message)),\n c => PassesWith.No(toMessage(message), c.message())\n )\n .else(PassesWith.Yes);\n\nexpect.extend({\n toPassMatcher: toPassMatcher,\n toPassMatcherWith: toPassMatcherWith,\n});\n\ndeclare global {\n // eslint-disable-next-line @typescript-eslint/no-namespace\n namespace jest {\n interface Matchers<R, T> {\n toPassMatcher(): R;\n toPassMatcherWith(message: string): R;\n }\n }\n}\n"],"mappings":";;;;;;;;;AAMO,IAAM,SAAS;AAAA,EACpB,KAAK;AAAA,EACL,IAAI,CAAC,WAA2B,gCAAgC,MAAM;AACxE;AAEO,IAAM,aAAa;AAAA,EACxB,KAAK;AAAA,EACL,IAAI,CAAC,SAAiB,YAA4B,8CAA8C,OAAO,wBAAwB,OAAO;AACxI;AAEO,IAAM,gBAAgB,CAAC,WAC5B,MAAM,MAAM,EACT;AAAA,EACC,OAAK,EAAE;AAAA,EACP,OAAK,OAAO,GAAG,EAAE,QAAQ,CAAC;AAC5B,EACC,KAAK,OAAO,GAAG;AAEb,IAAM,oBAAoB,CAAC,QAAkC,YAClE,MAAM,MAAM,EACT;AAAA,EACC,OAAK,EAAE;AAAA,EACP,OAAK,OAAO,GAAG,EAAE,QAAQ,CAAC;AAC5B,EACC;AAAA,EACC,OAAK,EAAE,QAAQ,EAAE,SAAS,UAAU,OAAO,CAAC;AAAA,EAC5C,OAAK,WAAW,GAAG,UAAU,OAAO,GAAG,EAAE,QAAQ,CAAC;AACpD,EACC,KAAK,WAAW,GAAG;AAExB,OAAO,OAAO;AAAA,EACZ;AAAA,EACA;AACF,CAAC;","names":[]}
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1,48 +1,11 @@
1
1
  import {
2
- eq
3
- } from "../chunk-QE3TR4BY.mjs";
4
- import {
5
- asJson,
6
- asString,
7
- toArray
8
- } from "../chunk-O475TEG2.mjs";
9
-
10
- // src/mock/Fits.ts
11
- import { AsymmetricMatcher } from "expect";
12
- var ObjectContainingText = class extends AsymmetricMatcher {
13
- asymmetricMatch(other) {
14
- return asString(other).includes(asString(this.sample));
15
- }
16
- toString() {
17
- return `String${this.inverse ? "Not" : ""}Containing`;
18
- }
19
- };
20
- var ObjectContainingTextExact = class extends AsymmetricMatcher {
21
- asymmetricMatch(other) {
22
- return asString(other) === asString(this.sample);
23
- }
24
- toString() {
25
- return `String${this.inverse ? "Not" : ""}Containing`;
26
- }
27
- };
28
- var ObjectContainingJson = class extends AsymmetricMatcher {
29
- asymmetricMatch(other) {
30
- return eq.subset(asJson(other), asJson(this.sample));
31
- }
32
- toString() {
33
- return `Object${this.inverse ? "Not" : ""}Containing`;
34
- }
35
- };
36
- var fits = {
37
- any: () => expect.anything(),
38
- type: (type) => expect.any(type),
39
- with: (o) => expect.objectContaining(o),
40
- text: (s) => new ObjectContainingText(s),
41
- textExact: (s) => new ObjectContainingTextExact(s),
42
- uri: (u) => fits.textExact(u),
43
- json: (s) => new ObjectContainingJson(s),
44
- items: (...items) => expect.arrayContaining(toArray(...items))
45
- };
2
+ ObjectContainingJson,
3
+ ObjectContainingText,
4
+ ObjectContainingTextExact,
5
+ fits
6
+ } from "../chunk-DHDFXV7G.mjs";
7
+ import "../chunk-QE3TR4BY.mjs";
8
+ import "../chunk-O475TEG2.mjs";
46
9
  export {
47
10
  ObjectContainingJson,
48
11
  ObjectContainingText,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/mock/Fits.ts"],"sourcesContent":["import { asJson, asString, toArray } from '../utils/Utils';\nimport { eq } from '../utils/Eq';\nimport { AsymmetricMatcher } from 'expect';\nimport { Uri } from '../utils/Types';\n\nexport class ObjectContainingText extends AsymmetricMatcher<string> {\n asymmetricMatch(other: any) {\n return asString(other).includes(asString(this.sample));\n }\n\n toString() {\n return `String${this.inverse ? 'Not' : ''}Containing`;\n }\n}\n\nexport class ObjectContainingTextExact extends AsymmetricMatcher<string> {\n asymmetricMatch(other: any) {\n return asString(other) === asString(this.sample);\n }\n\n toString() {\n return `String${this.inverse ? 'Not' : ''}Containing`;\n }\n}\n\nexport class ObjectContainingJson extends AsymmetricMatcher<any> {\n asymmetricMatch(other: any) {\n return eq.subset(asJson(other), asJson(this.sample));\n }\n\n toString() {\n return `Object${this.inverse ? 'Not' : ''}Containing`;\n }\n}\n\nexport const fits = {\n any: (): any => expect.anything(),\n type: (type?: unknown): any => expect.any(type),\n with: (o: unknown): any => expect.objectContaining(o),\n text: (s: any): any => new ObjectContainingText(s),\n textExact: (s: any): any => new ObjectContainingTextExact(s),\n uri: (u: Uri): any => fits.textExact(u),\n json: (s: any): any => new ObjectContainingJson(s),\n items: (...items: any[]): any => expect.arrayContaining(toArray(...items)),\n};\n"],"mappings":";;;;;;;;;;AAEA,SAAS,yBAAyB;AAG3B,IAAM,uBAAN,cAAmC,kBAA0B;AAAA,EAClE,gBAAgB,OAAY;AAC1B,WAAO,SAAS,KAAK,EAAE,SAAS,SAAS,KAAK,MAAM,CAAC;AAAA,EACvD;AAAA,EAEA,WAAW;AACT,WAAO,SAAS,KAAK,UAAU,QAAQ,EAAE;AAAA,EAC3C;AACF;AAEO,IAAM,4BAAN,cAAwC,kBAA0B;AAAA,EACvE,gBAAgB,OAAY;AAC1B,WAAO,SAAS,KAAK,MAAM,SAAS,KAAK,MAAM;AAAA,EACjD;AAAA,EAEA,WAAW;AACT,WAAO,SAAS,KAAK,UAAU,QAAQ,EAAE;AAAA,EAC3C;AACF;AAEO,IAAM,uBAAN,cAAmC,kBAAuB;AAAA,EAC/D,gBAAgB,OAAY;AAC1B,WAAO,GAAG,OAAO,OAAO,KAAK,GAAG,OAAO,KAAK,MAAM,CAAC;AAAA,EACrD;AAAA,EAEA,WAAW;AACT,WAAO,SAAS,KAAK,UAAU,QAAQ,EAAE;AAAA,EAC3C;AACF;AAEO,IAAM,OAAO;AAAA,EAClB,KAAK,MAAW,OAAO,SAAS;AAAA,EAChC,MAAM,CAAC,SAAwB,OAAO,IAAI,IAAI;AAAA,EAC9C,MAAM,CAAC,MAAoB,OAAO,iBAAiB,CAAC;AAAA,EACpD,MAAM,CAAC,MAAgB,IAAI,qBAAqB,CAAC;AAAA,EACjD,WAAW,CAAC,MAAgB,IAAI,0BAA0B,CAAC;AAAA,EAC3D,KAAK,CAAC,MAAgB,KAAK,UAAU,CAAC;AAAA,EACtC,MAAM,CAAC,MAAgB,IAAI,qBAAqB,CAAC;AAAA,EACjD,OAAO,IAAI,UAAsB,OAAO,gBAAgB,QAAQ,GAAG,KAAK,CAAC;AAC3E;","names":[]}
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1,84 +1,9 @@
1
1
  import {
2
- Req
3
- } from "../chunk-SJR3TRWF.mjs";
2
+ Mocks,
3
+ mock
4
+ } from "../chunk-CQPHLHB7.mjs";
5
+ import "../chunk-SJR3TRWF.mjs";
4
6
  import "../chunk-O475TEG2.mjs";
5
-
6
- // src/mock/Mocks.ts
7
- var Mocks = class {
8
- req = {
9
- id: (id) => new Req({ id }),
10
- q: (q) => new Req({ q }),
11
- with: (a) => new Req(a),
12
- body: (body) => new Req({ body }),
13
- path: (path) => new Req({ path }),
14
- query: (query) => new Req({ query })
15
- };
16
- resp = {
17
- items: (status, items = []) => ({
18
- status,
19
- body: {
20
- data: {
21
- code: status.id,
22
- itemCount: items.length,
23
- items
24
- }
25
- }
26
- }),
27
- errors: (status, message, errors = []) => ({
28
- status,
29
- body: {
30
- error: {
31
- code: status.id,
32
- message,
33
- errorCount: errors.length,
34
- errors
35
- }
36
- }
37
- })
38
- };
39
- provider = {
40
- data: (...items) => ({
41
- execute: jest.fn().mockResolvedValue({
42
- body: {
43
- data: {
44
- itemCount: items.length,
45
- items
46
- }
47
- }
48
- })
49
- })
50
- };
51
- static getArg = (mock2, call = 0, arg = 0) => {
52
- if (!isJestMock(mock2))
53
- throw new Error("Function provided is not a Jest mock");
54
- return mock2.mock.calls[call]?.[arg];
55
- };
56
- clear = () => jest.clearAllMocks();
57
- impl = (f) => jest.fn().mockImplementation(f);
58
- property = (object, getter, value) => jest.spyOn(object, getter, "get").mockReturnValue(value);
59
- reject = (value) => jest.fn().mockRejectedValue(value);
60
- rejectWith = (props = {}) => jest.fn().mockRejectedValue(mock.a(props));
61
- resolve = (value) => jest.fn().mockResolvedValue(value);
62
- resolveWith = (props = {}) => jest.fn().mockResolvedValue(mock.a(props));
63
- return = (value) => jest.fn().mockReturnValue(value);
64
- returnWith = (props = {}) => jest.fn().mockReturnValue(mock.a(props));
65
- this = () => jest.fn().mockReturnThis();
66
- empty = (props = {}) => props;
67
- a = this.empty;
68
- an = this.empty;
69
- date = (epoch = 1621347575) => {
70
- const date = new Date(epoch);
71
- date.toString = mock.return("Mon Jan 19 1970 19:22:27 GMT+0100 (Central European Standard Time)");
72
- date.toLocaleDateString = mock.return("19/01/1970");
73
- date.toDateString = mock.return("19/01/1970");
74
- return date;
75
- };
76
- once = (...values) => values.reduce((m, v) => m.mockImplementationOnce(() => v), jest.fn());
77
- };
78
- function isJestMock(fn) {
79
- return typeof fn === "function" && "mock" in fn && Array.isArray(fn.mock?.calls);
80
- }
81
- var mock = new Mocks();
82
7
  export {
83
8
  Mocks,
84
9
  mock
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/mock/Mocks.ts"],"sourcesContent":["import { Id, Json } from '../utils/Types';\nimport { Req } from '../utils/Req';\nimport { HttpStatus, Response } from '../utils/Response';\n\nexport class Mocks {\n req = {\n id: (id: Id): Req => new Req({ id }),\n q: (q: unknown): Req => new Req({ q }),\n with: (a: Json): Req => new Req(a),\n body: <B = unknown>(body: B): Req<B> => new Req<B>({ body }),\n path: (path: Json): Req => new Req({ path }),\n query: (query: Json): Req => new Req({ query }),\n };\n resp = {\n items: (status: HttpStatus, items: unknown[] = []): Response => ({\n status: status,\n body: {\n data: {\n code: status.id as number,\n itemCount: items.length,\n items,\n },\n },\n }),\n errors: (status: HttpStatus, message: string, errors: unknown[] = []): Response => ({\n status: status,\n body: {\n error: {\n code: status.id as number,\n message: message,\n errorCount: errors.length,\n errors,\n },\n },\n }),\n };\n provider = {\n data: (...items: any[]): { execute: jest.Mock } => ({\n execute: jest.fn().mockResolvedValue({\n body: {\n data: {\n itemCount: items.length,\n items,\n },\n },\n }),\n }),\n };\n\n static readonly getArg = <T>(mock: unknown, call = 0, arg = 0): T | undefined => {\n if (!isJestMock(mock)) throw new Error('Function provided is not a Jest mock');\n return mock.mock.calls[call]?.[arg] as T;\n };\n\n clear = (): typeof jest => jest.clearAllMocks();\n\n impl = (f?: (...args: any[]) => any): jest.Mock => jest.fn().mockImplementation(f);\n\n property = <T extends object, P extends jest.NonFunctionPropertyNames<Required<T>>>(object: T, getter: P, value: T[P]): jest.SpyInstance =>\n jest.spyOn(object, getter, 'get' as jest.PropertyAccessors<P, T>).mockReturnValue(value as any);\n\n reject = (value?: unknown): jest.Mock => jest.fn().mockRejectedValue(value);\n\n rejectWith = <T = any>(props: Partial<T> = {}): jest.Mock => jest.fn().mockRejectedValue(mock.a(props));\n\n resolve = (value?: unknown): jest.Mock => jest.fn().mockResolvedValue(value);\n\n resolveWith = <T = any>(props: Partial<T> = {}): jest.Mock => jest.fn().mockResolvedValue(mock.a(props));\n\n return = (value?: unknown): jest.Mock => jest.fn().mockReturnValue(value);\n\n returnWith = <T = any>(props: Partial<T> = {}): jest.Mock => jest.fn().mockReturnValue(mock.a(props));\n\n this = (): jest.Mock => jest.fn().mockReturnThis();\n\n empty = <T = any>(props: Partial<T> = {}): T => props as T;\n a = this.empty;\n an = this.empty;\n date = (epoch = 1621347575): Date => {\n const date = new Date(epoch);\n date.toString = mock.return('Mon Jan 19 1970 19:22:27 GMT+0100 (Central European Standard Time)');\n date.toLocaleDateString = mock.return('19/01/1970');\n date.toDateString = mock.return('19/01/1970');\n return date;\n };\n once = (...values: unknown[]): jest.Mock => values.reduce((m: jest.Mock, v: unknown) => m.mockImplementationOnce(() => v), jest.fn());\n}\n\nfunction isJestMock(fn: any): fn is jest.Mock {\n return typeof fn === 'function' && 'mock' in fn && Array.isArray(fn.mock?.calls);\n}\n\nexport const mock = new Mocks();\n"],"mappings":"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","names":["mock"]}
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}