Skip to content

Commit a0e3dfa

Browse files
committed
Merge branch 'feat/jsonrpc_finalized' into feat/ethGetBlockByNumber_finalized
2 parents 4e65c21 + eb8e59a commit a0e3dfa

4 files changed

Lines changed: 407 additions & 170 deletions

File tree

framework/src/main/java/org/tron/core/Wallet.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -696,7 +696,7 @@ public Block getSolidBlock() {
696696
}
697697

698698
public long getSolidBlockNum() {
699-
return chainBaseManager.getDynamicPropertiesStore().getLatestSolidifiedBlockNum();
699+
return chainBaseManager.getDynamicPropertiesStore().getLatestSolidifiedBlockNum();
700700
}
701701

702702
public BlockCapsule getBlockCapsuleByNum(long blockNum) {

framework/src/test/java/org/tron/core/WalletTest.java

Lines changed: 17 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ public class WalletTest extends BaseTest {
139139
private static boolean init;
140140

141141
static {
142-
Args.setParam(new String[]{"-d", dbPath()}, Constant.TEST_CONF);
142+
Args.setParam(new String[] {"-d", dbPath()}, Constant.TEST_CONF);
143143
OWNER_ADDRESS = Wallet.getAddressPreFixString() + "548794500882809695a8a687866e76d4271a1abc";
144144
RECEIVER_ADDRESS = Wallet.getAddressPreFixString() + "abd4b9367799eaa3197fecb144eb71de1e049150";
145145
}
@@ -152,7 +152,8 @@ public void before() {
152152
}
153153
initTransaction();
154154
initBlock();
155-
chainBaseManager.getDynamicPropertiesStore().saveLatestBlockHeaderNumber(5);
155+
chainBaseManager.getDynamicPropertiesStore().saveLatestBlockHeaderNumber(BLOCK_NUM_FIVE);
156+
chainBaseManager.getDynamicPropertiesStore().saveLatestSolidifiedBlockNum(BLOCK_NUM_TWO);
156157
chainBaseManager.getDelegatedResourceStore().reset();
157158
init = true;
158159
}
@@ -166,6 +167,7 @@ private void initTransaction() {
166167
TRANSACTION_TIMESTAMP_ONE, BLOCK_NUM_ONE);
167168
addTransactionToStore(transaction1);
168169

170+
// solidified
169171
transaction2 = getBuildTransaction(
170172
getBuildTransferContract(ACCOUNT_ADDRESS_TWO, ACCOUNT_ADDRESS_THREE),
171173
TRANSACTION_TIMESTAMP_TWO, BLOCK_NUM_TWO);
@@ -284,6 +286,7 @@ private void initBlock() {
284286

285287
private void addBlockToStore(Block block) {
286288
BlockCapsule blockCapsule = new BlockCapsule(block);
289+
chainBaseManager.getBlockIndexStore().put(blockCapsule.getBlockId());
287290
chainBaseManager.getBlockStore().put(blockCapsule.getBlockId().getBytes(), blockCapsule);
288291
}
289292

@@ -1169,19 +1172,19 @@ public void testListNodes() {
11691172
* delegate_balance = 1000_000L; => 277
11701173
* delegate_balance = 1000_000_000L; => 279
11711174
* delegate_balance = 1000_000_000_000L => 280
1172-
*
1175+
* <p>
11731176
* We initialize account information as follows
11741177
* account balance = 1000_000_000_000L
11751178
* account frozen_balance = 1000_000_000L
1176-
*
1179+
* <p>
11771180
* then estimateConsumeBandWidthSize cost 279
1178-
*
1181+
* <p>
11791182
* so we have following result:
11801183
* TransactionUtil.estimateConsumeBandWidthSize(
11811184
* dynamicStore,ownerCapsule.getBalance()) ===> false
11821185
* TransactionUtil.estimateConsumeBandWidthSize(
11831186
* dynamicStore,ownerCapsule.getFrozenV2BalanceForBandwidth()) ===> true
1184-
*
1187+
* <p>
11851188
* This test case is used to verify the above conclusions
11861189
*/
11871190
@Test
@@ -1206,5 +1209,13 @@ public void testGetCanDelegatedMaxSizeBandWidth123() {
12061209
chainBaseManager.getDynamicPropertiesStore().saveMaxDelegateLockPeriod(DELEGATE_PERIOD / 3000);
12071210
}
12081211

1212+
@Test
1213+
public void testGetSolidBlock() {
1214+
long blkNum = wallet.getSolidBlockNum();
1215+
Assert.assertEquals(BLOCK_NUM_TWO, blkNum);
1216+
1217+
Block block = wallet.getSolidBlock();
1218+
assertEquals(block2, block);
1219+
}
12091220
}
12101221

framework/src/test/java/org/tron/core/jsonrpc/JsonRpcTest.java

Lines changed: 1 addition & 103 deletions
Original file line numberDiff line numberDiff line change
@@ -190,6 +190,7 @@ public void testLogFilter() {
190190
} catch (JsonRpcInvalidParamsException e) {
191191
Assert.fail();
192192
}
193+
193194
try {
194195
new LogFilter(new FilterRequest(null, null, null, new String[] {"0x0"}, null));
195196
} catch (JsonRpcInvalidParamsException e) {
@@ -240,109 +241,6 @@ public void testLogFilter() {
240241
}
241242
}
242243

243-
/**
244-
* test fromBlock and toBlock parameters
245-
*/
246-
@Test
247-
public void testLogFilterWrapper() {
248-
249-
// fromBlock and toBlock are both empty
250-
try {
251-
LogFilterWrapper logFilterWrapper =
252-
new LogFilterWrapper(new FilterRequest(null, null, null, null, null), 100, null);
253-
Assert.assertEquals(logFilterWrapper.getFromBlock(), 100);
254-
Assert.assertEquals(logFilterWrapper.getToBlock(), Long.MAX_VALUE);
255-
} catch (JsonRpcInvalidParamsException e) {
256-
Assert.fail();
257-
}
258-
259-
// fromBlock is not empty and smaller than currentMaxBlockNum, toBlock is empty
260-
try {
261-
LogFilterWrapper logFilterWrapper =
262-
new LogFilterWrapper(new FilterRequest("0x14", null, null, null, null), 100, null);
263-
Assert.assertEquals(logFilterWrapper.getFromBlock(), 20);
264-
Assert.assertEquals(logFilterWrapper.getToBlock(), Long.MAX_VALUE);
265-
} catch (JsonRpcInvalidParamsException e) {
266-
Assert.fail();
267-
}
268-
269-
// fromBlock is not empty and bigger than currentMaxBlockNum, toBlock is empty
270-
try {
271-
LogFilterWrapper logFilterWrapper =
272-
new LogFilterWrapper(new FilterRequest("0x78", null, null, null, null), 100, null);
273-
Assert.assertEquals(logFilterWrapper.getFromBlock(), 120);
274-
Assert.assertEquals(logFilterWrapper.getToBlock(), Long.MAX_VALUE);
275-
} catch (JsonRpcInvalidParamsException e) {
276-
Assert.fail();
277-
}
278-
279-
// fromBlock is empty, toBlock is not empty and smaller than currentMaxBlockNum
280-
try {
281-
LogFilterWrapper logFilterWrapper =
282-
new LogFilterWrapper(new FilterRequest(null, "0x14", null, null, null), 100, null);
283-
Assert.assertEquals(logFilterWrapper.getFromBlock(), 20);
284-
Assert.assertEquals(logFilterWrapper.getToBlock(), 20);
285-
} catch (JsonRpcInvalidParamsException e) {
286-
Assert.fail();
287-
}
288-
289-
// fromBlock is empty, toBlock is not empty and bigger than currentMaxBlockNum
290-
try {
291-
LogFilterWrapper logFilterWrapper =
292-
new LogFilterWrapper(new FilterRequest(null, "0x78", null, null, null), 100, null);
293-
Assert.assertEquals(logFilterWrapper.getFromBlock(), 100);
294-
Assert.assertEquals(logFilterWrapper.getToBlock(), 120);
295-
} catch (JsonRpcInvalidParamsException e) {
296-
Assert.fail();
297-
}
298-
299-
// fromBlock is not empty, toBlock is not empty
300-
try {
301-
LogFilterWrapper logFilterWrapper =
302-
new LogFilterWrapper(new FilterRequest("0x14", "0x78", null, null, null), 100, null);
303-
Assert.assertEquals(logFilterWrapper.getFromBlock(), 20);
304-
Assert.assertEquals(logFilterWrapper.getToBlock(), 120);
305-
} catch (JsonRpcInvalidParamsException e) {
306-
Assert.fail();
307-
}
308-
try {
309-
LogFilterWrapper logFilterWrapper =
310-
new LogFilterWrapper(new FilterRequest("0x78", "0x14", null, null, null), 100, null);
311-
} catch (JsonRpcInvalidParamsException e) {
312-
Assert.assertEquals("please verify: fromBlock <= toBlock", e.getMessage());
313-
}
314-
315-
//fromBlock or toBlock is not hex num
316-
try {
317-
LogFilterWrapper logFilterWrapper =
318-
new LogFilterWrapper(new FilterRequest("earliest", null, null, null, null), 100, null);
319-
Assert.assertEquals(logFilterWrapper.getFromBlock(), 0);
320-
Assert.assertEquals(logFilterWrapper.getToBlock(), Long.MAX_VALUE);
321-
} catch (JsonRpcInvalidParamsException e) {
322-
Assert.fail();
323-
}
324-
try {
325-
LogFilterWrapper logFilterWrapper =
326-
new LogFilterWrapper(new FilterRequest("latest", null, null, null, null), 100, null);
327-
Assert.assertEquals(logFilterWrapper.getFromBlock(), 100);
328-
Assert.assertEquals(logFilterWrapper.getToBlock(), Long.MAX_VALUE);
329-
} catch (JsonRpcInvalidParamsException e) {
330-
Assert.fail();
331-
}
332-
try {
333-
LogFilterWrapper logFilterWrapper =
334-
new LogFilterWrapper(new FilterRequest("pending", null, null, null, null), 100, null);
335-
} catch (JsonRpcInvalidParamsException e) {
336-
Assert.assertEquals("TAG pending not supported", e.getMessage());
337-
}
338-
try {
339-
LogFilterWrapper logFilterWrapper =
340-
new LogFilterWrapper(new FilterRequest("test", null, null, null, null), 100, null);
341-
} catch (JsonRpcInvalidParamsException e) {
342-
Assert.assertEquals("Incorrect hex syntax", e.getMessage());
343-
}
344-
}
345-
346244
private int[] getBloomIndex(String s) {
347245
Bloom bloom = Bloom.create(Hash.sha3(ByteArray.fromHexString(s)));
348246
BitSet bs = BitSet.valueOf(bloom.getData());

0 commit comments

Comments
 (0)