Skip to content

Commit bc50cae

Browse files
committed
Some mode code coverage improvements
1 parent 051bf29 commit bc50cae

File tree

6 files changed

+201
-19
lines changed

6 files changed

+201
-19
lines changed

src/main/java/io/api/etherscan/model/Wei.java

-15
Original file line numberDiff line numberDiff line change
@@ -12,14 +12,6 @@ public class Wei {
1212

1313
private BigInteger result;
1414

15-
public Wei() {
16-
this.result = BigInteger.valueOf(0);
17-
}
18-
19-
public Wei(long value) {
20-
this.result = BigInteger.valueOf(value);
21-
}
22-
2315
public Wei(BigInteger value) {
2416
this.result = value;
2517
}
@@ -60,11 +52,4 @@ public boolean equals(Object o) {
6052
public int hashCode() {
6153
return result != null ? result.hashCode() : 0;
6254
}
63-
64-
@Override
65-
public String toString() {
66-
return "Wei{" +
67-
"value=" + result +
68-
'}';
69-
}
7055
}

src/main/java/io/api/etherscan/model/proxy/BlockProxy.java

+9-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
package io.api.etherscan.model.proxy;
22

3+
import io.api.etherscan.util.BasicUtils;
4+
5+
import java.time.LocalDateTime;
6+
import java.time.ZoneOffset;
37
import java.util.List;
48

59
/**
@@ -18,6 +22,7 @@ public class BlockProxy {
1822
private String difficulty;
1923
private String totalDifficulty;
2024
private String timestamp;
25+
private LocalDateTime _timestamp;
2126

2227
private String miner;
2328
private String nonce;
@@ -63,8 +68,10 @@ public String getTotalDifficulty() {
6368
return totalDifficulty;
6469
}
6570

66-
public String getTimestamp() {
67-
return timestamp;
71+
public LocalDateTime getTimeStamp() {
72+
if(_timestamp == null && !BasicUtils.isEmpty(timestamp))
73+
_timestamp = LocalDateTime.ofEpochSecond(BasicUtils.parseHex(timestamp).longValue(), 0, ZoneOffset.UTC);
74+
return _timestamp;
6875
}
6976

7077
public String getMiner() {

src/test/java/io/api/etherscan/account/AccountTxsTest.java

+3
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,9 @@ public void correct() {
3333
assertNotNull(txs.get(0).getCumulativeGasUsed());
3434
assertNotNull(txs.get(0).getGasPrice());
3535
assertNotNull(txs.get(0).getValue());
36+
assertNotNull(txs.get(0).getContractAddress());
37+
assertNotNull(txs.get(0).getInput());
38+
assertNotEquals(txs.get(0).hashCode(), txs.get(1).hashCode());
3639
}
3740

3841
@Test

src/test/java/io/api/etherscan/block/BlockApiTest.java

+4
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,10 @@ public void correct() {
3030
assertNotNull(uncles.get().getUncles().get(0).getMiner());
3131

3232
assertNotEquals(0, uncles.get().hashCode());
33+
34+
UncleBlock empty = new UncleBlock();
35+
assertFalse(uncles.get().equals(empty));
36+
assertTrue(empty.isEmpty());
3337
}
3438

3539
@Test

src/test/java/io/api/etherscan/logs/LogQueryBuilderTest.java

+165-2
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,51 @@ public void tripleInCorrectOp() {
100100
assertNotNull(triple.getParams());
101101
}
102102

103+
@Test(expected = LogQueryException.class)
104+
public void tripleInCorrectTopic1() {
105+
LogQuery triple = LogQueryBuilder.with("0x33990122638b9132ca29c723bdf037f1a891a70c", 379224, 400000)
106+
.topic(null,
107+
"0x72657075746174696f6e00000000000000000000000000000000000000000000",
108+
"0x72657075746174696f6e00000000000000000000000000000000000000000000")
109+
.setOpTopic0_1(LogOp.AND)
110+
.setOpTopic0_2(null)
111+
.setOpTopic1_2(LogOp.AND)
112+
.build();
113+
114+
assertNotNull(triple);
115+
assertNotNull(triple.getParams());
116+
}
117+
118+
@Test(expected = LogQueryException.class)
119+
public void tripleInCorrectTopic2() {
120+
LogQuery triple = LogQueryBuilder.with("0x33990122638b9132ca29c723bdf037f1a891a70c", 379224, 400000)
121+
.topic("0xf63780e752c6a54a94fc52715dbc5518a3b4c3c2833d301a204226548a2a8545",
122+
"null",
123+
"0x72657075746174696f6e00000000000000000000000000000000000000000000")
124+
.setOpTopic0_1(LogOp.AND)
125+
.setOpTopic0_2(null)
126+
.setOpTopic1_2(LogOp.AND)
127+
.build();
128+
129+
assertNotNull(triple);
130+
assertNotNull(triple.getParams());
131+
}
132+
133+
@Test(expected = LogQueryException.class)
134+
public void tripleInCorrectTopic3() {
135+
LogQuery triple = LogQueryBuilder.with("0x33990122638b9132ca29c723bdf037f1a891a70c", 379224, 400000)
136+
.topic("0xf63780e752c6a54a94fc52715dbc5518a3b4c3c2833d301a204226548a2a8545",
137+
"0x72657075746174696f6e00000000000000000000000000000000000000000000",
138+
"null")
139+
.setOpTopic0_1(LogOp.AND)
140+
.setOpTopic0_2(null)
141+
.setOpTopic1_2(LogOp.AND)
142+
.build();
143+
144+
assertNotNull(triple);
145+
assertNotNull(triple.getParams());
146+
}
147+
103148
@Test
104149
public void quadroCorrect() {
105150
LogQuery quadro = LogQueryBuilder.with("0x33990122638b9132ca29c723bdf037f1a891a70c")
@@ -120,7 +165,7 @@ public void quadroCorrect() {
120165
}
121166

122167
@Test(expected = LogQueryException.class)
123-
public void quadroIncorrectTopic() {
168+
public void quadroIncorrectTopic2() {
124169
LogQuery quadro = LogQueryBuilder.with("0x33990122638b9132ca29c723bdf037f1a891a70c")
125170
.topic("0xf63780e752c6a54a94fc52715dbc5518a3b4c3c2833d301a204226548a2a8545",
126171
null,
@@ -138,6 +183,86 @@ public void quadroIncorrectTopic() {
138183
assertNotNull(quadro.getParams());
139184
}
140185

186+
@Test(expected = LogQueryException.class)
187+
public void tupleIncorrectTopic2() {
188+
LogQuery quadro = LogQueryBuilder.with("0x33990122638b9132ca29c723bdf037f1a891a70c")
189+
.topic("0xf63780e752c6a54a94fc52715dbc5518a3b4c3c2833d301a204226548a2a8545",
190+
null)
191+
.setOpTopic0_1(LogOp.AND)
192+
.build();
193+
194+
assertNotNull(quadro);
195+
assertNotNull(quadro.getParams());
196+
}
197+
198+
@Test(expected = LogQueryException.class)
199+
public void tupleIncorrectTopic1() {
200+
LogQuery quadro = LogQueryBuilder.with("0x33990122638b9132ca29c723bdf037f1a891a70c")
201+
.topic(null,
202+
"0xf63780e752c6a54a94fc52715dbc5518a3b4c3c2833d301a204226548a2a8545")
203+
.setOpTopic0_1(LogOp.AND)
204+
.build();
205+
206+
assertNotNull(quadro);
207+
assertNotNull(quadro.getParams());
208+
}
209+
210+
@Test(expected = LogQueryException.class)
211+
public void quadroIncorrectOp1() {
212+
LogQuery quadro = LogQueryBuilder.with("0x33990122638b9132ca29c723bdf037f1a891a70c")
213+
.topic("0xf63780e752c6a54a94fc52715dbc5518a3b4c3c2833d301a204226548a2a8545",
214+
null,
215+
"0x72657075746174696f6e00000000000000000000000000000000000000000000",
216+
"0x72657075746174696f6e00000000000000000000000000000000000000000000")
217+
.setOpTopic0_1(null)
218+
.setOpTopic0_2(LogOp.OR)
219+
.setOpTopic0_3(LogOp.AND)
220+
.setOpTopic1_2(LogOp.OR)
221+
.setOpTopic1_3(LogOp.OR)
222+
.setOpTopic2_3(LogOp.OR)
223+
.build();
224+
225+
assertNotNull(quadro);
226+
assertNotNull(quadro.getParams());
227+
}
228+
229+
@Test(expected = LogQueryException.class)
230+
public void quadroIncorrectOp2() {
231+
LogQuery quadro = LogQueryBuilder.with("0x33990122638b9132ca29c723bdf037f1a891a70c")
232+
.topic("0xf63780e752c6a54a94fc52715dbc5518a3b4c3c2833d301a204226548a2a8545",
233+
null,
234+
"0x72657075746174696f6e00000000000000000000000000000000000000000000",
235+
"0x72657075746174696f6e00000000000000000000000000000000000000000000")
236+
.setOpTopic0_1(LogOp.AND)
237+
.setOpTopic0_2(null)
238+
.setOpTopic0_3(LogOp.AND)
239+
.setOpTopic1_2(LogOp.OR)
240+
.setOpTopic1_3(LogOp.OR)
241+
.setOpTopic2_3(LogOp.OR)
242+
.build();
243+
244+
assertNotNull(quadro);
245+
assertNotNull(quadro.getParams());
246+
}
247+
248+
@Test(expected = LogQueryException.class)
249+
public void quadroIncorrectOp3() {
250+
LogQuery quadro = LogQueryBuilder.with("0x33990122638b9132ca29c723bdf037f1a891a70c")
251+
.topic("0xf63780e752c6a54a94fc52715dbc5518a3b4c3c2833d301a204226548a2a8545",
252+
null,
253+
"0x72657075746174696f6e00000000000000000000000000000000000000000000",
254+
"0x72657075746174696f6e00000000000000000000000000000000000000000000")
255+
.setOpTopic0_1(LogOp.AND)
256+
.setOpTopic0_2(LogOp.OR)
257+
.setOpTopic0_3(null)
258+
.setOpTopic1_2(LogOp.OR)
259+
.setOpTopic1_3(LogOp.OR)
260+
.setOpTopic2_3(LogOp.OR)
261+
.build();
262+
263+
assertNotNull(quadro);
264+
assertNotNull(quadro.getParams());
265+
}
141266

142267
@Test(expected = LogQueryException.class)
143268
public void quadroInCorrectAgainTopic() {
@@ -159,7 +284,7 @@ public void quadroInCorrectAgainTopic() {
159284
}
160285

161286
@Test(expected = LogQueryException.class)
162-
public void quadroInCorrectOp() {
287+
public void quadroInCorrectOp4() {
163288
LogQuery quadro = LogQueryBuilder.with("0x33990122638b9132ca29c723bdf037f1a891a70c")
164289
.topic("0xf63780e752c6a54a94fc52715dbc5518a3b4c3c2833d301a204226548a2a8545",
165290
"0x72657075746174696f6e00000000000000000000000000000000000000000000",
@@ -177,6 +302,44 @@ public void quadroInCorrectOp() {
177302
assertNotNull(quadro.getParams());
178303
}
179304

305+
@Test(expected = LogQueryException.class)
306+
public void quadroInCorrectOp5() {
307+
LogQuery quadro = LogQueryBuilder.with("0x33990122638b9132ca29c723bdf037f1a891a70c")
308+
.topic("0xf63780e752c6a54a94fc52715dbc5518a3b4c3c2833d301a204226548a2a8545",
309+
"0x72657075746174696f6e00000000000000000000000000000000000000000000",
310+
"",
311+
"")
312+
.setOpTopic0_1(LogOp.AND)
313+
.setOpTopic0_2(LogOp.OR)
314+
.setOpTopic0_3(LogOp.AND)
315+
.setOpTopic1_2(LogOp.AND)
316+
.setOpTopic1_3(null)
317+
.setOpTopic2_3(LogOp.OR)
318+
.build();
319+
320+
assertNotNull(quadro);
321+
assertNotNull(quadro.getParams());
322+
}
323+
324+
@Test(expected = LogQueryException.class)
325+
public void quadroInCorrectOp6() {
326+
LogQuery quadro = LogQueryBuilder.with("0x33990122638b9132ca29c723bdf037f1a891a70c")
327+
.topic("0xf63780e752c6a54a94fc52715dbc5518a3b4c3c2833d301a204226548a2a8545",
328+
"0x72657075746174696f6e00000000000000000000000000000000000000000000",
329+
"",
330+
"")
331+
.setOpTopic0_1(LogOp.AND)
332+
.setOpTopic0_2(LogOp.OR)
333+
.setOpTopic0_3(LogOp.AND)
334+
.setOpTopic1_2(LogOp.AND)
335+
.setOpTopic1_3(LogOp.OR)
336+
.setOpTopic2_3(null)
337+
.build();
338+
339+
assertNotNull(quadro);
340+
assertNotNull(quadro.getParams());
341+
}
342+
180343
@Test(expected = LogQueryException.class)
181344
public void quadroInCorrectTopic() {
182345
LogQuery quadro = LogQueryBuilder.with("0x33990122638b9132ca29c723bdf037f1a891a70c")

src/test/java/io/api/etherscan/proxy/ProxyBlockApiTest.java

+20
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,26 @@ public void correct() {
2222
Optional<BlockProxy> block = api.proxy().block(5120);
2323
assertTrue(block.isPresent());
2424
assertNotNull(block.get().getHash());
25+
assertNotNull(block.get().getNumber());
26+
assertNotNull(block.get().getParentHash());
27+
assertNotNull(block.get().getStateRoot());
28+
assertNotNull(block.get().getSize());
29+
assertNotNull(block.get().getDifficulty());
30+
assertNotNull(block.get().getTotalDifficulty());
31+
assertNotNull(block.get().getTimeStamp());
32+
assertNotNull(block.get().getMiner());
33+
assertNotNull(block.get().getNonce());
34+
assertNotNull(block.get().getHash());
35+
assertNotNull(block.get().getExtraData());
36+
assertNotNull(block.get().getLogsBloom());
37+
assertNotNull(block.get().getMixHash());
38+
assertNotNull(block.get().getGasUsed());
39+
assertNotNull(block.get().getGasLimit());
40+
assertNotNull(block.get().getSha3Uncles());
41+
assertNotNull(block.get().getTransactions());
42+
assertNotNull(block.get().getTransactionsRoot());
43+
assertNotNull(block.get().getReceiptsRoot());
44+
assertNotNull(block.get().getUncles());
2545
}
2646

2747
@Test

0 commit comments

Comments
 (0)