8
8
9
9
sample_ledger_entries = [
10
10
{
11
+ 'sl_no' : 1 ,
11
12
'date' : datetime (2024 , 3 , 1 ),
12
13
'dr_amount' : 0 ,
13
14
'cr_amount' : 20000 ,
16
17
'event_id' : None
17
18
},
18
19
{
20
+ 'sl_no' : 2 ,
19
21
'date' : datetime (2024 , 3 , 2 ),
20
22
'dr_amount' : 5000 ,
21
23
'cr_amount' : 0 ,
24
26
'event_id' : None
25
27
},
26
28
{
29
+ 'sl_no' : 3 ,
27
30
'date' : datetime (2024 , 3 , 3 ),
28
31
'dr_amount' : 3000 ,
29
32
'cr_amount' : 0 ,
32
35
'event_id' : None
33
36
},
34
37
{
38
+ 'sl_no' : 4 ,
35
39
'date' : datetime (2024 , 3 , 4 ),
36
40
'dr_amount' : 10000 ,
37
41
'cr_amount' : 0 ,
40
44
'event_id' : None
41
45
},
42
46
{
47
+ 'sl_no' : 5 ,
43
48
'date' : datetime (2024 , 3 , 5 ),
44
49
'dr_amount' : 0 ,
45
50
'cr_amount' : 5000 ,
48
53
'event_id' : None
49
54
},
50
55
{
56
+ 'sl_no' : 6 ,
51
57
'date' : datetime (2024 , 3 , 6 ),
52
58
'dr_amount' : 4000 ,
53
59
'cr_amount' : 0 ,
56
62
'event_id' : None
57
63
},
58
64
{
65
+ 'sl_no' : 7 ,
59
66
'date' : datetime (2024 , 3 , 6 ),
60
67
'balance' : 2000 ,
61
68
'cr_amount' : 0 ,
@@ -185,27 +192,28 @@ def test_get_accounts_balance_as_of(self):
185
192
186
193
def test_account_ledger (self ):
187
194
ledger = AccountLedger ("Savings" , BalanceType .CREDIT )
188
- ledger .add_entry (date = datetime (2024 , 3 , 1 ), dr_amount = 0 , cr_amount = 20000 , narration = "salary credited" ,
195
+ self .assertEqual (ledger .get_balance (), 0 )
196
+ ledger .add_entry (sl_no = 1 , date = datetime (2024 , 3 , 1 ), dr_amount = 0 , cr_amount = 20000 , narration = "salary credited" ,
189
197
event_id = None )
190
198
self .assertEqual (ledger .get_balance (), 20000 )
191
199
self .assertEqual (ledger .get_balance (as_of = datetime (2024 , 2 , 29 )), 0 )
192
200
self .assertEqual (ledger .get_balance (as_of = datetime (2024 , 3 , 1 )), 20000 )
193
201
self .assertEqual (ledger .get_balance (as_of = datetime (2024 , 3 , 2 )), 20000 )
194
202
with self .assertRaises (InvalidLedgerEntry ) as e :
195
- ledger .add_entry (date = datetime (2024 , 2 , 29 ), dr_amount = 5000 , cr_amount = 0 , narration = "loan emi" ,
203
+ ledger .add_entry (sl_no = 2 , date = datetime (2024 , 2 , 29 ), dr_amount = 5000 , cr_amount = 0 , narration = "loan emi" ,
196
204
event_id = None )
197
205
self .assertEqual (e .exception .__str__ (), "Backdated entry can't be added" )
198
- ledger .add_entry (date = datetime (2024 , 3 , 2 ), dr_amount = 5000 , cr_amount = 0 , narration = "home loan emi" ,
206
+ ledger .add_entry (sl_no = 2 , date = datetime (2024 , 3 , 2 ), dr_amount = 5000 , cr_amount = 0 , narration = "home loan emi" ,
199
207
event_id = None )
200
- ledger .add_entry (date = datetime (2024 , 3 , 3 ), dr_amount = 3000 , cr_amount = 0 , narration = "bike emi" ,
208
+ ledger .add_entry (sl_no = 3 , date = datetime (2024 , 3 , 3 ), dr_amount = 3000 , cr_amount = 0 , narration = "bike emi" ,
201
209
event_id = None )
202
- ledger .add_entry (date = datetime (2024 , 3 , 4 ), dr_amount = 10000 , cr_amount = 0 , narration = "Rent" ,
210
+ ledger .add_entry (sl_no = 4 , date = datetime (2024 , 3 , 4 ), dr_amount = 10000 , cr_amount = 0 , narration = "Rent" ,
203
211
event_id = None )
204
- ledger .add_entry (date = datetime (2024 , 3 , 5 ), dr_amount = 0 , cr_amount = 5000 , narration = "borrowed from friend" ,
212
+ ledger .add_entry (sl_no = 5 , date = datetime (2024 , 3 , 5 ), dr_amount = 0 , cr_amount = 5000 , narration = "borrowed from friend" ,
205
213
event_id = None )
206
- ledger .add_entry (date = datetime (2024 , 3 , 6 ), dr_amount = 4000 , cr_amount = 0 , narration = "SIP Investment" ,
214
+ ledger .add_entry (sl_no = 6 , date = datetime (2024 , 3 , 6 ), dr_amount = 4000 , cr_amount = 0 , narration = "SIP Investment" ,
207
215
event_id = None )
208
- ledger .add_entry (date = datetime (2024 , 3 , 6 ), dr_amount = 1000 , cr_amount = 0 , narration = "shopping" ,
216
+ ledger .add_entry (sl_no = 7 , date = datetime (2024 , 3 , 6 ), dr_amount = 1000 , cr_amount = 0 , narration = "shopping" ,
209
217
event_id = None )
210
218
self .assertEqual (ledger .get_balance (), 2000 )
211
219
self .assertEqual (ledger .get_balance (as_of = datetime (2024 , 3 , 2 )), 15000 )
@@ -217,11 +225,11 @@ def test_account_ledger(self):
217
225
self .assertEqual ([entry ._asdict () for entry in ledger .get_entries ()], sample_ledger_entries )
218
226
219
227
ledger = AccountLedger ("Asset" , BalanceType .DEBIT )
220
- ledger .add_entry (date = datetime (2024 , 3 , 1 ), dr_amount = 5000 , cr_amount = 0 , narration = "lent to friend" ,
228
+ ledger .add_entry (sl_no = 1 , date = datetime (2024 , 3 , 1 ), dr_amount = 5000 , cr_amount = 0 , narration = "lent to friend" ,
221
229
event_id = None )
222
- ledger .add_entry (date = datetime (2024 , 3 , 2 ), dr_amount = 0 , cr_amount = 2000 , narration = "received 2000" ,
230
+ ledger .add_entry (sl_no = 2 , date = datetime (2024 , 3 , 2 ), dr_amount = 0 , cr_amount = 2000 , narration = "received 2000" ,
223
231
event_id = None )
224
- ledger .add_entry (date = datetime (2024 , 3 , 3 ), dr_amount = 3000 , cr_amount = 0 , narration = "Invested in stock" ,
232
+ ledger .add_entry (sl_no = 3 , date = datetime (2024 , 3 , 3 ), dr_amount = 3000 , cr_amount = 0 , narration = "Invested in stock" ,
225
233
event_id = None )
226
234
self .assertEqual (ledger .get_balance (), 6000 )
227
235
self .assertEqual (ledger .get_balance (as_of = datetime (2024 , 2 , 29 )), 0 )
0 commit comments