Skip to content

Commit c3cfcd4

Browse files
committed
fixup! feat(wallet)!: implement DrepStatusTracker
1 parent 45eea8b commit c3cfcd4

File tree

2 files changed

+37
-14
lines changed

2 files changed

+37
-14
lines changed

packages/tx-construction/test/tx-builder/TxBuilder.test.ts

Lines changed: 28 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -146,31 +146,44 @@ describe.each([
146146
}),
147147
rewardAccounts: jest.fn().mockResolvedValue([
148148
{
149+
// No DRep delegatee
149150
address: rewardAccount1,
150151
keyStatus: Cardano.StakeCredentialStatus.Registered,
151152
rewardBalance: 10n
152153
},
153154
{
155+
// Valid DRep delegatee
154156
address: rewardAccount2,
155157
dRepDelegatee: {
156-
__typename: 'AlwaysAbstain'
157-
},
158+
delegateRepresentative: {
159+
__typename: 'AlwaysAbstain'
160+
}
161+
} as Cardano.DRepDelegatee,
158162
keyStatus: Cardano.StakeCredentialStatus.Registered,
159163
rewardBalance: 20n
160164
},
161165
{
166+
// Expired DRep delegatee
162167
address: rewardAccount3,
163168
dRepDelegatee: {
164-
__typename: 'AlwaysAbstain'
165-
},
169+
delegateRepresentative: {
170+
active: false,
171+
amount: 0n,
172+
hasScript: false,
173+
id: Cardano.DRepID('drep1vpzcgfrlgdh4fft0p0ju70czkxxkuknw0jjztl3x7aqgm9q3hqyaz')
174+
}
175+
} as Cardano.DRepDelegatee,
166176
keyStatus: Cardano.StakeCredentialStatus.Registered,
167177
rewardBalance: 30n
168178
},
169179
{
180+
// Valid DRep delegatee but 0 balance
170181
address: rewardAccount4,
171182
dRepDelegatee: {
172-
__typename: 'AlwaysAbstain'
173-
},
183+
delegateRepresentative: {
184+
__typename: 'AlwaysAbstain'
185+
}
186+
} as Cardano.DRepDelegatee,
174187
keyStatus: Cardano.StakeCredentialStatus.Registered,
175188
rewardBalance: 0n
176189
}
@@ -191,8 +204,10 @@ describe.each([
191204
{
192205
address: rewardAccount2,
193206
dRepDelegatee: {
194-
__typename: 'AlwaysAbstain'
195-
},
207+
delegateRepresentative: {
208+
__typename: 'AlwaysAbstain'
209+
}
210+
} as Cardano.DRepDelegatee,
196211
keyStatus: Cardano.StakeCredentialStatus.Registered,
197212
rewardBalance: 20n
198213
},
@@ -204,8 +219,10 @@ describe.each([
204219
{
205220
address: rewardAccount4,
206221
dRepDelegatee: {
207-
__typename: 'AlwaysAbstain'
208-
},
222+
delegateRepresentative: {
223+
__typename: 'AlwaysAbstain'
224+
}
225+
} as Cardano.DRepDelegatee,
209226
keyStatus: Cardano.StakeCredentialStatus.Registered,
210227
rewardBalance: 0n
211228
}
@@ -815,10 +832,7 @@ describe.each([
815832

816833
const txProps = await tx.inspect();
817834

818-
expect(txProps.body.withdrawals).toEqual([
819-
{ quantity: 20n, stakeAddress: rewardAccount2 },
820-
{ quantity: 30n, stakeAddress: rewardAccount3 }
821-
]);
835+
expect(txProps.body.withdrawals).toEqual([{ quantity: 20n, stakeAddress: rewardAccount2 }]);
822836
});
823837

824838
it('adds withdrawals for all registered reward accounts with positive reward balance if protocol version is less than 10', async () => {

packages/wallet/test/services/ProviderTracker/ProviderStatusTracker.test.ts

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import {
55
ProviderFnStats,
66
TrackedAssetProvider,
77
TrackedChainHistoryProvider,
8+
TrackedDrepProvider,
89
TrackedRewardsProvider,
910
TrackedStakePoolProvider,
1011
TrackedUtxoProvider,
@@ -17,6 +18,7 @@ import { dummyLogger } from 'ts-log';
1718
const {
1819
mockAssetProvider,
1920
mockChainHistoryProvider,
21+
mockDrepProvider,
2022
mockNetworkInfoProvider,
2123
mockRewardsProvider,
2224
mockUtxoProvider
@@ -67,6 +69,7 @@ describe('createProviderStatusTracker', () => {
6769
let assetProvider: TrackedAssetProvider;
6870
let utxoProvider: TrackedUtxoProvider;
6971
let chainHistoryProvider: TrackedChainHistoryProvider;
72+
let drepProvider: TrackedDrepProvider;
7073
let rewardsProvider: TrackedRewardsProvider;
7174

7275
const timeout = 5000;
@@ -77,6 +80,7 @@ describe('createProviderStatusTracker', () => {
7780
networkInfoProvider = new TrackedWalletNetworkInfoProvider(mockNetworkInfoProvider());
7881
assetProvider = new TrackedAssetProvider(mockAssetProvider());
7982
chainHistoryProvider = new TrackedChainHistoryProvider(mockChainHistoryProvider());
83+
drepProvider = new TrackedDrepProvider(mockDrepProvider());
8084
rewardsProvider = new TrackedRewardsProvider(mockRewardsProvider());
8185
});
8286

@@ -93,6 +97,7 @@ describe('createProviderStatusTracker', () => {
9397
{
9498
assetProvider,
9599
chainHistoryProvider,
100+
drepProvider,
96101
logger: dummyLogger,
97102
networkInfoProvider,
98103
rewardsProvider,
@@ -125,6 +130,7 @@ describe('createProviderStatusTracker', () => {
125130
{
126131
assetProvider,
127132
chainHistoryProvider,
133+
drepProvider,
128134
logger: dummyLogger,
129135
networkInfoProvider,
130136
rewardsProvider,
@@ -153,6 +159,7 @@ describe('createProviderStatusTracker', () => {
153159
{
154160
assetProvider,
155161
chainHistoryProvider,
162+
drepProvider,
156163
logger: dummyLogger,
157164
networkInfoProvider,
158165
rewardsProvider,
@@ -181,6 +188,7 @@ describe('createProviderStatusTracker', () => {
181188
{
182189
assetProvider,
183190
chainHistoryProvider,
191+
drepProvider,
184192
logger: dummyLogger,
185193
networkInfoProvider,
186194
rewardsProvider,
@@ -209,6 +217,7 @@ describe('createProviderStatusTracker', () => {
209217
{
210218
assetProvider,
211219
chainHistoryProvider,
220+
drepProvider,
212221
logger: dummyLogger,
213222
networkInfoProvider,
214223
rewardsProvider,

0 commit comments

Comments
 (0)