Skip to content

Commit f5e0d4b

Browse files
fix lp_stable_decimals_migration tests
1 parent fbb3aa1 commit f5e0d4b

File tree

8 files changed

+14
-105
lines changed

8 files changed

+14
-105
lines changed

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
"test-lp-staking-v2": "mocha --parallel --require test/lp_staking_v2/_hooks.mjs test/lp_staking_v2",
2222
"test-lp": "mocha --parallel --require test/lp/_hooks.mjs test/lp",
2323
"test-lp-stable": "mocha --parallel --require test/lp_stable/_hooks.mjs test/lp_stable",
24+
"test-lp-stable-new-pools-with-different-decimals": "mocha --parallel --require test/lp_stable/new_pools_with_different_decimals/_hooks.mjs test/lp_stable/new_pools_with_different_decimals",
2425
"test-lp-stable-decimals-migration": "mocha --parallel --require test/lp_stable/lp_stable_decimals_migration/_hooks.mjs test/lp_stable/lp_stable_decimals_migration",
2526
"test-lp-to-lp-stable-migration": "mocha --parallel --require test/lp_stable/lp_to_lp_stable_migration/_hooks.mjs test/lp_stable/lp_to_lp_stable_migration",
2627
"test-referral": "mocha --parallel --require test/referral/_hooks.mjs test/referral",

