globalpayments-api 3.11.3 → 3.12.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 (90) hide show
  1. package/CHANGELOG.md +11 -1
  2. package/README.md +18 -0
  3. package/lib/src/Builders/AuthorizationBuilder.d.ts +0 -1
  4. package/lib/src/Builders/AuthorizationBuilder.js +0 -4
  5. package/lib/src/Builders/AuthorizationBuilder.js.map +1 -1
  6. package/lib/src/Builders/RecurringBuilder.js +12 -1
  7. package/lib/src/Builders/RecurringBuilder.js.map +1 -1
  8. package/lib/src/Entities/Address.d.ts +1 -0
  9. package/lib/src/Entities/Address.js +1 -0
  10. package/lib/src/Entities/Address.js.map +1 -1
  11. package/lib/src/Entities/Enums/AcquisitionType.d.ts +2 -1
  12. package/lib/src/Entities/Enums/AcquisitionType.js +1 -0
  13. package/lib/src/Entities/Enums/AcquisitionType.js.map +1 -1
  14. package/lib/src/Terminals/Abstractions/IDeviceResponse.d.ts +2 -0
  15. package/lib/src/Terminals/Builders/TerminalAuthBuilder.d.ts +24 -0
  16. package/lib/src/Terminals/Builders/TerminalAuthBuilder.js +53 -0
  17. package/lib/src/Terminals/Builders/TerminalAuthBuilder.js.map +1 -1
  18. package/lib/src/Terminals/Builders/TerminalBuilder.d.ts +3 -3
  19. package/lib/src/Terminals/Builders/TerminalBuilder.js.map +1 -1
  20. package/lib/src/Terminals/Builders/TerminalManageBuilder.d.ts +3 -0
  21. package/lib/src/Terminals/Builders/TerminalManageBuilder.js +8 -0
  22. package/lib/src/Terminals/Builders/TerminalManageBuilder.js.map +1 -1
  23. package/lib/src/Terminals/UPA/Reponses/TransactionResponse.d.ts +6 -0
  24. package/lib/src/Terminals/UPA/Reponses/TransactionResponse.js +30 -0
  25. package/lib/src/Terminals/UPA/Reponses/TransactionResponse.js.map +1 -1
  26. package/lib/src/Terminals/UPA/UpaController.js +124 -8
  27. package/lib/src/Terminals/UPA/UpaController.js.map +1 -1
  28. package/lib/src/Terminals/UPA/UpaInterface.d.ts +1 -1
  29. package/lib/src/Terminals/UPA/UpaInterface.js +4 -2
  30. package/lib/src/Terminals/UPA/UpaInterface.js.map +1 -1
  31. package/lib/test/Integration/Gateways/GpApiConnector/GpApiMMAAccount.test.js +149 -0
  32. package/lib/test/Integration/Gateways/GpApiConnector/GpApiMMAAccount.test.js.map +1 -0
  33. package/lib/test/Unit/Gateways/GpApiConnector/GpApiMMAAccount.test.js +29 -0
  34. package/lib/test/Unit/Gateways/GpApiConnector/GpApiMMAAccount.test.js.map +1 -0
  35. package/lib/test/Unit/Terminals/Builders/TerminalBuilderParityTests.d.ts +17 -0
  36. package/lib/test/Unit/Terminals/Builders/TerminalBuilderParityTests.js +325 -0
  37. package/lib/test/Unit/Terminals/Builders/TerminalBuilderParityTests.js.map +1 -0
  38. package/lib/test/Unit/Terminals/Builders/TerminalBuilderParityTests.test.d.ts +17 -0
  39. package/lib/test/Unit/Terminals/Builders/TerminalBuilderParityTests.test.js +325 -0
  40. package/lib/test/Unit/Terminals/Builders/TerminalBuilderParityTests.test.js.map +1 -0
  41. package/lib/test/Unit/Terminals/UPA/UpaAdmin.test.js +150 -3
  42. package/lib/test/Unit/Terminals/UPA/UpaAdmin.test.js.map +1 -1
  43. package/lib/test/Unit/Terminals/UPA/UpaCredit.test.js +274 -2
  44. package/lib/test/Unit/Terminals/UPA/UpaCredit.test.js.map +1 -1
  45. package/lib/test/Unit/Terminals/UPA/UpaEMVParameterValidation.test.d.ts +7 -0
  46. package/lib/test/Unit/Terminals/UPA/UpaEMVParameterValidation.test.js +258 -0
  47. package/lib/test/Unit/Terminals/UPA/UpaEMVParameterValidation.test.js.map +1 -0
  48. package/lib/test/Unit/Terminals/UPA/UpaJiraStoryValidation.test.d.ts +26 -0
  49. package/lib/test/Unit/Terminals/UPA/UpaJiraStoryValidation.test.js +389 -0
  50. package/lib/test/Unit/Terminals/UPA/UpaJiraStoryValidation.test.js.map +1 -0
  51. package/lib/test/Unit/Terminals/UPA/UpaLanguageCode.test.d.ts +18 -0
  52. package/lib/test/Unit/Terminals/UPA/UpaLanguageCode.test.js +314 -0
  53. package/lib/test/Unit/Terminals/UPA/UpaLanguageCode.test.js.map +1 -0
  54. package/package.json +2 -2
  55. package/lib/test/Integration/Terminals/UPA/UpaTransactionResponseLive.test.js +0 -378
  56. package/lib/test/Integration/Terminals/UPA/UpaTransactionResponseLive.test.js.map +0 -1
  57. package/lib/test/Unit/Builders/AuthorizationBuilder/SupplementaryData.test.js +0 -147
  58. package/lib/test/Unit/Builders/AuthorizationBuilder/SupplementaryData.test.js.map +0 -1
  59. package/lib/test/Unit/Terminals/UPA/Reponses/BatchList.test.d.ts +0 -1
  60. package/lib/test/Unit/Terminals/UPA/Reponses/BatchList.test.js +0 -64
  61. package/lib/test/Unit/Terminals/UPA/Reponses/BatchList.test.js.map +0 -1
  62. package/lib/test/Unit/Terminals/UPA/Reponses/BatchReportResponse.test.d.ts +0 -1
  63. package/lib/test/Unit/Terminals/UPA/Reponses/BatchReportResponse.test.js +0 -145
  64. package/lib/test/Unit/Terminals/UPA/Reponses/BatchReportResponse.test.js.map +0 -1
  65. package/lib/test/Unit/Terminals/UPA/Reponses/OpenTabDetailsResponse.test.d.ts +0 -1
  66. package/lib/test/Unit/Terminals/UPA/Reponses/OpenTabDetailsResponse.test.js +0 -70
  67. package/lib/test/Unit/Terminals/UPA/Reponses/OpenTabDetailsResponse.test.js.map +0 -1
  68. package/lib/test/Unit/Terminals/UPA/Reponses/SafReportResponse.test.d.ts +0 -1
  69. package/lib/test/Unit/Terminals/UPA/Reponses/SafReportResponse.test.js +0 -112
  70. package/lib/test/Unit/Terminals/UPA/Reponses/SafReportResponse.test.js.map +0 -1
  71. package/lib/test/Unit/Terminals/UPA/Reponses/UpaEODResponse.test.d.ts +0 -1
  72. package/lib/test/Unit/Terminals/UPA/Reponses/UpaEODResponse.test.js +0 -108
  73. package/lib/test/Unit/Terminals/UPA/Reponses/UpaEODResponse.test.js.map +0 -1
  74. package/lib/test/Unit/Terminals/UPA/Reponses/UpaSAFResponse.test.d.ts +0 -1
  75. package/lib/test/Unit/Terminals/UPA/Reponses/UpaSAFResponse.test.js +0 -95
  76. package/lib/test/Unit/Terminals/UPA/Reponses/UpaSAFResponse.test.js.map +0 -1
  77. package/lib/test/Unit/Terminals/UPA/Responses/UpaTransactionResponse.test.d.ts +0 -1
  78. package/lib/test/Unit/Terminals/UPA/Responses/UpaTransactionResponse.test.js +0 -1624
  79. package/lib/test/Unit/Terminals/UPA/Responses/UpaTransactionResponse.test.js.map +0 -1
  80. package/lib/test/Unit/Terminals/UPA/UpaStory1Methods.test.d.ts +0 -1
  81. package/lib/test/Unit/Terminals/UPA/UpaStory1Methods.test.js +0 -250
  82. package/lib/test/Unit/Terminals/UPA/UpaStory1Methods.test.js.map +0 -1
  83. package/lib/test/Unit/Terminals/UPA/UpaStory2Methods.test.d.ts +0 -1
  84. package/lib/test/Unit/Terminals/UPA/UpaStory2Methods.test.js +0 -1277
  85. package/lib/test/Unit/Terminals/UPA/UpaStory2Methods.test.js.map +0 -1
  86. package/lib/test/Unit/Terminals/UPA/UpaStory3_4Methods.test.d.ts +0 -1
  87. package/lib/test/Unit/Terminals/UPA/UpaStory3_4Methods.test.js +0 -411
  88. package/lib/test/Unit/Terminals/UPA/UpaStory3_4Methods.test.js.map +0 -1
  89. /package/lib/test/Integration/{Terminals/UPA/UpaTransactionResponseLive.test.d.ts → Gateways/GpApiConnector/GpApiMMAAccount.test.d.ts} +0 -0
  90. /package/lib/test/Unit/{Builders/AuthorizationBuilder/SupplementaryData.test.d.ts → Gateways/GpApiConnector/GpApiMMAAccount.test.d.ts} +0 -0
