del*_*100 2 unit-testing hyperledger-fabric hyperledger-composer
我的货件中有一系列产品,但我不知道如何参考该系列产品。我正在尝试设置单元测试环境,并且需要提供测试数据。
装运模块
asset Shipment identified by shipmentId{
o String shipmentId
--> Product[] allProducts
--> participant owner
}
Run Code Online (Sandbox Code Playgroud)
和单元测试
const shipment = factory.newResource(namespace, 'Shipment', '001');
shipment.allProducts = factory.newRelationship(namespace, participant, /** what to do here */ )
Run Code Online (Sandbox Code Playgroud)
或者我可以只传递一系列产品,例如:
shipment.allProducts = products
Run Code Online (Sandbox Code Playgroud)
我对此解决方案表示怀疑的原因是,我需要使用工厂newRelationship函数。如果您有任何建议,那将有所帮助。
好吧,我终于找到了解决方案。我的错误消息是:
实例org.trader.network.Shipment#001具有类型不是org.trader.network.Product []的org.trader.network.Product类型的allProducts属性。
如果要进行单元测试并将一些数据添加到引用的数组类型,请执行以下操作:
Run Code Online (Sandbox Code Playgroud)shipment.allProducts= [factory.newRelationship( namespace, 'Product', product.$identifier )];
注意工厂周围的支架。我需要为产品建立一系列关系。
我只需要一个产品进行单元测试,但是如果您需要更多产品,只需在方括号之间添加产品的更多关系。
我通过查看随机的github存储库找到了解决方案(来源:here)
| 归档时间: |
|
| 查看次数: |
72 次 |
| 最近记录: |