The DJVM cannot sandbox instances of Contract.verify(LedgerTransaction) when testing CorDapps.

Description

Someone on the Public Slack channel was struggling to use the DJVM 4.0 library artifact. In part, this was due to them assuming that Corda and the DJVM were more integrated than they really were. However, using the DJVM was still more complicated than it needed to be.

In effect, they were trying to do something like this:

with a TestBase class largely cloned from the DJVM project. This fails because corda-core-deterministic depends on Bouncy Castle, and some of the Bouncy Castle classes depend on classes that no longer exist inside deterministic-rt.jar:

Even if Bouncy Castle were transformable, the above example would still fail because we cannot currently sandbox / unsandbox instances of LedgerTransaction - which we would need to do before we could pass an instance as an argument to

Assignee

Chris Rankin

Reporter

Chris Rankin

Epic Link

None

Priority

Medium

Engineering Teams

None

Fix versions

Affects versions

Ported to...

None

Sprint

None

Labels

None

Story Points / Dev Days

None

Feature Team

SGX

Severity

Medium
Configure