@accounter/server 0.0.9-alpha-20251210203829-57f49a64dd7ec3eb26b1ebac959531c02728c50b → 0.0.9-alpha-20251211084417-bd969ff3311bc514c5796ad31c7d5b5691e3645e
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.
- package/CHANGELOG.md +22 -5
- package/dist/server/src/__tests__/factories/business.d.ts +5 -4
- package/dist/server/src/__tests__/factories/business.js +6 -2
- package/dist/server/src/__tests__/factories/business.js.map +1 -1
- package/dist/server/src/__tests__/factories/business.test.js +4 -4
- package/dist/server/src/__tests__/factories/business.test.js.map +1 -1
- package/dist/server/src/__tests__/factories/charge.d.ts +3 -1
- package/dist/server/src/__tests__/factories/charge.js +2 -1
- package/dist/server/src/__tests__/factories/charge.js.map +1 -1
- package/dist/server/src/__tests__/factories/financial-account.d.ts +3 -3
- package/dist/server/src/__tests__/factories/financial-account.js +1 -1
- package/dist/server/src/__tests__/factories/financial-account.js.map +1 -1
- package/dist/server/src/__tests__/factories/index.test.js +7 -7
- package/dist/server/src/__tests__/factories/index.test.js.map +1 -1
- package/dist/server/src/__tests__/factories/tax-category.d.ts +3 -2
- package/dist/server/src/__tests__/factories/tax-category.js +4 -0
- package/dist/server/src/__tests__/factories/tax-category.js.map +1 -1
- package/dist/server/src/__tests__/factories/tax-category.test.js +6 -6
- package/dist/server/src/__tests__/factories/tax-category.test.js.map +1 -1
- package/dist/server/src/__tests__/factories/transaction.d.ts +3 -1
- package/dist/server/src/__tests__/factories/transaction.js +1 -0
- package/dist/server/src/__tests__/factories/transaction.js.map +1 -1
- package/dist/server/src/__tests__/fixtures/expenses/expense-scenario-a.js +4 -4
- package/dist/server/src/__tests__/fixtures/expenses/expense-scenario-a.js.map +1 -1
- package/dist/server/src/__tests__/fixtures/expenses/expense-scenario-b.js +4 -4
- package/dist/server/src/__tests__/fixtures/expenses/expense-scenario-b.js.map +1 -1
- package/dist/server/src/__tests__/helpers/fixture-loader.d.ts +7 -3
- package/dist/server/src/__tests__/helpers/fixture-loader.js +30 -21
- package/dist/server/src/__tests__/helpers/fixture-loader.js.map +1 -1
- package/dist/server/src/__tests__/helpers/fixture-loader.test.js +19 -19
- package/dist/server/src/__tests__/helpers/fixture-loader.test.js.map +1 -1
- package/dist/server/src/__tests__/helpers/fixture-types.d.ts +42 -15
- package/dist/server/src/__tests__/helpers/fixture-types.js +4 -0
- package/dist/server/src/__tests__/helpers/fixture-types.js.map +1 -1
- package/dist/server/src/__tests__/helpers/fixture-validation.test.js +18 -18
- package/dist/server/src/__tests__/helpers/fixture-validation.test.js.map +1 -1
- package/dist/server/src/modules/ledger/__tests__/helpers/ledger-assertions.js +4 -4
- package/package.json +1 -1
- package/src/__tests__/factories/business.test.ts +4 -4
- package/src/__tests__/factories/business.ts +9 -5
- package/src/__tests__/factories/charge.ts +4 -2
- package/src/__tests__/factories/financial-account.ts +5 -5
- package/src/__tests__/factories/index.test.ts +7 -7
- package/src/__tests__/factories/tax-category.test.ts +6 -6
- package/src/__tests__/factories/tax-category.ts +8 -4
- package/src/__tests__/factories/transaction.ts +3 -1
- package/src/__tests__/fixtures/expenses/expense-scenario-a.ts +4 -4
- package/src/__tests__/fixtures/expenses/expense-scenario-b.ts +4 -4
- package/src/__tests__/helpers/fixture-loader.test.ts +19 -19
- package/src/__tests__/helpers/fixture-loader.ts +32 -23
- package/src/__tests__/helpers/fixture-types.ts +41 -15
- package/src/__tests__/helpers/fixture-validation.test.ts +18 -18
- package/src/modules/ledger/__tests__/helpers/ledger-assertions.ts +4 -5
- package/src/modules/ledger/__tests__/ledger-scenario-a.integration.test.ts +2 -2
|
@@ -70,12 +70,16 @@ export class FixtureInsertionError extends Error {
|
|
|
70
70
|
* - Checks referential integrity (charge IDs, business IDs, etc.)
|
|
71
71
|
* - Validates required fields
|
|
72
72
|
*
|
|
73
|
-
* @param client - PostgreSQL client within an active transaction
|
|
73
|
+
* @param client - PostgreSQL client (PoolClient or standalone Client) within an active transaction
|
|
74
74
|
* @param fixture - Complete fixture to insert
|
|
75
75
|
* @returns Promise resolving to ID mapping (fixture ID → database ID)
|
|
76
76
|
* @throws {Error} If fixture validation fails (via assertValidFixture)
|
|
77
77
|
* @throws {FixtureInsertionError} If any insertion section fails
|
|
78
78
|
*
|
|
79
|
+
* @remarks
|
|
80
|
+
* Type Safety: Accepts both PoolClient and Client to support both test transactions
|
|
81
|
+
* (pool.connect()) and standalone connections (new pg.Client()) used in seed scripts.
|
|
82
|
+
*
|
|
79
83
|
* @example
|
|
80
84
|
* ```typescript
|
|
81
85
|
* import { withTestTransaction } from './test-transaction.js';
|
|
@@ -120,10 +124,11 @@ export async function insertFixture(client, fixture) {
|
|
|
120
124
|
await executeSavepointSection('businesses', async () => {
|
|
121
125
|
for (const business of fixture.businesses.businesses) {
|
|
122
126
|
// Insert financial entity first (type='business')
|
|
127
|
+
// Field mapping: business.name used for display (required); hebrewName is legacy/optional
|
|
123
128
|
const entityResult = await client.query(`INSERT INTO ${qualifyTable('financial_entities')} (id, name, type)
|
|
124
129
|
VALUES ($1, $2, 'business')
|
|
125
130
|
ON CONFLICT (id) DO NOTHING
|
|
126
|
-
RETURNING id`, [business.id, business.
|
|
131
|
+
RETURNING id`, [business.id, business.name || business.id]);
|
|
127
132
|
// Insert business details - note: vat_number column maps to governmentId field
|
|
128
133
|
await client.query(`INSERT INTO ${qualifyTable('businesses')} (
|
|
129
134
|
id, hebrew_name, address, email, website, phone_number, vat_number,
|
|
@@ -139,13 +144,13 @@ export async function insertFixture(client, fixture) {
|
|
|
139
144
|
business.website,
|
|
140
145
|
business.phoneNumber,
|
|
141
146
|
business.governmentId, // Maps to vat_number column
|
|
142
|
-
business.exemptDealer,
|
|
143
|
-
business.suggestions,
|
|
144
|
-
business.optionalVat,
|
|
145
|
-
business.country,
|
|
146
|
-
business.pcn874RecordTypeOverride,
|
|
147
|
-
business.isReceiptEnough,
|
|
148
|
-
business.isDocumentsOptional,
|
|
147
|
+
business.exemptDealer ?? false,
|
|
148
|
+
business.suggestions ?? null,
|
|
149
|
+
business.optionalVat ?? false,
|
|
150
|
+
business.country ?? 'ISR',
|
|
151
|
+
business.pcn874RecordTypeOverride ?? null,
|
|
152
|
+
business.isReceiptEnough ?? false,
|
|
153
|
+
business.isDocumentsOptional ?? false,
|
|
149
154
|
]);
|
|
150
155
|
if (entityResult.rows.length > 0) {
|
|
151
156
|
idMapping.set(business.id, entityResult.rows[0].id);
|
|
@@ -171,7 +176,7 @@ export async function insertFixture(client, fixture) {
|
|
|
171
176
|
id, hashavshevet_name, tax_excluded
|
|
172
177
|
)
|
|
173
178
|
VALUES ($1, $2, $3)
|
|
174
|
-
ON CONFLICT (id) DO NOTHING`, [taxCategory.id, taxCategory.hashavshevetName, taxCategory.taxExcluded]);
|
|
179
|
+
ON CONFLICT (id) DO NOTHING`, [taxCategory.id, taxCategory.hashavshevetName, taxCategory.taxExcluded ?? false]);
|
|
175
180
|
if (entityResult.rows.length > 0) {
|
|
176
181
|
idMapping.set(taxCategory.id, entityResult.rows[0].id);
|
|
177
182
|
}
|
|
@@ -234,18 +239,20 @@ export async function insertFixture(client, fixture) {
|
|
|
234
239
|
for (const charge of fixture.charges.charges) {
|
|
235
240
|
await client.query(`INSERT INTO ${qualifyTable('charges')} (
|
|
236
241
|
id, owner_id, type, accountant_status, user_description,
|
|
237
|
-
tax_category_id, optional_vat, documents_optional_flag
|
|
242
|
+
tax_category_id, optional_vat, documents_optional_flag,
|
|
243
|
+
is_property, created_at, updated_at
|
|
238
244
|
)
|
|
239
|
-
VALUES ($1, $2, $3, $4, $5, $6, $7, $8)
|
|
245
|
+
VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, NOW(), NOW())
|
|
240
246
|
ON CONFLICT (id) DO NOTHING`, [
|
|
241
247
|
charge.id,
|
|
242
248
|
charge.owner_id,
|
|
243
|
-
charge.type,
|
|
244
|
-
charge.accountant_status,
|
|
249
|
+
charge.type ?? null,
|
|
250
|
+
charge.accountant_status ?? 'PENDING',
|
|
245
251
|
charge.user_description,
|
|
246
|
-
charge.tax_category_id,
|
|
247
|
-
charge.optional_vat,
|
|
248
|
-
charge.documents_optional_flag,
|
|
252
|
+
charge.tax_category_id ?? null,
|
|
253
|
+
charge.optional_vat ?? false,
|
|
254
|
+
charge.documents_optional_flag ?? false,
|
|
255
|
+
charge.is_property ?? false,
|
|
249
256
|
]);
|
|
250
257
|
idMapping.set(charge.id, charge.id);
|
|
251
258
|
}
|
|
@@ -277,9 +284,10 @@ export async function insertFixture(client, fixture) {
|
|
|
277
284
|
await client.query(`INSERT INTO ${qualifyTable('transactions')} (
|
|
278
285
|
id, account_id, charge_id, source_id, source_description,
|
|
279
286
|
currency, event_date, debit_date, amount, current_balance,
|
|
280
|
-
business_id, is_fee, source_reference, source_origin, origin_key
|
|
287
|
+
business_id, is_fee, source_reference, source_origin, origin_key,
|
|
288
|
+
currency_rate, created_at, updated_at
|
|
281
289
|
)
|
|
282
|
-
VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13, $14, $15)
|
|
290
|
+
VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13, $14, $15, $16, NOW(), NOW())
|
|
283
291
|
ON CONFLICT (id) DO NOTHING`, [
|
|
284
292
|
transaction.id,
|
|
285
293
|
accountId,
|
|
@@ -290,12 +298,13 @@ export async function insertFixture(client, fixture) {
|
|
|
290
298
|
transaction.event_date,
|
|
291
299
|
transaction.debit_date,
|
|
292
300
|
transaction.amount,
|
|
293
|
-
transaction.current_balance,
|
|
301
|
+
transaction.current_balance ?? '0',
|
|
294
302
|
transaction.business_id,
|
|
295
|
-
transaction.is_fee,
|
|
303
|
+
transaction.is_fee ?? false,
|
|
296
304
|
'TEST-REF', // source_reference (NOT NULL)
|
|
297
305
|
'TEST', // source_origin (NOT NULL)
|
|
298
306
|
dummyEtherscanId, // origin_key (NOT NULL) - must match etherscan_id in raw list
|
|
307
|
+
transaction.currency_rate ?? 1,
|
|
299
308
|
]);
|
|
300
309
|
idMapping.set(transaction.id, transaction.id);
|
|
301
310
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fixture-loader.js","sourceRoot":"","sources":["../../../../../src/__tests__/helpers/fixture-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,mDAAmD,CAAC;AAE7F;;;;;GAKG;AACH,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAE5B;IACA;IACA;IAHlB,YACkB,OAAe,EACf,aAAoB,EACpB,OAAiC;QAEjD,KAAK,CACH,qCAAqC,OAAO,MAAM,aAAa,CAAC,OAAO,EAAE;YACvE,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CACpE,CAAC;QAPc,YAAO,GAAP,OAAO,CAAQ;QACf,kBAAa,GAAb,aAAa,CAAO;QACpB,YAAO,GAAP,OAAO,CAA0B;QAMjD,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;QACpC,KAAK,CAAC,iBAAiB,EAAE,CAAC,IAAI,EAAE,qBAAqB,CAAC,CAAC;IACzD,CAAC;IAED,MAAM;QACJ,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,aAAa,EAAE;gBACb,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI;gBAC7B,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,OAAO;aACpC;YACD,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC;IACJ,CAAC;CACF;AAWD
|
|
1
|
+
{"version":3,"file":"fixture-loader.js","sourceRoot":"","sources":["../../../../../src/__tests__/helpers/fixture-loader.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,7 +28,7 @@ describe('Fixture Loader', () => {
|
|
|
28
28
|
businesses: [
|
|
29
29
|
createBusiness({
|
|
30
30
|
id: businessId,
|
|
31
|
-
|
|
31
|
+
name: 'Test Business',
|
|
32
32
|
}),
|
|
33
33
|
],
|
|
34
34
|
},
|
|
@@ -36,7 +36,7 @@ describe('Fixture Loader', () => {
|
|
|
36
36
|
taxCategories: [
|
|
37
37
|
createTaxCategory({
|
|
38
38
|
id: taxCategoryId,
|
|
39
|
-
|
|
39
|
+
name: 'Test Tax Category 1',
|
|
40
40
|
}),
|
|
41
41
|
],
|
|
42
42
|
},
|
|
@@ -59,11 +59,11 @@ describe('Fixture Loader', () => {
|
|
|
59
59
|
const businessResult = await client.query(`SELECT * FROM ${qualifyTable('businesses')} WHERE id = $1`, [businessId]);
|
|
60
60
|
expect(businessResult.rows).toHaveLength(1);
|
|
61
61
|
expect(businessResult.rows[0].id).toBe(businessId);
|
|
62
|
-
expect(businessResult.rows[0].hebrew_name).
|
|
62
|
+
expect(businessResult.rows[0].hebrew_name).toBeNull();
|
|
63
63
|
const taxCatResult = await client.query(`SELECT * FROM ${qualifyTable('tax_categories')} WHERE id = $1`, [taxCategoryId]);
|
|
64
64
|
expect(taxCatResult.rows).toHaveLength(1);
|
|
65
65
|
expect(taxCatResult.rows[0].id).toBe(taxCategoryId);
|
|
66
|
-
expect(taxCatResult.rows[0].hashavshevet_name).
|
|
66
|
+
expect(taxCatResult.rows[0].hashavshevet_name).toBeNull();
|
|
67
67
|
const chargeResult = await client.query(`SELECT * FROM ${qualifyTable('charges')} WHERE id = $1`, [chargeId]);
|
|
68
68
|
expect(chargeResult.rows).toHaveLength(1);
|
|
69
69
|
expect(chargeResult.rows[0].owner_id).toBe(businessId);
|
|
@@ -79,12 +79,12 @@ describe('Fixture Loader', () => {
|
|
|
79
79
|
const fixture = {
|
|
80
80
|
businesses: {
|
|
81
81
|
businesses: [
|
|
82
|
-
createBusiness({ id: supplierId,
|
|
83
|
-
createBusiness({ id: customerId,
|
|
82
|
+
createBusiness({ id: supplierId, name: 'Supplier Ltd' }),
|
|
83
|
+
createBusiness({ id: customerId, name: 'Customer Inc' }),
|
|
84
84
|
],
|
|
85
85
|
},
|
|
86
86
|
taxCategories: {
|
|
87
|
-
taxCategories: [createTaxCategory({ id: taxCategoryId })],
|
|
87
|
+
taxCategories: [createTaxCategory({ id: taxCategoryId, name: 'Tax Category 1' })],
|
|
88
88
|
},
|
|
89
89
|
accounts: {
|
|
90
90
|
accounts: [
|
|
@@ -160,7 +160,7 @@ describe('Fixture Loader', () => {
|
|
|
160
160
|
const businessId = makeUUID('business', 'lonely-business');
|
|
161
161
|
const fixture = {
|
|
162
162
|
businesses: {
|
|
163
|
-
businesses: [createBusiness({ id: businessId })],
|
|
163
|
+
businesses: [createBusiness({ id: businessId, name: 'Lonely Business' })],
|
|
164
164
|
},
|
|
165
165
|
// No tax categories, accounts, charges, etc.
|
|
166
166
|
};
|
|
@@ -174,7 +174,7 @@ describe('Fixture Loader', () => {
|
|
|
174
174
|
const invalidChargeId = makeUUID('charge', 'invalid-charge');
|
|
175
175
|
const fixture = {
|
|
176
176
|
businesses: {
|
|
177
|
-
businesses: [createBusiness({ id: businessId })],
|
|
177
|
+
businesses: [createBusiness({ id: businessId, name: 'Test Biz' })],
|
|
178
178
|
},
|
|
179
179
|
charges: {
|
|
180
180
|
charges: [
|
|
@@ -235,14 +235,14 @@ describe('Fixture Loader', () => {
|
|
|
235
235
|
const fixture = {
|
|
236
236
|
businesses: {
|
|
237
237
|
businesses: [
|
|
238
|
-
createBusiness({ id: biz1,
|
|
239
|
-
createBusiness({ id: biz2,
|
|
238
|
+
createBusiness({ id: biz1, name: 'Business 1' }),
|
|
239
|
+
createBusiness({ id: biz2, name: 'Business 2' }),
|
|
240
240
|
],
|
|
241
241
|
},
|
|
242
242
|
taxCategories: {
|
|
243
243
|
taxCategories: [
|
|
244
|
-
createTaxCategory({ id: tax1,
|
|
245
|
-
createTaxCategory({ id: tax2,
|
|
244
|
+
createTaxCategory({ id: tax1, name: 'Tax 1' }),
|
|
245
|
+
createTaxCategory({ id: tax2, name: 'Tax 2' }),
|
|
246
246
|
],
|
|
247
247
|
},
|
|
248
248
|
charges: {
|
|
@@ -266,7 +266,7 @@ describe('Fixture Loader', () => {
|
|
|
266
266
|
const businessId = makeUUID('business', 'duplicate-biz');
|
|
267
267
|
const fixture = {
|
|
268
268
|
businesses: {
|
|
269
|
-
businesses: [createBusiness({ id: businessId,
|
|
269
|
+
businesses: [createBusiness({ id: businessId, name: 'Original Name' })],
|
|
270
270
|
},
|
|
271
271
|
};
|
|
272
272
|
// Insert once
|
|
@@ -274,14 +274,14 @@ describe('Fixture Loader', () => {
|
|
|
274
274
|
// Insert again (should not error due to ON CONFLICT DO NOTHING)
|
|
275
275
|
const fixtureModified = {
|
|
276
276
|
businesses: {
|
|
277
|
-
businesses: [createBusiness({ id: businessId,
|
|
277
|
+
businesses: [createBusiness({ id: businessId, name: 'Modified Name' })],
|
|
278
278
|
},
|
|
279
279
|
};
|
|
280
280
|
const idMap = await insertFixture(client, fixtureModified);
|
|
281
281
|
expect(idMap.get(businessId)).toBe(businessId);
|
|
282
282
|
// Original data should be preserved (ON CONFLICT DO NOTHING)
|
|
283
|
-
const result = await client.query(`SELECT * FROM ${qualifyTable('
|
|
284
|
-
expect(result.rows[0].
|
|
283
|
+
const result = await client.query(`SELECT * FROM ${qualifyTable('financial_entities')} WHERE id = $1`, [businessId]);
|
|
284
|
+
expect(result.rows[0].name).toBe('Original Name');
|
|
285
285
|
}));
|
|
286
286
|
it('should insert transactions with generated source_id', () => withTestTransaction(pool, async (client) => {
|
|
287
287
|
const businessId = makeUUID('business', 'biz-tx');
|
|
@@ -291,10 +291,10 @@ describe('Fixture Loader', () => {
|
|
|
291
291
|
const transactionId = makeUUID('transaction', 'tx-with-source');
|
|
292
292
|
const fixture = {
|
|
293
293
|
businesses: {
|
|
294
|
-
businesses: [createBusiness({ id: businessId })],
|
|
294
|
+
businesses: [createBusiness({ id: businessId, name: 'Biz Tx' })],
|
|
295
295
|
},
|
|
296
296
|
taxCategories: {
|
|
297
|
-
taxCategories: [createTaxCategory({ id: taxCatId })],
|
|
297
|
+
taxCategories: [createTaxCategory({ id: taxCatId, name: 'Tax Tx' })],
|
|
298
298
|
},
|
|
299
299
|
accounts: {
|
|
300
300
|
accounts: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fixture-loader.test.js","sourceRoot":"","sources":["../../../../../src/__tests__/helpers/fixture-loader.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"fixture-loader.test.js","sourceRoot":"","sources":["../../../../../src/__tests__/helpers/fixture-loader.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,15 +5,15 @@
|
|
|
5
5
|
* database state for integration tests. Each fixture represents a complete
|
|
6
6
|
* scenario with all related entities (businesses, charges, transactions, documents, etc.).
|
|
7
7
|
*
|
|
8
|
+
* **Type Independence**: These types are decoupled from pgtyped-generated database types
|
|
9
|
+
* to maintain test independence and flexibility. Fixtures define their own minimal interfaces
|
|
10
|
+
* that are converted to database-specific structures by the fixture-loader.
|
|
11
|
+
*
|
|
8
12
|
* @see packages/server/src/__tests__/helpers/fixture-validation.ts for validation logic
|
|
9
13
|
* @see packages/server/src/__tests__/helpers/fixture-loader.ts for insertion logic
|
|
10
14
|
*/
|
|
11
|
-
import type {
|
|
12
|
-
import type {
|
|
13
|
-
import type { IInsertFinancialAccountsParams } from '../../modules/financial-accounts/__generated__/financial-accounts.types.js';
|
|
14
|
-
import type { ChargeInsertParams } from '../factories/charge.js';
|
|
15
|
-
import type { TransactionInsertParams } from '../factories/transaction.js';
|
|
16
|
-
import type { DocumentInsertParams } from '../factories/document.js';
|
|
15
|
+
import type { ChargeInsertParams, TransactionInsertParams, DocumentInsertParams } from '../factories/index.js';
|
|
16
|
+
import type { financial_account_type } from '../../modules/transactions/types.js';
|
|
17
17
|
/**
|
|
18
18
|
* Business entities in a fixture
|
|
19
19
|
*
|
|
@@ -27,7 +27,23 @@ export interface FixtureBusinesses {
|
|
|
27
27
|
* Each business must have a unique id. The id will be referenced by
|
|
28
28
|
* charges (owner_id), transactions (business_id), and documents (creditor_id/debtor_id).
|
|
29
29
|
*/
|
|
30
|
-
businesses:
|
|
30
|
+
businesses: Array<{
|
|
31
|
+
id: string;
|
|
32
|
+
name: string;
|
|
33
|
+
hebrewName?: string | null;
|
|
34
|
+
address?: string | null;
|
|
35
|
+
email?: string | null;
|
|
36
|
+
website?: string | null;
|
|
37
|
+
phoneNumber?: string | null;
|
|
38
|
+
governmentId?: string | null;
|
|
39
|
+
exemptDealer?: boolean | null;
|
|
40
|
+
suggestions?: object | null;
|
|
41
|
+
optionalVat?: boolean | null;
|
|
42
|
+
country?: string | null;
|
|
43
|
+
pcn874RecordTypeOverride?: unknown | null;
|
|
44
|
+
isReceiptEnough?: boolean | null;
|
|
45
|
+
isDocumentsOptional?: boolean | null;
|
|
46
|
+
}>;
|
|
31
47
|
}
|
|
32
48
|
/**
|
|
33
49
|
* Tax categories in a fixture
|
|
@@ -41,7 +57,12 @@ export interface FixtureTaxCategories {
|
|
|
41
57
|
* Each tax category must have a unique id. The id will be referenced by
|
|
42
58
|
* charges (tax_category_id) and financial accounts.
|
|
43
59
|
*/
|
|
44
|
-
taxCategories:
|
|
60
|
+
taxCategories: Array<{
|
|
61
|
+
id: string;
|
|
62
|
+
name: string;
|
|
63
|
+
hashavshevetName?: string | null;
|
|
64
|
+
taxExcluded?: boolean | null;
|
|
65
|
+
}>;
|
|
45
66
|
}
|
|
46
67
|
/**
|
|
47
68
|
* Financial accounts in a fixture
|
|
@@ -56,7 +77,13 @@ export interface FixtureAccounts {
|
|
|
56
77
|
* Each account must have a unique id. The id will be referenced by
|
|
57
78
|
* transactions (account_id).
|
|
58
79
|
*/
|
|
59
|
-
accounts:
|
|
80
|
+
accounts: Array<{
|
|
81
|
+
accountNumber?: string | null;
|
|
82
|
+
name?: string | null;
|
|
83
|
+
privateBusiness?: string | null;
|
|
84
|
+
ownerId?: string | null;
|
|
85
|
+
type?: financial_account_type | null;
|
|
86
|
+
}>;
|
|
60
87
|
}
|
|
61
88
|
/**
|
|
62
89
|
* Financial account tax category mappings
|
|
@@ -195,7 +222,7 @@ export interface LedgerExpectation {
|
|
|
195
222
|
* const expenseScenarioA: Fixture = {
|
|
196
223
|
* businesses: {
|
|
197
224
|
* businesses: [
|
|
198
|
-
* createBusiness({ id: makeUUID('supplier-1'), hebrewName: 'Local Supplier Ltd' }),
|
|
225
|
+
* createBusiness({ id: makeUUID('business', 'supplier-1'), hebrewName: 'Local Supplier Ltd' }),
|
|
199
226
|
* ],
|
|
200
227
|
* },
|
|
201
228
|
* charges: {
|
|
@@ -206,8 +233,8 @@ export interface LedgerExpectation {
|
|
|
206
233
|
* transactions: {
|
|
207
234
|
* transactions: [
|
|
208
235
|
* createTransaction({
|
|
209
|
-
* charge_id: makeUUID('charge-1'),
|
|
210
|
-
* business_id: makeUUID('supplier-1'),
|
|
236
|
+
* charge_id: makeUUID('charge', 'charge-1'),
|
|
237
|
+
* business_id: makeUUID('business', 'supplier-1'),
|
|
211
238
|
* amount: '-1000.00',
|
|
212
239
|
* currency: 'ILS',
|
|
213
240
|
* event_date: '2024-01-15',
|
|
@@ -217,8 +244,8 @@ export interface LedgerExpectation {
|
|
|
217
244
|
* documents: {
|
|
218
245
|
* documents: [
|
|
219
246
|
* createDocument({
|
|
220
|
-
* charge_id: makeUUID('charge-1'),
|
|
221
|
-
* creditor_id: makeUUID('supplier-1'),
|
|
247
|
+
* charge_id: makeUUID('charge', 'charge-1'),
|
|
248
|
+
* creditor_id: makeUUID('business', 'supplier-1'),
|
|
222
249
|
* debtor_id: ADMIN_ID,
|
|
223
250
|
* type: 'RECEIPT',
|
|
224
251
|
* total_amount: 1000.0,
|
|
@@ -230,7 +257,7 @@ export interface LedgerExpectation {
|
|
|
230
257
|
* expectations: {
|
|
231
258
|
* ledger: [
|
|
232
259
|
* {
|
|
233
|
-
* chargeId: makeUUID('charge-1'),
|
|
260
|
+
* chargeId: makeUUID('charge', 'charge-1'),
|
|
234
261
|
* recordCount: 2,
|
|
235
262
|
* debitEntities: [EXPENSE_TAX_CATEGORY_ID],
|
|
236
263
|
* creditEntities: [BANK_TAX_CATEGORY_ID],
|
|
@@ -5,6 +5,10 @@
|
|
|
5
5
|
* database state for integration tests. Each fixture represents a complete
|
|
6
6
|
* scenario with all related entities (businesses, charges, transactions, documents, etc.).
|
|
7
7
|
*
|
|
8
|
+
* **Type Independence**: These types are decoupled from pgtyped-generated database types
|
|
9
|
+
* to maintain test independence and flexibility. Fixtures define their own minimal interfaces
|
|
10
|
+
* that are converted to database-specific structures by the fixture-loader.
|
|
11
|
+
*
|
|
8
12
|
* @see packages/server/src/__tests__/helpers/fixture-validation.ts for validation logic
|
|
9
13
|
* @see packages/server/src/__tests__/helpers/fixture-loader.ts for insertion logic
|
|
10
14
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fixture-types.js","sourceRoot":"","sources":["../../../../../src/__tests__/helpers/fixture-types.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"fixture-types.js","sourceRoot":"","sources":["../../../../../src/__tests__/helpers/fixture-types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG"}
|
|
@@ -18,12 +18,12 @@ describe('Fixture Validation', () => {
|
|
|
18
18
|
const fixture = {
|
|
19
19
|
businesses: {
|
|
20
20
|
businesses: [
|
|
21
|
-
createBusiness({ id: adminId }),
|
|
22
|
-
createBusiness({ id: supplierId }),
|
|
21
|
+
createBusiness({ id: adminId, name: 'Admin' }),
|
|
22
|
+
createBusiness({ id: supplierId, name: 'Supplier' }),
|
|
23
23
|
],
|
|
24
24
|
},
|
|
25
25
|
taxCategories: {
|
|
26
|
-
taxCategories: [createTaxCategory({ id: taxCatId })],
|
|
26
|
+
taxCategories: [createTaxCategory({ id: taxCatId, name: 'Tax Category' })],
|
|
27
27
|
},
|
|
28
28
|
accounts: {
|
|
29
29
|
accounts: [createFinancialAccount({ accountNumber: accountId, ownerId: adminId })],
|
|
@@ -67,10 +67,10 @@ describe('Fixture Validation', () => {
|
|
|
67
67
|
const taxCatId = makeUUID('tax-category', 'tax-cat');
|
|
68
68
|
const fixture = {
|
|
69
69
|
businesses: {
|
|
70
|
-
businesses: [createBusiness({ id: adminId })],
|
|
70
|
+
businesses: [createBusiness({ id: adminId, name: 'Admin' })],
|
|
71
71
|
},
|
|
72
72
|
taxCategories: {
|
|
73
|
-
taxCategories: [createTaxCategory({ id: taxCatId })],
|
|
73
|
+
taxCategories: [createTaxCategory({ id: taxCatId, name: 'Tax Category' })],
|
|
74
74
|
},
|
|
75
75
|
charges: {
|
|
76
76
|
charges: [
|
|
@@ -87,7 +87,7 @@ describe('Fixture Validation', () => {
|
|
|
87
87
|
const nonExistentChargeId = makeUUID('charge', 'non-existent-charge');
|
|
88
88
|
const fixture = {
|
|
89
89
|
businesses: {
|
|
90
|
-
businesses: [createBusiness({ id: adminId }), createBusiness({ id: supplierId })],
|
|
90
|
+
businesses: [createBusiness({ id: adminId, name: 'Admin' }), createBusiness({ id: supplierId, name: 'Supplier' })],
|
|
91
91
|
},
|
|
92
92
|
transactions: {
|
|
93
93
|
transactions: [
|
|
@@ -113,7 +113,7 @@ describe('Fixture Validation', () => {
|
|
|
113
113
|
const nonExistentChargeId = makeUUID('charge', 'non-existent-charge');
|
|
114
114
|
const fixture = {
|
|
115
115
|
businesses: {
|
|
116
|
-
businesses: [createBusiness({ id: adminId }), createBusiness({ id: supplierId })],
|
|
116
|
+
businesses: [createBusiness({ id: adminId, name: 'Admin' }), createBusiness({ id: supplierId, name: 'Supplier' })],
|
|
117
117
|
},
|
|
118
118
|
documents: {
|
|
119
119
|
documents: [
|
|
@@ -157,7 +157,7 @@ describe('Fixture Validation', () => {
|
|
|
157
157
|
const nonExistentTaxCatId = makeUUID('tax-category', 'non-existent-tax-cat');
|
|
158
158
|
const fixture = {
|
|
159
159
|
businesses: {
|
|
160
|
-
businesses: [createBusiness({ id: adminId })],
|
|
160
|
+
businesses: [createBusiness({ id: adminId, name: 'Admin' })],
|
|
161
161
|
},
|
|
162
162
|
charges: {
|
|
163
163
|
charges: [
|
|
@@ -177,7 +177,7 @@ describe('Fixture Validation', () => {
|
|
|
177
177
|
const nonExistentBusinessId = makeUUID('business', 'non-existent-business');
|
|
178
178
|
const fixture = {
|
|
179
179
|
businesses: {
|
|
180
|
-
businesses: [createBusiness({ id: adminId })],
|
|
180
|
+
businesses: [createBusiness({ id: adminId, name: 'Admin' })],
|
|
181
181
|
},
|
|
182
182
|
charges: {
|
|
183
183
|
charges: [createCharge({ owner_id: adminId }, { id: chargeId })],
|
|
@@ -206,7 +206,7 @@ describe('Fixture Validation', () => {
|
|
|
206
206
|
const nonExistentCreditorId = makeUUID('business', 'non-existent-creditor');
|
|
207
207
|
const fixture = {
|
|
208
208
|
businesses: {
|
|
209
|
-
businesses: [createBusiness({ id: adminId })],
|
|
209
|
+
businesses: [createBusiness({ id: adminId, name: 'Admin' })],
|
|
210
210
|
},
|
|
211
211
|
charges: {
|
|
212
212
|
charges: [createCharge({ owner_id: adminId }, { id: chargeId })],
|
|
@@ -238,7 +238,7 @@ describe('Fixture Validation', () => {
|
|
|
238
238
|
const nonExistentDebtorId = makeUUID('business', 'non-existent-debtor');
|
|
239
239
|
const fixture = {
|
|
240
240
|
businesses: {
|
|
241
|
-
businesses: [createBusiness({ id: adminId }), createBusiness({ id: supplierId })],
|
|
241
|
+
businesses: [createBusiness({ id: adminId, name: 'Admin' }), createBusiness({ id: supplierId, name: 'Supplier' })],
|
|
242
242
|
},
|
|
243
243
|
charges: {
|
|
244
244
|
charges: [createCharge({ owner_id: adminId }, { id: chargeId })],
|
|
@@ -292,7 +292,7 @@ describe('Fixture Validation', () => {
|
|
|
292
292
|
const chargeId = makeUUID('charge', 'charge');
|
|
293
293
|
const fixture = {
|
|
294
294
|
businesses: {
|
|
295
|
-
businesses: [createBusiness({ id: adminId })],
|
|
295
|
+
businesses: [createBusiness({ id: adminId, name: 'Admin' })],
|
|
296
296
|
},
|
|
297
297
|
charges: {
|
|
298
298
|
charges: [createCharge({ owner_id: adminId }, { id: chargeId })],
|
|
@@ -331,7 +331,7 @@ describe('Fixture Validation', () => {
|
|
|
331
331
|
const chargeId = makeUUID('charge', 'charge');
|
|
332
332
|
const fixture = {
|
|
333
333
|
businesses: {
|
|
334
|
-
businesses: [createBusiness({ id: adminId })],
|
|
334
|
+
businesses: [createBusiness({ id: adminId, name: 'Admin' })],
|
|
335
335
|
},
|
|
336
336
|
charges: {
|
|
337
337
|
charges: [createCharge({ owner_id: adminId }, { id: chargeId })],
|
|
@@ -379,8 +379,8 @@ describe('Fixture Validation', () => {
|
|
|
379
379
|
const fixture = {
|
|
380
380
|
businesses: {
|
|
381
381
|
businesses: [
|
|
382
|
-
createBusiness({ id: duplicateId }),
|
|
383
|
-
createBusiness({ id: duplicateId }), // Duplicate
|
|
382
|
+
createBusiness({ id: duplicateId, name: 'Duplicate Business' }),
|
|
383
|
+
createBusiness({ id: duplicateId, name: 'Duplicate Business' }), // Duplicate
|
|
384
384
|
],
|
|
385
385
|
},
|
|
386
386
|
};
|
|
@@ -395,7 +395,7 @@ describe('Fixture Validation', () => {
|
|
|
395
395
|
const duplicateChargeId = makeUUID('charge', 'duplicate-charge');
|
|
396
396
|
const fixture = {
|
|
397
397
|
businesses: {
|
|
398
|
-
businesses: [createBusiness({ id: adminId })],
|
|
398
|
+
businesses: [createBusiness({ id: adminId, name: 'Admin' })],
|
|
399
399
|
},
|
|
400
400
|
charges: {
|
|
401
401
|
charges: [
|
|
@@ -444,10 +444,10 @@ describe('Fixture Validation', () => {
|
|
|
444
444
|
const taxCatId = makeUUID('tax-category', 'tax-cat');
|
|
445
445
|
const fixture = {
|
|
446
446
|
businesses: {
|
|
447
|
-
businesses: [createBusiness({ id: adminId })],
|
|
447
|
+
businesses: [createBusiness({ id: adminId, name: 'Admin' })],
|
|
448
448
|
},
|
|
449
449
|
taxCategories: {
|
|
450
|
-
taxCategories: [createTaxCategory({ id: taxCatId })],
|
|
450
|
+
taxCategories: [createTaxCategory({ id: taxCatId, name: 'Tax Category' })],
|
|
451
451
|
},
|
|
452
452
|
charges: {
|
|
453
453
|
charges: [
|