@@ -0,0 +1,149 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const src_1 = require("../../../../src");
4
+ const BaseGpApiTestConfig_1 = require("../../../Data/BaseGpApiTestConfig");
5
+ const defaultConfigName = "default";
6
+ const merchantConfigName = "merchant-sale";
7
+ const mmaConfigName = "mma-account-merchant-sale";
8
+ const merchantScopedAppId = "wuqol13QQJu0vcjbdN9892cl5IcyJgPU";
9
+ const merchantScopedAppKey = "jdOJNxsGbE0nLeTx";
10
+ const merchantScopedMerchantId = "MER_3abc0724f49c40e59a61309ae6d37dfd";
11
+ const partnerAppId = "ju9LDqNIxUgY2NeQPgwqc0fLbq3AcJCL";
12
+ const partnerAppKey = "KYYh3YJwyfzqjWNa";
13
+ const merchantManagementAccountID = "MMA_344aebc638864d7381909dcf78d4c760";
14
+ const mmaMerchantId = "MER_6517954c0c8544feb3f74c825e2b032c";
15
+ const requestEndpoints = [];
16
+ const requestLogger = {
17
+ requestSent: (_verb, endpoint) => {
18
+ requestEndpoints.push(endpoint);
19
+ },
20
+ responseReceived: async () => undefined,
21
+ responseError: async () => undefined,
22
+ };
23
+ const createCard = (cardPresent = false) => {
24
+ const card = new src_1.CreditCardData();
25
+ card.number = "5425230000004415";
26
+ card.expMonth = "12";
27
+ card.expYear = "2027";
28
+ card.cvn = "123";
29
+ card.cardPresent = cardPresent;
30
+ return card;
31
+ };
32
+ const createConfig = (appId, appKey, channel) => {
33
+ const config = new src_1.GpApiConfig();
34
+ config.appId = appId;
35
+ config.appKey = appKey;
36
+ config.channel = channel;
37
+ config.country = "US";
38
+ config.environment = src_1.Environment.Test;
39
+ config.accessTokenInfo = new src_1.AccessTokenInfo();
40
+ config.accessTokenInfo.transactionProcessingAccountName =
41
+ "transaction_processing";
42
+ config.accessTokenInfo.riskAssessmentAccountName = "EOS_RiskAssessment";
43
+ config.challengeNotificationUrl = "https://ensi808o85za.x.pipedream.net/";
44
+ config.methodNotificationUrl = "https://ensi808o85za.x.pipedream.net/";
45
+ config.merchantContactUrl = "https://ensi808o85za.x.pipedream.net/";
46
+ config.requestLogger = requestLogger;
47
+ return config;
48
+ };
49
+ describe("GP-API MMA account routing", () => {
50
+ beforeEach(() => {
51
+ requestEndpoints.length = 0;
52
+ src_1.ServicesContainer.removeConfiguration(defaultConfigName);
53
+ src_1.ServicesContainer.removeConfiguration(merchantConfigName);
54
+ src_1.ServicesContainer.removeConfiguration(mmaConfigName);
55
+ src_1.ServicesContainer.configureService(BaseGpApiTestConfig_1.BaseGpApiTestConfig.gpApiSetupConfig(src_1.Channel.CardNotPresent), defaultConfigName);
56
+ const merchantConfig = createConfig(merchantScopedAppId, merchantScopedAppKey, src_1.Channel.CardPresent);
57
+ merchantConfig.merchantId = merchantScopedMerchantId;
58
+ merchantConfig.accessTokenInfo.transactionProcessingAccountName =
59
+ "test_account_CungkardAk";
60
+ src_1.ServicesContainer.configureService(merchantConfig, merchantConfigName);
61
+ const mmaConfig = createConfig(partnerAppId, partnerAppKey, src_1.Channel.CardNotPresent);
62
+ mmaConfig.merchantId = mmaMerchantId;
63
+ mmaConfig.merchantManagementAccountID = merchantManagementAccountID;
64
+ src_1.ServicesContainer.configureService(mmaConfig, mmaConfigName);
65
+ });
66
+ afterAll(() => {
67
+ src_1.ServicesContainer.removeConfiguration(defaultConfigName);
68
+ src_1.ServicesContainer.removeConfiguration(merchantConfigName);
69
+ src_1.ServicesContainer.removeConfiguration(mmaConfigName);
70
+ });
71
+ test("charges through the MMA merchant transactions endpoint", async () => {
72
+ const response = await createCard()
73
+ .charge(1.01)
74
+ .withCurrency("USD")
75
+ .execute(mmaConfigName);
76
+ expect(response).toBeTruthy();
77
+ expect(response.responseCode).toBe("SUCCESS");
78
+ });
79
+ test("charges through the existing merchant transactions endpoint", async () => {
80
+ const response = await createCard(true)
81
+ .charge(1.01)
82
+ .withCurrency("GBP")
83
+ .execute(merchantConfigName);
84
+ expect(response).toBeTruthy();
85
+ expect(response.responseCode).toBe("SUCCESS");
86
+ });
87
+ test("charges through the default transactions endpoint", async () => {
88
+ const response = await createCard()
89
+ .charge(1.01)
90
+ .withCurrency("GBP")
91
+ .execute(defaultConfigName);
92
+ expect(response).toBeTruthy();
93
+ expect(response.responseCode).toBe("SUCCESS");
94
+ });
95
+ test("captures through the MMA merchant endpoint", async () => {
96
+ const authorization = await createCard()
97
+ .authorize(1.01)
98
+ .withCurrency("USD")
99
+ .execute(mmaConfigName);
100
+ const response = await authorization.capture(1.01).execute(mmaConfigName);
101
+ expect(response).toBeTruthy();
102
+ });
103
+ test("reports a transaction through the MMA merchant endpoint", async () => {
104
+ const authorization = await createCard()
105
+ .authorize(1.01)
106
+ .withCurrency("USD")
107
+ .execute(mmaConfigName);
108
+ try {
109
+ const response = await src_1.ReportingService.transactionDetail(authorization.transactionId).execute(mmaConfigName);
110
+ expect(response.transactionId).toBe(authorization.transactionId);
111
+ }
112
+ catch (error) {
113
+ expect(error).toBeInstanceOf(src_1.GatewayError);
114
+ }
115
+ expect(requestEndpoints.some((endpoint) => endpoint.startsWith(`https://apis.sandbox.globalpay.com/ucp/accounts/${merchantManagementAccountID}/merchants/${mmaMerchantId}/transactions/${authorization.transactionId}`))).toBe(true);
116
+ });
117
+ test("checks 3DS enrollment through the MMA merchant endpoint", async () => {
118
+ const card = createCard();
119
+ card.number = "4263970000005262";
120
+ card.cardHolderName = "James Mason";
121
+ const response = await src_1.Secure3dService.checkEnrollment(card)
122
+ .withAmount(1.01)
123
+ .withCurrency("USD")
124
+ .execute(mmaConfigName);
125
+ expect(response).toBeTruthy();
126
+ expect(requestEndpoints.some((endpoint) => endpoint.includes(`/accounts/${merchantManagementAccountID}/merchants/${mmaMerchantId}/authentications`))).toBe(true);
127
+ });
128
+ test("rejects an MMA merchant that is not associated with the account", async () => {
129
+ const invalidConfig = createConfig(partnerAppId, partnerAppKey, src_1.Channel.CardNotPresent);
130
+ invalidConfig.merchantManagementAccountID = merchantManagementAccountID;
131
+ invalidConfig.merchantId = "MER_20c2b3fcfedd484e9c3723347db46b71";
132
+ src_1.ServicesContainer.configureService(invalidConfig, "invalid-mma-merchant");
133
+ await expect(createCard()
134
+ .charge(1.01)
135
+ .withCurrency("USD")
136
+ .execute("invalid-mma-merchant")).rejects.toBeInstanceOf(src_1.GatewayError);
137
+ src_1.ServicesContainer.removeConfiguration("invalid-mma-merchant");
138
+ });
139
+ test("rejects a merchant-scoped request without currency", async () => {
140
+ await expect(createCard(true).charge(1.01).execute(merchantConfigName)).rejects.toBeInstanceOf(src_1.GatewayError);
141
+ });
142
+ test("rejects an MMA merchant-scoped request without currency", async () => {
143
+ await expect(createCard().charge(1.01).execute(mmaConfigName)).rejects.toBeInstanceOf(src_1.GatewayError);
144
+ });
145
+ test("rejects a default request without currency", async () => {
146
+ await expect(createCard().charge(1.01).execute(defaultConfigName)).rejects.toBeInstanceOf(src_1.GatewayError);
147
+ });
148
+ });
149
+ //# sourceMappingURL=GpApiMMAAccount.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GpApiMMAAccount.test.js","sourceRoot":"","sources":["../../../../../test/Integration/Gateways/GpApiConnector/GpApiMMAAccount.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const GpApiRequest_1 = require("../../../../src/Entities/GpApi/GpApiRequest");
4
+ const merchantId = "MER_6517954c0c8544feb3f74c825e2b032c";
5
+ const merchantManagementAccountID = "MMA_344aebc638864d7381909dcf78d4c760";
6
+ describe("GP-API MMA account routing", () => {
7
+ test("leaves the default transaction route unscoped", () => {
8
+ expect(GpApiRequest_1.GpApiRequest.getMerchantUrl({})).toBe("");
9
+ });
10
+ test("routes merchant-scoped requests through the configured merchant", () => {
11
+ const config = { merchantId };
12
+ expect(GpApiRequest_1.GpApiRequest.getMerchantUrl(config)).toBe(`/merchants/${merchantId}`);
13
+ });
14
+ test("routes merchant-scoped requests through the configured MMA", () => {
15
+ const config = {
16
+ merchantId,
17
+ merchantManagementAccountID,
18
+ };
19
+ expect(GpApiRequest_1.GpApiRequest.getMerchantUrl(config)).toBe(`/accounts/${merchantManagementAccountID}/merchants/${merchantId}`);
20
+ });
21
+ test("uses the supplied merchant id for an MMA-scoped override", () => {
22
+ const config = { merchantManagementAccountID };
23
+ expect(GpApiRequest_1.GpApiRequest.getMerchantUrl(config, merchantId)).toBe(`/accounts/${merchantManagementAccountID}/merchants/${merchantId}`);
24
+ });
25
+ test("does not scope access-token requests", () => {
26
+ expect(GpApiRequest_1.GpApiRequest.ACCESS_TOKEN_ENDPOINT).toBe("/accesstoken");
27
+ });
28
+ });
29
+ //# sourceMappingURL=GpApiMMAAccount.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GpApiMMAAccount.test.js","sourceRoot":"","sources":["../../../../../test/Unit/Gateways/GpApiConnector/GpApiMMAAccount.test.ts"],"names":[],"mappings":";;AAAA,8EAA2E;AAE3E,MAAM,UAAU,GAAG,sCAAsC,CAAC;AAC1D,MAAM,2BAA2B,GAAG,sCAAsC,CAAC;AAE3E,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;IAC1C,IAAI,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACzD,MAAM,CAAC,2BAAY,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,iEAAiE,EAAE,GAAG,EAAE;QAC3E,MAAM,MAAM,GAAG,EAAE,UAAU,EAAE,CAAC;QAE9B,MAAM,CAAC,2BAAY,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAC9C,cAAc,UAAU,EAAE,CAC3B,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,4DAA4D,EAAE,GAAG,EAAE;QACtE,MAAM,MAAM,GAAG;YACb,UAAU;YACV,2BAA2B;SAC5B,CAAC;QAEF,MAAM,CAAC,2BAAY,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAC9C,aAAa,2BAA2B,cAAc,UAAU,EAAE,CACnE,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,0DAA0D,EAAE,GAAG,EAAE;QACpE,MAAM,MAAM,GAAG,EAAE,2BAA2B,EAAE,CAAC;QAE/C,MAAM,CAAC,2BAAY,CAAC,cAAc,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,CAC1D,aAAa,2BAA2B,cAAc,UAAU,EAAE,CACnE,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAChD,MAAM,CAAC,2BAAY,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Unit tests for TerminalAuthBuilder and TerminalManageBuilder
3
+ * Testing newly added properties and builder methods for UPA parity with .NET SDK
4
+ *
5
+ * Properties added to TerminalAuthBuilder:
6
+ * - clerkId
7
+ * - prescriptionAmount
8
+ * - clinicAmount
9
+ * - dentalAmount
10
+ * - visionOpticalAmount
11
+ * - confirmAmount
12
+ * - surchargeAmount
13
+ *
14
+ * Properties added to TerminalManageBuilder:
15
+ * - clerkId
16
+ */
17
+ export {};
@@ -0,0 +1,325 @@
1
+ "use strict";
2
+ /**
3
+ * Unit tests for TerminalAuthBuilder and TerminalManageBuilder
4
+ * Testing newly added properties and builder methods for UPA parity with .NET SDK
5
+ *
6
+ * Properties added to TerminalAuthBuilder:
7
+ * - clerkId
8
+ * - prescriptionAmount
9
+ * - clinicAmount
10
+ * - dentalAmount
11
+ * - visionOpticalAmount
12
+ * - confirmAmount
13
+ * - surchargeAmount
14
+ *
15
+ * Properties added to TerminalManageBuilder:
16
+ * - clerkId
17
+ */
18
+ Object.defineProperty(exports, "__esModule", { value: true });
19
+ const src_1 = require("../../../../src");
20
+ describe("TerminalAuthBuilder Parity Tests", () => {
21
+ describe("Medical Amount Properties", () => {
22
+ let builder;
23
+ beforeEach(() => {
24
+ builder = new src_1.TerminalAuthBuilder(src_1.TransactionType.Sale);
25
+ });
26
+ test("withPrescriptionAmount() should set prescriptionAmount property", () => {
27
+ const prescriptionAmt = 25.5;
28
+ const result = builder.withPrescriptionAmount(prescriptionAmt);
29
+ expect(builder.prescriptionAmount).toBe(prescriptionAmt);
30
+ expect(result).toBe(builder); // Fluent API returns this
31
+ });
32
+ test("withClinicAmount() should set clinicAmount property", () => {
33
+ const clinicAmt = 45.75;
34
+ const result = builder.withClinicAmount(clinicAmt);
35
+ expect(builder.clinicAmount).toBe(clinicAmt);
36
+ expect(result).toBe(builder);
37
+ });
38
+ test("withDentalAmount() should set dentalAmount property", () => {
39
+ const dentalAmt = 100.0;
40
+ const result = builder.withDentalAmount(dentalAmt);
41
+ expect(builder.dentalAmount).toBe(dentalAmt);
42
+ expect(result).toBe(builder);
43
+ });
44
+ test("withVisionOpticalAmount() should set visionOpticalAmount property", () => {
45
+ const visionAmt = 200.5;
46
+ const result = builder.withVisionOpticalAmount(visionAmt);
47
+ expect(builder.visionOpticalAmount).toBe(visionAmt);
48
+ expect(result).toBe(builder);
49
+ });
50
+ test("Medical amounts can be chained together", () => {
51
+ builder
52
+ .withPrescriptionAmount(25.5)
53
+ .withClinicAmount(45.75)
54
+ .withDentalAmount(100.0)
55
+ .withVisionOpticalAmount(200.5);
56
+ expect(builder.prescriptionAmount).toBe(25.5);
57
+ expect(builder.clinicAmount).toBe(45.75);
58
+ expect(builder.dentalAmount).toBe(100.0);
59
+ expect(builder.visionOpticalAmount).toBe(200.5);
60
+ });
61
+ test("Medical amounts can be zero", () => {
62
+ builder.withPrescriptionAmount(0);
63
+ expect(builder.prescriptionAmount).toBe(0);
64
+ });
65
+ test("Medical amounts can be decimal values", () => {
66
+ builder
67
+ .withPrescriptionAmount(25.99)
68
+ .withClinicAmount(45.01)
69
+ .withDentalAmount(100.5)
70
+ .withVisionOpticalAmount(200.25);
71
+ expect(builder.prescriptionAmount).toBe(25.99);
72
+ expect(builder.clinicAmount).toBe(45.01);
73
+ expect(builder.dentalAmount).toBe(100.5);
74
+ expect(builder.visionOpticalAmount).toBe(200.25);
75
+ });
76
+ });
77
+ describe("Base Class Property - Clerk ID", () => {
78
+ let builder;
79
+ beforeEach(() => {
80
+ builder = new src_1.TerminalAuthBuilder(src_1.TransactionType.Sale);
81
+ });
82
+ test("withClerkId() (inherited from base class) should set clerkId property", () => {
83
+ const clerkId = 12345;
84
+ const result = builder.withClerkId(clerkId);
85
+ expect(builder.clerkId).toBe(clerkId);
86
+ expect(result).toBe(builder);
87
+ });
88
+ test("withClerkId() can be used in fluent chain with new medical properties", () => {
89
+ builder
90
+ .withAmount(10.0)
91
+ .withClerkId(456)
92
+ .withPrescriptionAmount(25.0)
93
+ .withInvoiceNumber("INV123");
94
+ expect(builder.amount).toBe(10.0);
95
+ expect(builder.clerkId).toBe(456);
96
+ expect(builder.prescriptionAmount).toBe(25.0);
97
+ expect(builder.invoiceNumber).toBe("INV123");
98
+ });
99
+ });
100
+ describe("Confirmation Amount Property", () => {
101
+ let builder;
102
+ beforeEach(() => {
103
+ builder = new src_1.TerminalAuthBuilder(src_1.TransactionType.Sale);
104
+ });
105
+ test("withConfirmationAmount() should set confirmAmount property to true", () => {
106
+ const result = builder.withConfirmationAmount(true);
107
+ expect(builder.confirmAmount).toBe(true);
108
+ expect(result).toBe(builder);
109
+ });
110
+ test("withConfirmationAmount() should set confirmAmount property to false", () => {
111
+ builder.withConfirmationAmount(false);
112
+ expect(builder.confirmAmount).toBe(false);
113
+ });
114
+ test("withConfirmationAmount() can be toggled", () => {
115
+ builder.withConfirmationAmount(true);
116
+ expect(builder.confirmAmount).toBe(true);
117
+ builder.withConfirmationAmount(false);
118
+ expect(builder.confirmAmount).toBe(false);
119
+ });
120
+ });
121
+ describe("Surcharge Amount Property", () => {
122
+ let builder;
123
+ beforeEach(() => {
124
+ builder = new src_1.TerminalAuthBuilder(src_1.TransactionType.Sale);
125
+ });
126
+ test("withSurchargeAmount() should set surchargeAmount property", () => {
127
+ const surchargeAmt = 2.5;
128
+ const result = builder.withSurchargeAmount(surchargeAmt);
129
+ expect(builder.surchargeAmount).toBe(surchargeAmt);
130
+ expect(result).toBe(builder);
131
+ });
132
+ test("withSurchargeAmount() should accept zero", () => {
133
+ builder.withSurchargeAmount(0);
134
+ expect(builder.surchargeAmount).toBe(0);
135
+ });
136
+ test("withSurchargeAmount() should accept decimal values", () => {
137
+ builder.withSurchargeAmount(5.99);
138
+ expect(builder.surchargeAmount).toBe(5.99);
139
+ });
140
+ test("withSurchargeAmount() can be combined with amount", () => {
141
+ builder.withAmount(100.0).withSurchargeAmount(2.5);
142
+ expect(builder.amount).toBe(100.0);
143
+ expect(builder.surchargeAmount).toBe(2.5);
144
+ });
145
+ });
146
+ describe("Complex Builder Chains", () => {
147
+ test("All new builder methods work together in a comprehensive transaction", () => {
148
+ const builder = new src_1.TerminalAuthBuilder(src_1.TransactionType.Sale)
149
+ .withAmount(100.0)
150
+ .withClerkId(789)
151
+ .withPrescriptionAmount(25.0)
152
+ .withClinicAmount(35.0)
153
+ .withDentalAmount(20.0)
154
+ .withVisionOpticalAmount(10.0)
155
+ .withConfirmationAmount(true)
156
+ .withSurchargeAmount(5.0)
157
+ .withInvoiceNumber("INV2026001");
158
+ expect(builder.amount).toBe(100.0);
159
+ expect(builder.clerkId).toBe(789);
160
+ expect(builder.prescriptionAmount).toBe(25.0);
161
+ expect(builder.clinicAmount).toBe(35.0);
162
+ expect(builder.dentalAmount).toBe(20.0);
163
+ expect(builder.visionOpticalAmount).toBe(10.0);
164
+ expect(builder.confirmAmount).toBe(true);
165
+ expect(builder.surchargeAmount).toBe(5.0);
166
+ expect(builder.invoiceNumber).toBe("INV2026001");
167
+ });
168
+ test("Medical amounts can be omitted for normal transactions", () => {
169
+ const builder = new src_1.TerminalAuthBuilder(src_1.TransactionType.Sale)
170
+ .withAmount(50.0)
171
+ .withClerkId(123);
172
+ expect(builder.amount).toBe(50.0);
173
+ expect(builder.clerkId).toBe(123);
174
+ expect(builder.prescriptionAmount).toBeUndefined();
175
+ expect(builder.clinicAmount).toBeUndefined();
176
+ expect(builder.dentalAmount).toBeUndefined();
177
+ expect(builder.visionOpticalAmount).toBeUndefined();
178
+ });
179
+ });
180
+ describe("Transaction Type Compatibility", () => {
181
+ test("New properties work with Auth transaction type", () => {
182
+ const builder = new src_1.TerminalAuthBuilder(src_1.TransactionType.Auth)
183
+ .withAmount(50.0)
184
+ .withClerkId(111);
185
+ expect(builder.transactionType).toBe(src_1.TransactionType.Auth);
186
+ expect(builder.amount).toBe(50.0);
187
+ expect(builder.clerkId).toBe(111);
188
+ });
189
+ test("New properties work with Refund transaction type", () => {
190
+ const builder = new src_1.TerminalAuthBuilder(src_1.TransactionType.Refund)
191
+ .withAmount(25.0)
192
+ .withClerkId(222);
193
+ expect(builder.transactionType).toBe(src_1.TransactionType.Refund);
194
+ expect(builder.amount).toBe(25.0);
195
+ expect(builder.clerkId).toBe(222);
196
+ });
197
+ });
198
+ });
199
+ describe("TerminalManageBuilder Parity Tests", () => {
200
+ describe("Base Class Property - Clerk ID (inherited)", () => {
201
+ let builder;
202
+ beforeEach(() => {
203
+ builder = new src_1.TerminalManageBuilder(src_1.TransactionType.Capture);
204
+ });
205
+ test("withClerkId() (inherited from base class) should set clerkId property", () => {
206
+ const clerkId = 54321;
207
+ const result = builder.withClerkId(clerkId);
208
+ expect(builder.clerkId).toBe(clerkId);
209
+ expect(result).toBe(builder);
210
+ });
211
+ test("withClerkId() can be used in fluent chain with ProcessCPC", () => {
212
+ builder
213
+ .withAmount(500.0)
214
+ .withClerkId(555)
215
+ .withProcessCPC(true)
216
+ .withTransactionId("TXN123");
217
+ expect(builder.amount).toBe(500.0);
218
+ expect(builder.clerkId).toBe(555);
219
+ expect(builder.processCPC).toBe(true);
220
+ expect(builder.transactionId).toBe("TXN123");
221
+ });
222
+ });
223
+ describe("ProcessCPC Property Verification", () => {
224
+ let builder;
225
+ beforeEach(() => {
226
+ builder = new src_1.TerminalManageBuilder(src_1.TransactionType.Capture);
227
+ });
228
+ test("withProcessCPC() should be available and working", () => {
229
+ const result = builder.withProcessCPC(true);
230
+ expect(builder.processCPC).toBe(true);
231
+ expect(result).toBe(builder);
232
+ });
233
+ test("withProcessCPC() with false value", () => {
234
+ builder.withProcessCPC(false);
235
+ expect(builder.processCPC).toBe(false);
236
+ });
237
+ test("ProcessCPC and ClerkId can be combined", () => {
238
+ builder.withProcessCPC(true).withClerkId(999).withAmount(100.0);
239
+ expect(builder.processCPC).toBe(true);
240
+ expect(builder.clerkId).toBe(999);
241
+ expect(builder.amount).toBe(100.0);
242
+ });
243
+ });
244
+ describe("Transaction Type Compatibility", () => {
245
+ test("ClerkId works with Capture transaction type", () => {
246
+ const builder = new src_1.TerminalManageBuilder(src_1.TransactionType.Capture)
247
+ .withAmount(75.0)
248
+ .withClerkId(333);
249
+ expect(builder.transactionType).toBe(src_1.TransactionType.Capture);
250
+ expect(builder.clerkId).toBe(333);
251
+ expect(builder.amount).toBe(75.0);
252
+ });
253
+ test("ClerkId works with Refund transaction type", () => {
254
+ const builder = new src_1.TerminalManageBuilder(src_1.TransactionType.Refund)
255
+ .withAmount(50.0)
256
+ .withClerkId(444);
257
+ expect(builder.transactionType).toBe(src_1.TransactionType.Refund);
258
+ expect(builder.clerkId).toBe(444);
259
+ });
260
+ test("ClerkId works with Void transaction type", () => {
261
+ const builder = new src_1.TerminalManageBuilder(src_1.TransactionType.Void).withClerkId(555);
262
+ expect(builder.transactionType).toBe(src_1.TransactionType.Void);
263
+ expect(builder.clerkId).toBe(555);
264
+ });
265
+ });
266
+ });
267
+ describe("Builder Properties Defaults", () => {
268
+ test("TerminalAuthBuilder properties default to undefined", () => {
269
+ const builder = new src_1.TerminalAuthBuilder(src_1.TransactionType.Sale);
270
+ expect(builder.clerkId).toBeUndefined();
271
+ expect(builder.prescriptionAmount).toBeUndefined();
272
+ expect(builder.clinicAmount).toBeUndefined();
273
+ expect(builder.dentalAmount).toBeUndefined();
274
+ expect(builder.visionOpticalAmount).toBeUndefined();
275
+ expect(builder.confirmAmount).toBeUndefined();
276
+ expect(builder.surchargeAmount).toBeUndefined();
277
+ });
278
+ test("TerminalManageBuilder clerkId defaults to undefined", () => {
279
+ const builder = new src_1.TerminalManageBuilder(src_1.TransactionType.Capture);
280
+ expect(builder.clerkId).toBeUndefined();
281
+ });
282
+ });
283
+ describe("Property Type Validation", () => {
284
+ describe("Numeric Properties", () => {
285
+ test("ClerkId accepts valid numbers", () => {
286
+ const builder = new src_1.TerminalAuthBuilder(src_1.TransactionType.Sale);
287
+ builder.withClerkId(12345);
288
+ expect(typeof builder.clerkId).toBe("number");
289
+ expect(builder.clerkId).toBe(12345);
290
+ });
291
+ test("Medical amounts accept valid decimal numbers", () => {
292
+ const builder = new src_1.TerminalAuthBuilder(src_1.TransactionType.Sale);
293
+ builder
294
+ .withPrescriptionAmount(10.5)
295
+ .withClinicAmount(20.75)
296
+ .withDentalAmount(30.99)
297
+ .withVisionOpticalAmount(40.01);
298
+ expect(typeof builder.prescriptionAmount).toBe("number");
299
+ expect(typeof builder.clinicAmount).toBe("number");
300
+ expect(typeof builder.dentalAmount).toBe("number");
301
+ expect(typeof builder.visionOpticalAmount).toBe("number");
302
+ });
303
+ test("Surcharge amount accepts valid decimal numbers", () => {
304
+ const builder = new src_1.TerminalAuthBuilder(src_1.TransactionType.Sale);
305
+ builder.withSurchargeAmount(5.5);
306
+ expect(typeof builder.surchargeAmount).toBe("number");
307
+ expect(builder.surchargeAmount).toBe(5.5);
308
+ });
309
+ });
310
+ describe("Boolean Properties", () => {
311
+ test("ConfirmAmount accepts boolean values", () => {
312
+ const builder = new src_1.TerminalAuthBuilder(src_1.TransactionType.Sale);
313
+ builder.withConfirmationAmount(true);
314
+ expect(typeof builder.confirmAmount).toBe("boolean");
315
+ expect(builder.confirmAmount).toBe(true);
316
+ });
317
+ test("ProcessCPC accepts boolean values in TerminalManageBuilder", () => {
318
+ const builder = new src_1.TerminalManageBuilder(src_1.TransactionType.Capture);
319
+ builder.withProcessCPC(false);
320
+ expect(typeof builder.processCPC).toBe("boolean");
321
+ expect(builder.processCPC).toBe(false);
322
+ });
323
+ });
324
+ });
325
+ //# sourceMappingURL=TerminalBuilderParityTests.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TerminalBuilderParityTests.js","sourceRoot":"","sources":["../../../../../test/Unit/Terminals/Builders/TerminalBuilderParityTests.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Unit tests for TerminalAuthBuilder and TerminalManageBuilder
3
+ * Testing newly added properties and builder methods for UPA parity with .NET SDK
4
+ *
5
+ * Properties added to TerminalAuthBuilder:
6
+ * - clerkId
7
+ * - prescriptionAmount
8
+ * - clinicAmount
9
+ * - dentalAmount
10
+ * - visionOpticalAmount
11
+ * - confirmAmount
12
+ * - surchargeAmount
13
+ *
14
+ * Properties added to TerminalManageBuilder:
15
+ * - clerkId
16
+ */
17
+ export {};