Skip to content

Commit

Permalink
Allow nullable for TerminalSettings (#1432)
Browse files Browse the repository at this point in the history
* adjusted mustache templates and created test

* test fix nullable

* removed nullable test

* added test for terminalSettings

* adjusted import for terminalSettings test

* Update model.mustache

removed empty line
  • Loading branch information
DjoykeAbyah authored Nov 25, 2024
1 parent f7a6524 commit 38fd8e8
Show file tree
Hide file tree
Showing 2 changed files with 57 additions and 21 deletions.
36 changes: 36 additions & 0 deletions src/__tests__/terminalSettings.spec.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
import { TerminalSettings } from '../typings/management/terminalSettings';

describe('TerminalSettings properties', () => {
let terminalSettings: TerminalSettings;

beforeEach(() => {
terminalSettings = new TerminalSettings();
});

test('should allow properties to be null', () => {
terminalSettings.cardholderReceipt = null;
terminalSettings.connectivity = null;
terminalSettings.gratuities = null;
terminalSettings.hardware = null;

expect(terminalSettings.cardholderReceipt).toBeNull();
expect(terminalSettings.connectivity).toBeNull();
expect(terminalSettings.gratuities).toBeNull();
expect(terminalSettings.hardware).toBeNull();
});

test('should allow properties to be undefined', () => {
terminalSettings.cardholderReceipt = undefined;
terminalSettings.connectivity = undefined;

expect(terminalSettings.cardholderReceipt).toBeUndefined();
expect(terminalSettings.connectivity).toBeUndefined();
});

test('should allow properties to have valid type values', () => {
const mockGratuities = [{ /* mock Gratuity object */ }];
terminalSettings.gratuities = mockGratuities;

expect(terminalSettings.gratuities).toBe(mockGratuities);
});
});
42 changes: 21 additions & 21 deletions src/typings/management/terminalSettings.ts
Original file line number Diff line number Diff line change
Expand Up @@ -31,31 +31,31 @@ import { Timeouts } from './timeouts';
import { WifiProfiles } from './wifiProfiles';

export class TerminalSettings {
'cardholderReceipt'?: CardholderReceipt;
'connectivity'?: Connectivity;
'cardholderReceipt'?: CardholderReceipt | null;
'connectivity'?: Connectivity | null;
/**
* Settings for tipping with or without predefined options to choose from. The maximum number of predefined options is four, or three plus the option to enter a custom tip.
*/
'gratuities'?: Array<Gratuity> | null;
'hardware'?: Hardware;
'localization'?: Localization;
'nexo'?: Nexo;
'offlineProcessing'?: OfflineProcessing;
'opi'?: Opi;
'passcodes'?: Passcodes;
'payAtTable'?: PayAtTable;
'payment'?: Payment;
'receiptOptions'?: ReceiptOptions;
'receiptPrinting'?: ReceiptPrinting;
'refunds'?: Refunds;
'signature'?: Signature;
'standalone'?: Standalone;
'storeAndForward'?: StoreAndForward;
'surcharge'?: Surcharge;
'tapToPay'?: TapToPay;
'terminalInstructions'?: TerminalInstructions;
'timeouts'?: Timeouts;
'wifiProfiles'?: WifiProfiles;
'hardware'?: Hardware | null;
'localization'?: Localization | null;
'nexo'?: Nexo | null;
'offlineProcessing'?: OfflineProcessing | null;
'opi'?: Opi | null;
'passcodes'?: Passcodes | null;
'payAtTable'?: PayAtTable | null;
'payment'?: Payment | null;
'receiptOptions'?: ReceiptOptions | null;
'receiptPrinting'?: ReceiptPrinting | null;
'refunds'?: Refunds | null;
'signature'?: Signature | null;
'standalone'?: Standalone | null;
'storeAndForward'?: StoreAndForward | null;
'surcharge'?: Surcharge | null;
'tapToPay'?: TapToPay | null;
'terminalInstructions'?: TerminalInstructions | null;
'timeouts'?: Timeouts | null;
'wifiProfiles'?: WifiProfiles | null;

static discriminator: string | undefined = undefined;

Expand Down

0 comments on commit 38fd8e8

Please sign in to comment.