@pasosdejesus/contract-test 0.3.0 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/hre.d.ts +6 -0
- package/dist/hre.d.ts.map +1 -0
- package/dist/hre.js +46 -0
- package/dist/hre.js.map +1 -0
- package/package.json +6 -2
package/dist/hre.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hre.d.ts","sourceRoot":"","sources":["../src/hre.ts"],"names":[],"mappings":"AAgBA,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,wBAAsB,iBAAiB,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,GAAG,CAAC,CAgCtF"}
|
package/dist/hre.js
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Public `hre` shim for legacy scripts, without Hardhat.
|
|
3
|
+
*
|
|
4
|
+
* `createContractHre()` returns the same `ethers`, `viem` and `network` surface
|
|
5
|
+
* used by `contract:test`, backed by @pasosdejesus/edr, plus the `artifacts`
|
|
6
|
+
* object (`readArtifact`) and a `run` placeholder that points to the new
|
|
7
|
+
* commands. It is intentionally local: remote deployments use
|
|
8
|
+
* `contract:deploy` (viem) instead of impersonating Hardhat.
|
|
9
|
+
*
|
|
10
|
+
* https://gitlab.com/pasosdeJesus/m/-/work_items/58
|
|
11
|
+
*/
|
|
12
|
+
import * as path from 'path';
|
|
13
|
+
import { EdrProvider } from '@pasosdejesus/edr';
|
|
14
|
+
import { createHre } from './hre-mock.js';
|
|
15
|
+
import { loadArtifacts } from './runner.js';
|
|
16
|
+
export async function createContractHre(options = {}) {
|
|
17
|
+
const root = path.resolve(options.root ?? process.cwd());
|
|
18
|
+
const chainId = options.chainId ?? 31337;
|
|
19
|
+
const provider = new EdrProvider({ chainId });
|
|
20
|
+
await provider.init();
|
|
21
|
+
const artifacts = loadArtifacts(root);
|
|
22
|
+
const base = createHre(provider, artifacts, chainId);
|
|
23
|
+
const artifactApi = {
|
|
24
|
+
readArtifact(name) {
|
|
25
|
+
const artifact = artifacts.get(name);
|
|
26
|
+
if (!artifact)
|
|
27
|
+
throw new Error(`artifact not found: ${name}`);
|
|
28
|
+
return artifact;
|
|
29
|
+
},
|
|
30
|
+
readArtifactSync(name) {
|
|
31
|
+
return artifactApi.readArtifact(name);
|
|
32
|
+
},
|
|
33
|
+
getAllArtifacts() {
|
|
34
|
+
return [...artifacts.values()];
|
|
35
|
+
},
|
|
36
|
+
};
|
|
37
|
+
return {
|
|
38
|
+
...base,
|
|
39
|
+
artifacts: artifactApi,
|
|
40
|
+
async run(task) {
|
|
41
|
+
throw new Error(`hre.run('${task}') is not supported by the shim; use ` +
|
|
42
|
+
'`bin/m contract:deploy` or `bin/m contract:verify` instead');
|
|
43
|
+
},
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=hre.js.map
|
package/dist/hre.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hre.js","sourceRoot":"","sources":["../src/hre.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAA;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AACzC,OAAO,EAAE,aAAa,EAAyB,MAAM,aAAa,CAAA;AAOlE,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,UAA8B,EAAE;IACtE,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAA;IACxD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,KAAK,CAAA;IACxC,MAAM,QAAQ,GAAG,IAAI,WAAW,CAAC,EAAE,OAAO,EAAE,CAAC,CAAA;IAC7C,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;IACrB,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC,CAAA;IACrC,MAAM,IAAI,GAAG,SAAS,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC,CAAA;IAEpD,MAAM,WAAW,GAAG;QAClB,YAAY,CAAC,IAAY;YACvB,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YACpC,IAAI,CAAC,QAAQ;gBAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,IAAI,EAAE,CAAC,CAAA;YAC7D,OAAO,QAAQ,CAAA;QACjB,CAAC;QACD,gBAAgB,CAAC,IAAY;YAC3B,OAAO,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;QACvC,CAAC;QACD,eAAe;YACb,OAAO,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,CAAA;QAChC,CAAC;KACF,CAAA;IAED,OAAO;QACL,GAAG,IAAI;QACP,SAAS,EAAE,WAAW;QACtB,KAAK,CAAC,GAAG,CAAC,IAAY;YACpB,MAAM,IAAI,KAAK,CACb,YAAY,IAAI,uCAAuC;gBACrD,4DAA4D,CAC/D,CAAA;QACH,CAAC;KACF,CAAA;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pasosdejesus/contract-test",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.1",
|
|
4
4
|
"description": "Hardhat test runner for OpenBSD — Mocha + @ethereumjs/vm EDR fallback",
|
|
5
5
|
"mEngine": true,
|
|
6
6
|
"author": "",
|
|
@@ -15,6 +15,10 @@
|
|
|
15
15
|
".": {
|
|
16
16
|
"import": "./dist/index.js",
|
|
17
17
|
"types": "./dist/index.d.ts"
|
|
18
|
+
},
|
|
19
|
+
"./hre": {
|
|
20
|
+
"import": "./dist/hre.js",
|
|
21
|
+
"types": "./dist/hre.d.ts"
|
|
18
22
|
}
|
|
19
23
|
},
|
|
20
24
|
"files": [
|
|
@@ -28,7 +32,7 @@
|
|
|
28
32
|
"solc": "0.8.26"
|
|
29
33
|
},
|
|
30
34
|
"peerDependencies": {
|
|
31
|
-
"@pasosdejesus/m": "^0.37.
|
|
35
|
+
"@pasosdejesus/m": "^0.37.4",
|
|
32
36
|
"ethers": "^6",
|
|
33
37
|
"viem": "^2"
|
|
34
38
|
},
|