test/lp_stable/getOneTkn.mjs

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@ describe('lp_stable: getOneTkn.mjs', /** @this {MochaSuiteModified} */() => {
2222
const usdtAmount = 1e8;
2323
const exchResult = 0;
2424
const notUsed = 0;
25-
const delay = 2;
2625

2726
const expectedOutAmAmt = 1e8;
2827
const expectedOutPrAmt = 0;
@@ -47,9 +46,7 @@ describe('lp_stable: getOneTkn.mjs', /** @this {MochaSuiteModified} */() => {
4746
chainId,
4847
}, this.accounts.user1);
4948
await api.transactions.broadcast(putOneTkn, {});
50-
const { height } = await ni.waitForTx(putOneTkn.id, { apiBase });
51-
52-
await ni.waitForHeight(height + delay, { apiBase });
49+
await ni.waitForTx(putOneTkn.id, { apiBase });
5350

5451
const getOneTkn = invokeScript({
5552
dApp: lpStable,
@@ -100,7 +97,6 @@ describe('lp_stable: getOneTkn.mjs', /** @this {MochaSuiteModified} */() => {
10097

10198
expect(stateChanges.invokes.map((item) => [item.dApp, item.call.function]))
10299
.to.deep.include.members([
103-
[address(this.accounts.lpStableAddon, chainId), 'ensureCanGetOneTkn'],
104100
[address(this.accounts.gwxReward, chainId), 'calcD'],
105101
[address(this.accounts.gwxReward, chainId), 'calcD'],
106102
[address(this.accounts.factoryV2, chainId), 'burn'],

test/lp_stable/lp_stable_decimals_migration/getOneTkn.mjs

Lines changed: 11 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -26,14 +26,14 @@ describe('lp_stable_decimals_migration: getOneTkn.mjs', /** @this {MochaSuiteMod
2626
const autoStake = false;
2727
const usdtAmount = 1e8;
2828
const usdnAmount = 1e8;
29-
const delay = 2;
3029
const exchResult = 0;
3130
const notUsed = 0;
3231

33-
const expectedOutLpAmt = 1e8;
32+
const expectedOutLpAmt = 1e10;
3433
const expectedPriceLast = 5e7;
3534
const expectedPriceHistory = 5e7;
36-
const expectedInvokesCount = 1;
35+
const expectedInvokesCountOldScript = 4;
36+
const expectedInvokesCountNewScript = 3;
3737

3838
const lpStable = address(this.accounts.lpStable, chainId);
3939

@@ -55,11 +55,10 @@ describe('lp_stable_decimals_migration: getOneTkn.mjs', /** @this {MochaSuiteMod
5555
chainId,
5656
}, this.accounts.user1);
5757
await api.transactions.broadcast(put, {});
58-
const { height } = await ni.waitForTx(put.id, { apiBase });
58+
await ni.waitForTx(put.id, { apiBase });
5959

6060
// putOneTknFirst
6161
// --------------------------------------------------------------------------------------------
62-
await ni.waitForHeight(height + delay + 1, { apiBase });
6362

6463
const putOneTknFirst = invokeScript({
6564
dApp: lpStable,
@@ -110,14 +109,14 @@ describe('lp_stable_decimals_migration: getOneTkn.mjs', /** @this {MochaSuiteMod
110109
const {
111110
timestamp: timestampGetOneTknAfterPutOneTknFirst,
112111
} = await api.blocks.fetchHeadersAt(heightGetOneTknAfterPutOneTknFirst);
113-
const keyPriceHistoryGetOneTknAfterPutOneTknFirst = `%s%s%d%d__price__history__${heightGetOneTknAfterPutOneTknFirst}__${timestampGetOneTknAfterPutOneTknFirstt}`;
112+
const keyPriceHistoryGetOneTknAfterPutOneTknFirst = `%s%s%d%d__price__history__${heightGetOneTknAfterPutOneTknFirst}__${timestampGetOneTknAfterPutOneTknFirst}`;
114113

115114
// check getOneTknAfterPutOneTknFirst
116115
// --------------------------------------------------------------------------------------------
117116
expect(stateChangesGetOneTknAfterPutOneTknFirst.data).to.eql([{
118117
key: `%s%s%s__G__${address(this.accounts.user1, chainId)}__${idGetOneTknAfterPutOneTknFirst}`,
119118
type: 'string',
120-
value: `%d%d%d%d%d%d__${usdtAmount}__${usdnAmount}__${expectedOutLpAmt}__${expectedPriceLast}__${heightGetOneTknAfterPutOneTknFirst}__${timestampGetOneTknAfterPutOneTknFirst}`,
119+
value: `%d%d%d%d%d%d__${usdtAmount}__${notUsed}__${expectedOutLpAmt}__${expectedPriceLast}__${heightGetOneTknAfterPutOneTknFirst}__${timestampGetOneTknAfterPutOneTknFirst}`,
121120
}, {
122121
key: '%s%s__price__last',
123122
type: 'integer',
@@ -132,33 +131,15 @@ describe('lp_stable_decimals_migration: getOneTkn.mjs', /** @this {MochaSuiteMod
132131
address: address(this.accounts.user1, chainId),
133132
asset: this.usdtAssetId,
134133
amount: usdtAmount,
135-
}, {
136-
address: address(this.accounts.user1, chainId),
137-
asset: this.usdnAssetId,
138-
amount: usdnAmount,
139134
}]);
140135

141136
const {
142137
invokes: invokesGetOneTknAfterPutOneTknFirst,
143138
} = stateChangesGetOneTknAfterPutOneTknFirst;
144-
expect(invokesGetOneTknAfterPutOneTknFirst.length).to.eql(expectedInvokesCount);
145-
146-
expect(invokesGetOneTknAfterPutOneTknFirst[0].dApp)
147-
.to.eql(address(this.accounts.factoryV2, chainId));
148-
expect(invokesGetOneTknAfterPutOneTknFirst[0].call.function).to.eql('burn');
149-
expect(invokesGetOneTknAfterPutOneTknFirst[0].call.args).to.eql([
150-
{
151-
type: 'Int',
152-
value: expectedOutLpAmt,
153-
}]);
154-
expect(invokesGetOneTknAfterPutOneTknFirst[0].stateChanges.burns).to.eql([{
155-
assetId: this.lpStableAssetId,
156-
quantity: expectedOutLpAmt,
157-
}]);
139+
expect(invokesGetOneTknAfterPutOneTknFirst.length).to.eql(expectedInvokesCountOldScript);
158140

159141
// putOneTknSecond
160142
// --------------------------------------------------------------------------------------------
161-
await ni.waitForHeight(heightGetOneTknAfterPutOneTknFirst + delay + 1, { apiBase });
162143

163144
const putOneTknSecond = invokeScript({
164145
dApp: lpStable,
@@ -178,9 +159,7 @@ describe('lp_stable_decimals_migration: getOneTkn.mjs', /** @this {MochaSuiteMod
178159
chainId,
179160
}, this.accounts.user1);
180161
await api.transactions.broadcast(putOneTknSecond, {});
181-
const {
182-
height: heightPutOneTknSecond,
183-
} = await ni.waitForTx(putOneTknSecond.id, { apiBase });
162+
await ni.waitForTx(putOneTknSecond.id, { apiBase });
184163

185164
// setScript
186165
// --------------------------------------------------------------------------------------------
@@ -194,7 +173,7 @@ describe('lp_stable_decimals_migration: getOneTkn.mjs', /** @this {MochaSuiteMod
194173
const ssTxLpStableV2 = setScript({
195174
script: base64LpStableV2,
196175
chainId,
197-
fee: 33e5,
176+
fee: 100e5,
198177
senderPublicKey: publicKey(this.accounts.lpStable),
199178
}, this.accounts.manager);
200179
await api.transactions.broadcast(ssTxLpStableV2, {});
@@ -213,7 +192,6 @@ describe('lp_stable_decimals_migration: getOneTkn.mjs', /** @this {MochaSuiteMod
213192

214193
// getOneTknAfterSetScript
215194
// --------------------------------------------------------------------------------------------
216-
await ni.waitForHeight(heightPutOneTknSecond + delay + 1, { apiBase });
217195

218196
const getOneTknAfterSetScript = invokeScript({
219197
dApp: lpStable,
@@ -249,7 +227,7 @@ describe('lp_stable_decimals_migration: getOneTkn.mjs', /** @this {MochaSuiteMod
249227
expect(stateChangesGetOneTknAfterSetScript.data).to.eql([{
250228
key: `%s%s%s__G__${address(this.accounts.user1, chainId)}__${idGetOneTknAfterSetScript}`,
251229
type: 'string',
252-
value: `%d%d%d%d%d%d__${usdtAmount}__${usdnAmount}__${expectedOutLpAmt}__${expectedPriceLast}__${heightGetOneTknAfterSetScript}__${timestampGetOneTknAfterSetScript}`,
230+
value: `%d%d%d%d%d%d__${usdtAmount}__${notUsed}__${expectedOutLpAmt}__${expectedPriceLast}__${heightGetOneTknAfterSetScript}__${timestampGetOneTknAfterSetScript}`,
253231
}, {
254232
key: '%s%s__price__last',
255233
type: 'integer',
@@ -264,26 +242,9 @@ describe('lp_stable_decimals_migration: getOneTkn.mjs', /** @this {MochaSuiteMod
264242
address: address(this.accounts.user1, chainId),
265243
asset: this.usdtAssetId,
266244
amount: usdtAmount,
267-
}, {
268-
address: address(this.accounts.user1, chainId),
269-
asset: this.usdnAssetId,
270-
amount: usdnAmount,
271245
}]);
272246

273247
const { invokes: invokesGetOneTknAfterSetScript } = stateChangesGetOneTknAfterSetScript;
274-
expect(invokesGetOneTknAfterSetScript.length).to.eql(expectedInvokesCount);
275-
276-
expect(invokesGetOneTknAfterSetScript[0].dApp)
277-
.to.eql(address(this.accounts.factoryV2, chainId));
278-
expect(invokesGetOneTknAfterSetScript[0].call.function).to.eql('burn');
279-
expect(invokesGetOneTknAfterSetScript[0].call.args).to.eql([
280-
{
281-
type: 'Int',
282-
value: expectedOutLpAmt,
283-
}]);
284-
expect(invokesGetOneTknAfterSetScript[0].stateChanges.burns).to.eql([{
285-
assetId: this.lpStableAssetId,
286-
quantity: expectedOutLpAmt,
287-
}]);
248+
expect(invokesGetOneTknAfterSetScript.length).to.eql(expectedInvokesCountNewScript);
288249
});
289250
});

test/lp_stable/lp_stable_decimals_migration/ride/lp_stable_addon_old.ride

Lines changed: 0 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -158,27 +158,6 @@ func setAmp(amp: String) = {
158158
@Callable(i)
159159
func ensureCanGetOneTkn(caller: String) = {
160160
strict checkCaller = i.mustPool()
161-
162-
strict ensureCanPut = match poolContract.getInteger(lastPutOneTknCall(caller)) {
163-
case int: Int => {
164-
let permittedHeight = int + poolContract.getInteger(delay).value()
165-
let isReadyforPutOneTkn = height >= permittedHeight
166-
let needBlocks = permittedHeight - height
167-
isReadyforPutOneTkn || (["you should wait", needBlocks.toString(), "blocks more to perform the action"]).makeString(" ").throw()
168-
}
169-
case _ => true
170-
}
171-
172-
strict ensureCanGet = match poolContract.getInteger(lastGetOneTknCall(caller)) {
173-
case int: Int => {
174-
let permittedHeight = int + poolContract.getInteger(delay).value()
175-
let isReadyforGetOneTkn = height >= permittedHeight
176-
let needBlocks = permittedHeight - height
177-
isReadyforGetOneTkn || (["you should wait", needBlocks.toString(), "blocks more to perform the action"]).makeString(" ").throw()
178-
}
179-
case _ => true
180-
}
181-
182161
strict setI = poolContract.invoke("setI", [lastPutOneTknCall(caller), height], [])
183162

184163
[]
@@ -187,27 +166,6 @@ func ensureCanGetOneTkn(caller: String) = {
187166
@Callable(i)
188167
func ensureCanPutOneTkn(caller: String) = {
189168
strict checkCaller = i.mustPool()
190-
191-
strict ensureCanPut = match poolContract.getInteger(lastPutOneTknCall(caller)) {
192-
case int: Int => {
193-
let permittedHeight = int + poolContract.getInteger(delay).value()
194-
let isReadyforPutOneTkn = height >= permittedHeight
195-
let needBlocks = permittedHeight - height
196-
isReadyforPutOneTkn || (["you should wait", needBlocks.toString(), "blocks more to perform the action"]).makeString(" ").throw()
197-
}
198-
case _ => true
199-
}
200-
201-
strict ensureCanGet = match poolContract.getInteger(lastGetOneTknCall(caller)) {
202-
case int: Int => {
203-
let permittedHeight = int + poolContract.getInteger(delay).value()
204-
let isReadyforGetOneTkn = height >= permittedHeight
205-
let needBlocks = permittedHeight - height
206-
isReadyforGetOneTkn || (["you should wait", needBlocks.toString(), "blocks more to perform the action"]).makeString(" ").throw()
207-
}
208-
case _ => true
209-
}
210-
211169
strict setI = poolContract.invoke("setI", [lastPutOneTknCall(caller), height], [])
212170

213171
[]

test/lp_stable/new_pools_with_different_decimals/getOneTkn.mjs

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ describe('lp_stable: getOneTkn.mjs', /** @this {MochaSuiteModified} */() => {
2323

2424
const exchResult = 0;
2525
const notUsed = 0;
26-
const delay = 2;
2726

2827
const expectedOutAmAmt = 1e10;
2928
const expectedOutPrAmt = 0;
@@ -48,9 +47,7 @@ describe('lp_stable: getOneTkn.mjs', /** @this {MochaSuiteModified} */() => {
4847
chainId,
4948
}, this.accounts.user1);
5049
await api.transactions.broadcast(putOneTkn, {});
51-
const { height } = await ni.waitForTx(putOneTkn.id, { apiBase });
52-
53-
await ni.waitForHeight(height + delay, { apiBase });
50+
await ni.waitForTx(putOneTkn.id, { apiBase });
5451

5552
const getOneTkn = invokeScript({
5653
dApp: lpStable,
@@ -101,7 +98,6 @@ describe('lp_stable: getOneTkn.mjs', /** @this {MochaSuiteModified} */() => {
10198

10299
expect(stateChanges.invokes.map((item) => [item.dApp, item.call.function]))
103100
.to.deep.include.members([
104-
[address(this.accounts.lpStableAddon, chainId), 'ensureCanGetOneTkn'],
105101
[address(this.accounts.gwxReward, chainId), 'calcD'],
106102
[address(this.accounts.gwxReward, chainId), 'calcD'],
107103
[address(this.accounts.factoryV2, chainId), 'burn'],

test/lp_stable/new_pools_with_different_decimals/putOneTkn.mjs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,6 @@ describe('lp_stable: putOneTkn.mjs', /** @this {MochaSuiteModified} */() => {
7777

7878
expect(stateChanges.invokes.map((item) => [item.dApp, item.call.function]))
7979
.to.deep.include.members([
80-
[address(this.accounts.lpStableAddon, chainId), 'ensureCanPutOneTkn'],
8180
[address(this.accounts.gwxReward, chainId), 'calcD'],
8281
[address(this.accounts.gwxReward, chainId), 'calcD'],
8382
[address(this.accounts.factoryV2, chainId), 'emit'],

test/lp_stable/putOneTkn.mjs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,6 @@ describe('lp_stable: putOneTkn.mjs', /** @this {MochaSuiteModified} */() => {
7777

7878
expect(stateChanges.invokes.map((item) => [item.dApp, item.call.function]))
7979
.to.deep.include.members([
80-
[address(this.accounts.lpStableAddon, chainId), 'ensureCanPutOneTkn'],
8180
[address(this.accounts.gwxReward, chainId), 'calcD'],
8281
[address(this.accounts.gwxReward, chainId), 'calcD'],
8382
[address(this.accounts.factoryV2, chainId), 'emit'],

test/lp_stable/putOneTknAutoStake.mjs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,6 @@ describe('lp_stable: putOneTkn.mjs', /** @this {MochaSuiteModified} */() => {
7171

7272
expect(stateChanges.invokes.map((item) => [item.dApp, item.call.function]))
7373
.to.deep.include.members([
74-
[address(this.accounts.lpStableAddon, chainId), 'ensureCanPutOneTkn'],
7574
[address(this.accounts.gwxReward, chainId), 'calcD'],
7675
[address(this.accounts.gwxReward, chainId), 'calcD'],
7776
[address(this.accounts.factoryV2, chainId), 'emit'],

0 commit comments

Comments
 (0)