Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitf4e7df1

Browse files
committed
add EpointChaincodeCommon Test
1 parent51b85fe commitf4e7df1

File tree

6 files changed

+114
-74
lines changed

6 files changed

+114
-74
lines changed

‎src/main/java/ijarvis/intelliq/FabricCA/FabricCAApp.java

Lines changed: 54 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,12 @@
22

33
importijarvis.intelliq.Fabric.FabricApp;
44
importijarvis.intelliq.Fabric.SampleUser;
5+
importijarvis.intelliq.LedgerRecord;
56
importorg.apache.log4j.Logger;
67
importorg.hyperledger.fabric.sdk.*;
78
importorg.hyperledger.fabric.sdk.exception.CryptoException;
89
importorg.hyperledger.fabric.sdk.exception.InvalidArgumentException;
10+
importorg.hyperledger.fabric.sdk.exception.ProposalException;
911
importorg.hyperledger.fabric.sdk.security.CryptoSuite;
1012

1113
importjava.util.Collection;
@@ -14,25 +16,74 @@ public class FabricCAApp {
1416
privatestaticLoggerlogger=Logger.getLogger(FabricCAApp.class);
1517
publicstaticHFClientclient=null;
1618
publicstaticCryptoSuitecs =CryptoSuite.Factory.getCryptoSuite();
19+
publicstaticChaincodeIDcid =ChaincodeID.newBuilder().setName(TestConfigure.CHAINCODENAME).setVersion(TestConfigure.CHAINCODEVERSION).build();
1720
publicstaticvoidinit(UserCAUSER)throwsCryptoException,InvalidArgumentException {
1821
client =HFClient.createNewInstance();
1922
client.setCryptoSuite(cs);
2023
client.setUserContext(CAUSER);
2124
}
25+
26+
/**
27+
* 调用链码添加KV结构
28+
*/
29+
publicstaticvoidaddKV(Channelchannel,LedgerRecordrecord)throwsProposalException,InvalidArgumentException {
30+
QueryByChaincodeRequestreq =client.newQueryProposalRequest();
31+
req.setChaincodeID(cid);
32+
req.setFcn("addkv");
33+
req.setArgs(record.toStringArray());
34+
Collection<ProposalResponse>resps =channel.queryByChaincode(req);
35+
for (ProposalResponseresp :resps) {
36+
Stringpayload =newString(resp.getChaincodeActionResponsePayload());
37+
logger.debug("response: " +payload);
38+
}
39+
}
40+
/**
41+
* 调用链码更新
42+
*/
43+
publicstaticvoidupdateKV(Channelchannel,LedgerRecordrecord)throwsProposalException,InvalidArgumentException {
44+
QueryByChaincodeRequestreq =client.newQueryProposalRequest();
45+
req.setChaincodeID(cid);
46+
req.setFcn("updatekv");
47+
req.setArgs(record.toStringArray());
48+
Collection<ProposalResponse>resps =channel.queryByChaincode(req);
49+
for (ProposalResponseresp :resps) {
50+
Stringpayload =newString(resp.getChaincodeActionResponsePayload());
51+
logger.debug("response: " +payload);
52+
}
53+
}
54+
55+
56+
57+
58+
2259
/*
2360
* 实现根绝给定的Key查询数据
2461
* */
25-
publicstaticvoidqueryFabcar(Channelchannel,Stringkey)throwsException {
62+
publicstaticvoidquerykv(Channelchannel,Stringkey)throwsException {
2663
QueryByChaincodeRequestreq =client.newQueryProposalRequest();
27-
ChaincodeIDcid =ChaincodeID.newBuilder().setName("epointchaincodezzk").setVersion("0.1").build();
2864
req.setChaincodeID(cid);
2965
req.setFcn("query");
3066
req.setArgs(newString[] {key });
3167
System.out.println("Querying for " +key);
3268
Collection<ProposalResponse>resps =channel.queryByChaincode(req);
3369
for (ProposalResponseresp :resps) {
3470
Stringpayload =newString(resp.getChaincodeActionResponsePayload());
35-
System.out.println("response: " +payload);
71+
logger.debug("response: " +payload);
72+
}
73+
}
74+
75+
/**
76+
* 调用链码查询给定Key的历史值
77+
*/
78+
publicstaticvoidqueryhistory(Channelchannel,Stringkey)throwsProposalException,InvalidArgumentException {
79+
QueryByChaincodeRequestreq =client.newQueryProposalRequest();
80+
req.setChaincodeID(cid);
81+
req.setFcn("queryhistory");
82+
req.setArgs(newString[]{key});
83+
Collection<ProposalResponse>resps =channel.queryByChaincode(req);
84+
for (ProposalResponseresp :resps) {
85+
Stringpayload =newString(resp.getChaincodeActionResponsePayload());
86+
logger.debug("response: " +payload);
3687
}
3788
}
3889
}

‎src/main/java/ijarvis/intelliq/FabricCA/TestConfigure.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,9 @@
1010
importjava.util.HashMap;
1111

1212
publicclassTestConfigure {
13+
publicstaticStringCHAINCODENAME="epointchaincodecommon";
14+
publicstaticStringCHAINCODEVERSION="0.2";
15+
publicstaticStringCHANNLNAME="epointchannel";
1316
publicstaticHashMap<String,SampleOrg>getConfigure()throwsMalformedURLException,InvalidArgumentException {
1417
HashMap<String,SampleOrg>orgHashMap=newHashMap<>();
1518
SampleOrgorg1=newSampleOrg("org1","Org1MSP");

‎src/main/java/ijarvis/intelliq/LedgerRecord.java

Lines changed: 16 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -4,83 +4,39 @@
44
* 账本数据结构,非常简单的一个数据Bean而已
55
*/
66
publicclassLedgerRecord {
7-
privateStringPerid;
8-
privateStringLegalname;
9-
privateStringCarddate;
10-
privateStringCardaddr;
11-
privateStringCardmonery;
12-
privateStringCompanyaddr;
7+
privateStringKey;
8+
privateStringValue;
139

14-
publicStringgetPerid() {
15-
returnPerid;
10+
publicStringgetKey() {
11+
returnKey;
1612
}
1713

18-
publicvoidsetPerid(Stringperid) {
19-
Perid =perid;
14+
publicvoidsetKey(Stringkey) {
15+
Key =key;
2016
}
2117

22-
publicStringgetLegalname() {
23-
returnLegalname;
18+
publicStringgetValue() {
19+
returnValue;
2420
}
2521

26-
publicvoidsetLegalname(Stringlegalname) {
27-
Legalname =legalname;
22+
publicvoidsetValue(Stringvalue) {
23+
Value =value;
2824
}
2925

30-
publicStringgetCarddate() {
31-
returnCarddate;
32-
}
33-
34-
publicvoidsetCarddate(Stringcarddate) {
35-
Carddate =carddate;
36-
}
37-
38-
publicStringgetCardaddr() {
39-
returnCardaddr;
40-
}
41-
42-
publicvoidsetCardaddr(Stringcardaddr) {
43-
Cardaddr =cardaddr;
44-
}
45-
46-
publicStringgetCardmonery() {
47-
returnCardmonery;
48-
}
49-
50-
publicvoidsetCardmonery(Stringcardmonery) {
51-
Cardmonery =cardmonery;
52-
}
53-
54-
publicStringgetCompanyaddr() {
55-
returnCompanyaddr;
56-
}
57-
58-
publicvoidsetCompanyaddr(Stringcompanyaddr) {
59-
Companyaddr =companyaddr;
60-
}
61-
62-
publicLedgerRecord(Stringperid,Stringlegalname,Stringcarddate,Stringcardaddr,Stringcardmonery,Stringcompanyaddr) {
63-
Perid =perid;
64-
Legalname =legalname;
65-
Carddate =carddate;
66-
Cardaddr =cardaddr;
67-
Cardmonery =cardmonery;
68-
Companyaddr =companyaddr;
26+
publicLedgerRecord(Stringkey,Stringvalue) {
27+
Key =key;
28+
Value =value;
6929
}
7030

7131
publicString[]toStringArray() {
72-
returnnewString[] {this.getPerid(),this.getLegalname(),this.getCarddate(),this.getCardaddr(),this.getCardmonery(),this.getCompanyaddr()};
32+
returnnewString[] {this.getKey(),this.getValue()};
7333
}
7434

7535
@Override
7636
publicStringtoString() {
7737
return"LedgerRecord{" +
78-
"Perid='" +Perid +'\'' +
79-
", Legalname='" +Legalname +'\'' +
80-
", Carddate='" +Carddate +'\'' +
81-
", Cardaddr='" +Cardaddr +'\'' +
82-
", Cardmonery='" +Cardmonery +'\'' +
83-
", Companyaddr='" +Companyaddr +'\'' +
38+
"Key='" +Key +'\'' +
39+
", Value='" +Value +'\'' +
8440
'}';
8541
}
8642
}

‎src/test/java/ijarvis/intelliq/Fabric/AppTest.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ public class AppTest {
2222
privatestaticStringCONNFIG_Peer0Org2="grpc://192.168.188.114:7051";
2323
privatestaticStringCONNFIG_Peer1Org2="grpc://192.168.188.115:7051";
2424
privatestaticStringCHANNELID="epointchannel";
25-
privatestaticLedgerRecordPERSONINFO=newLedgerRecord("liudong","刘东","2017-12-12","江苏省张家港市","10000","江苏省苏州市张家港市国泰新点");
25+
privatestaticLedgerRecordPERSONINFO=newLedgerRecord("liudong","刘东");
2626
@Before
2727
publicvoidSetup()throwsCryptoException,InvalidArgumentException {
2828
logger.debug("Fabric Test Init........");
@@ -54,7 +54,7 @@ public void TestEpointChainCodeQuery() throws Exception {
5454
channel.addPeer(FabricApp.client.newPeer("peer",CONNFIG_Peer0Org1));
5555
channel.addOrderer(FabricApp.client.newOrderer("orderer",CONNFIG_Orderer));
5656
channel.initialize();
57-
FabricApp.queryFabcar(channel,PERSONINFO.getPerid());
57+
FabricApp.queryFabcar(channel,PERSONINFO.getKey());
5858
}
5959

6060
/**
@@ -69,7 +69,7 @@ public void TestEpointChainCodeMutilInstert() throws Exception{
6969
channel.initialize();
7070
for (inti =0 ;i<10000;i++){
7171
Stringperid=UUID.randomUUID().toString();
72-
LedgerRecordtmp=newLedgerRecord(perid,"测试","2017-12-13","江苏张家港","3000","苏州");
72+
LedgerRecordtmp=newLedgerRecord(perid,"测试");
7373
FabricApp.instertFabcar(channel,tmp);
7474
}
7575
logger.debug("测试完成");

‎src/test/java/ijarvis/intelliq/FabricCA/FabricCATestUseCAServer.java

Lines changed: 36 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,8 @@
2121
*/
2222
publicclassFabricCATestUseCAServer {
2323
privatestaticLoggerlogger=Logger.getLogger(FabricCATestUseCAServer.class);
24-
privatestaticStringCHANNELID="epointchannel";
2524
HashMap<String,SampleOrg>orgHashMap=newHashMap<>();
26-
privatestaticLedgerRecordPERSONINFO=newLedgerRecord("liuwenru","刘美丽","2017-12-12","江苏省张家港市","10000","江苏省苏州市张家港市国泰新点");
25+
privatestaticLedgerRecordPERSONINFO=newLedgerRecord("liuwenru","刘文儒");
2726

2827
@Before
2928
publicvoidSetup()throwsEnrollmentException,InvalidArgumentException,CryptoException,org.hyperledger.fabric.sdk.exception.InvalidArgumentException,MalformedURLException {
@@ -37,12 +36,43 @@ public void Setup() throws EnrollmentException, InvalidArgumentException, Crypto
3736
FabricCAApp.init(user1);
3837
}
3938
@Test
40-
publicvoidTestEpointChainCodeQuery()throwsException{
41-
logger.debug("测试Fabric 查询功能");
42-
Channelchannel =FabricCAApp.client.newChannel(CHANNELID);
39+
publicvoidTestEpointChainCodeAddKV()throwsException{
40+
logger.debug("链码测试........向链码中添加KV");
41+
Channelchannel =FabricCAApp.client.newChannel(TestConfigure.CHANNLNAME);
4342
channel.addPeer(FabricCAApp.client.newPeer("peer",orgHashMap.get("org1").getPeerLocation("peer0org1")));
4443
channel.addOrderer(FabricCAApp.client.newOrderer("orderer",orgHashMap.get("org1").getOrdererLocation("orderer")));
4544
channel.initialize();
46-
FabricCAApp.queryFabcar(channel,PERSONINFO.getPerid());
45+
FabricCAApp.addKV(channel,PERSONINFO);
46+
47+
}
48+
@Test
49+
publicvoidTestEpointChainCodeUpdate()throwsException {
50+
logger.debug("链码测试........向链码中更新KV");
51+
LedgerRecordtmp=newLedgerRecord("liuwenru","刘美丽");
52+
Channelchannel =FabricCAApp.client.newChannel(TestConfigure.CHANNLNAME);
53+
channel.addPeer(FabricCAApp.client.newPeer("peer",orgHashMap.get("org1").getPeerLocation("peer0org1")));
54+
channel.addOrderer(FabricCAApp.client.newOrderer("orderer",orgHashMap.get("org1").getOrdererLocation("orderer")));
55+
channel.initialize();
56+
FabricCAApp.updateKV(channel,tmp);
57+
}
58+
59+
@Test
60+
publicvoidTestEpointChainCodeQuery()throwsException{
61+
logger.debug("链码测试........向链码查询");
62+
Channelchannel =FabricCAApp.client.newChannel(TestConfigure.CHANNLNAME);
63+
channel.addPeer(FabricCAApp.client.newPeer("peer",orgHashMap.get("org1").getPeerLocation("peer0org1")));
64+
channel.addOrderer(FabricCAApp.client.newOrderer("orderer",orgHashMap.get("org1").getOrdererLocation("orderer")));
65+
channel.initialize();
66+
FabricCAApp.querykv(channel,PERSONINFO.getKey());
67+
}
68+
69+
@Test
70+
publicvoidTestEpointChainCodeQueryHistory()throwsException{
71+
logger.debug("链码测试........向链码查询给定Key的历史值");
72+
Channelchannel =FabricCAApp.client.newChannel(TestConfigure.CHANNLNAME);
73+
channel.addPeer(FabricCAApp.client.newPeer("peer",orgHashMap.get("org1").getPeerLocation("peer0org1")));
74+
channel.addOrderer(FabricCAApp.client.newOrderer("orderer",orgHashMap.get("org1").getOrdererLocation("orderer")));
75+
channel.initialize();
76+
FabricCAApp.queryhistory(channel,PERSONINFO.getKey());
4777
}
4878
}

‎src/test/java/ijarvis/intelliq/FabricCA/FabricCATestUseStatic.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ public class FabricCATestUseStatic {
1919
privatestaticStringCONNFIG_Peer1Org2="grpc://192.168.188.115:7051";
2020
privatestaticStringCHANNELID="epointchannel";
2121
privatestaticStringkeypath="";
22-
privatestaticLedgerRecordPERSONINFO=newLedgerRecord("liuwenru","刘东","2017-12-12","江苏省张家港市","10000","江苏省苏州市张家港市国泰新点");
22+
privatestaticLedgerRecordPERSONINFO=newLedgerRecord("liuwenru","刘东");
2323
@Before
2424
publicvoidSetup()throwsCryptoException,InvalidArgumentException {
2525
logger.debug("Fabric Test Init........");
@@ -34,7 +34,7 @@ public void TestEpointChainCodeQuery() throws Exception {
3434
channel.addPeer(FabricApp.client.newPeer("peer",CONNFIG_Peer0Org1));
3535
channel.addOrderer(FabricApp.client.newOrderer("orderer",CONNFIG_Orderer));
3636
channel.initialize();
37-
FabricApp.queryFabcar(channel,PERSONINFO.getPerid());
37+
FabricApp.queryFabcar(channel,PERSONINFO.getKey());
3838
}
3939

4040

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp