Skip to content

Commit fffd2f0

Browse files
committed
fix: next address order
1 parent 1f3409c commit fffd2f0

2 files changed

Lines changed: 25 additions & 2 deletions

File tree

packages/neuron-wallet/src/database/address/address-dao.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ export default class AddressDao {
9696
&& value.txCount === 0
9797
})
9898
return addresses.sort((lhs, rhs) => {
99-
return lhs.addressIndex < rhs.addressIndex ? 1 : -1
99+
return lhs.addressIndex - rhs.addressIndex
100100
})[0]
101101
}
102102

@@ -126,7 +126,7 @@ export default class AddressDao {
126126
&& value.txCount === 0
127127
})
128128
return addresses.sort((lhs, rhs) => {
129-
return lhs.addressIndex < rhs.addressIndex ? 1 : -1
129+
return lhs.addressIndex - rhs.addressIndex
130130
})[0]
131131
}
132132

packages/neuron-wallet/tests/database/address/dao.test.ts

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,21 @@ describe('Address Dao tests', () => {
1717
version: AddressVersion.Testnet,
1818
}
1919

20+
const address2: Address = {
21+
walletId: '1',
22+
address: 'ckt1qyqrdsefa43s6m882pcj53m4gdnj4k440axqswmu83',
23+
path: "m/44'/309'/0'/0/1",
24+
addressType: AddressType.Receiving,
25+
addressIndex: 1,
26+
txCount: 0,
27+
liveBalance: '0',
28+
sentBalance: '0',
29+
pendingBalance: '0',
30+
balance: '0',
31+
blake160: '0x36c329ed630d6ce750712a477543672adab57f4c',
32+
version: AddressVersion.Testnet,
33+
}
34+
2035
const usedAddress: Address = {
2136
walletId: '2',
2237
address: 'ckt1qyqrdsefa43s6m882pcj53m4gdnj4k440axqswmu83',
@@ -142,4 +157,12 @@ describe('Address Dao tests', () => {
142157
const counts = AddressDao.unusedAddressesCount(address.walletId, AddressVersion.Testnet)
143158
expect(counts).toEqual([1, 1])
144159
})
160+
161+
it('nextUnusedAddress', () => {
162+
AddressDao.create([address, address2])
163+
164+
const next = AddressDao.nextUnusedAddress('1', AddressVersion.Testnet)
165+
166+
expect(next!.address).toEqual(address.address)
167+
})
145168
})

0 commit comments

Comments
 (0)