@hyperlane-xyz/cli 7.1.0 → 7.3.0

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.
Files changed (100) hide show
  1. package/dist/src/avs/check.js +1 -1
  2. package/dist/src/avs/check.js.map +1 -1
  3. package/dist/src/check/warp.d.ts +0 -1
  4. package/dist/src/check/warp.d.ts.map +1 -1
  5. package/dist/src/check/warp.js +0 -1
  6. package/dist/src/check/warp.js.map +1 -1
  7. package/dist/src/commands/core.d.ts +1 -0
  8. package/dist/src/commands/core.d.ts.map +1 -1
  9. package/dist/src/commands/core.js +6 -2
  10. package/dist/src/commands/core.js.map +1 -1
  11. package/dist/src/commands/relayer.js +1 -1
  12. package/dist/src/commands/relayer.js.map +1 -1
  13. package/dist/src/commands/warp.js +1 -1
  14. package/dist/src/commands/warp.js.map +1 -1
  15. package/dist/src/config/agent.js +1 -1
  16. package/dist/src/config/agent.js.map +1 -1
  17. package/dist/src/config/core.d.ts +2 -1194
  18. package/dist/src/config/core.d.ts.map +1 -1
  19. package/dist/src/config/core.js +1 -1
  20. package/dist/src/config/core.js.map +1 -1
  21. package/dist/src/config/multisig.d.ts +7 -2
  22. package/dist/src/config/multisig.d.ts.map +1 -1
  23. package/dist/src/config/multisig.js.map +1 -1
  24. package/dist/src/config/submit.d.ts.map +1 -1
  25. package/dist/src/config/submit.js +1 -4
  26. package/dist/src/config/submit.js.map +1 -1
  27. package/dist/src/deploy/core.d.ts +1 -2
  28. package/dist/src/deploy/core.d.ts.map +1 -1
  29. package/dist/src/deploy/core.js +3 -1
  30. package/dist/src/deploy/core.js.map +1 -1
  31. package/dist/src/deploy/dry-run.d.ts.map +1 -1
  32. package/dist/src/deploy/dry-run.js +1 -1
  33. package/dist/src/deploy/dry-run.js.map +1 -1
  34. package/dist/src/deploy/utils.d.ts +0 -1
  35. package/dist/src/deploy/utils.d.ts.map +1 -1
  36. package/dist/src/deploy/utils.js +0 -3
  37. package/dist/src/deploy/utils.js.map +1 -1
  38. package/dist/src/deploy/warp.d.ts.map +1 -1
  39. package/dist/src/deploy/warp.js +35 -14
  40. package/dist/src/deploy/warp.js.map +1 -1
  41. package/dist/src/read/core.d.ts.map +1 -1
  42. package/dist/src/read/core.js +5 -2
  43. package/dist/src/read/core.js.map +1 -1
  44. package/dist/src/read/warp.js +1 -1
  45. package/dist/src/read/warp.js.map +1 -1
  46. package/dist/src/status/message.d.ts.map +1 -1
  47. package/dist/src/status/message.js +2 -2
  48. package/dist/src/status/message.js.map +1 -1
  49. package/dist/src/tests/commands/core.d.ts +2 -2
  50. package/dist/src/tests/commands/core.d.ts.map +1 -1
  51. package/dist/src/tests/commands/helpers.d.ts +14 -1
  52. package/dist/src/tests/commands/helpers.d.ts.map +1 -1
  53. package/dist/src/tests/commands/helpers.js +15 -2
  54. package/dist/src/tests/commands/helpers.js.map +1 -1
  55. package/dist/src/tests/core-apply.e2e-test.d.ts +2 -0
  56. package/dist/src/tests/core-apply.e2e-test.d.ts.map +1 -0
  57. package/dist/src/tests/core-apply.e2e-test.js +155 -0
  58. package/dist/src/tests/core-apply.e2e-test.js.map +1 -0
  59. package/dist/src/tests/core-deploy.e2e-test.d.ts +2 -0
  60. package/dist/src/tests/core-deploy.e2e-test.d.ts.map +1 -0
  61. package/dist/src/tests/core-deploy.e2e-test.js +55 -0
  62. package/dist/src/tests/core-deploy.e2e-test.js.map +1 -0
  63. package/dist/src/tests/core-read.e2e-test.d.ts +2 -0
  64. package/dist/src/tests/core-read.e2e-test.d.ts.map +1 -0
  65. package/dist/src/tests/core-read.e2e-test.js +29 -0
  66. package/dist/src/tests/core-read.e2e-test.js.map +1 -0
  67. package/dist/src/tests/relay.e2e-test.js +14 -17
  68. package/dist/src/tests/relay.e2e-test.js.map +1 -1
  69. package/dist/src/tests/warp-apply.e2e-test.js +32 -20
  70. package/dist/src/tests/warp-apply.e2e-test.js.map +1 -1
  71. package/dist/src/tests/warp-deploy.e2e-test.js +7 -11
  72. package/dist/src/tests/warp-deploy.e2e-test.js.map +1 -1
  73. package/dist/src/tests/warp-read.e2e-test.js +3 -11
  74. package/dist/src/tests/warp-read.e2e-test.js.map +1 -1
  75. package/dist/src/utils/balances.d.ts.map +1 -1
  76. package/dist/src/utils/balances.js +7 -1
  77. package/dist/src/utils/balances.js.map +1 -1
  78. package/dist/src/utils/chains.d.ts +1 -1
  79. package/dist/src/utils/chains.d.ts.map +1 -1
  80. package/dist/src/utils/env.js +1 -1
  81. package/dist/src/utils/env.js.map +1 -1
  82. package/dist/src/utils/files.js +3 -3
  83. package/dist/src/utils/files.js.map +1 -1
  84. package/dist/src/utils/input.d.ts +33 -49
  85. package/dist/src/utils/input.d.ts.map +1 -1
  86. package/dist/src/utils/input.js +4 -25
  87. package/dist/src/utils/input.js.map +1 -1
  88. package/dist/src/utils/warp.d.ts +14 -0
  89. package/dist/src/utils/warp.d.ts.map +1 -0
  90. package/dist/src/utils/warp.js +24 -0
  91. package/dist/src/utils/warp.js.map +1 -0
  92. package/dist/src/validator/preFlightCheck.js +2 -2
  93. package/dist/src/validator/preFlightCheck.js.map +1 -1
  94. package/dist/src/version.d.ts +1 -1
  95. package/dist/src/version.js +1 -1
  96. package/package.json +12 -9
  97. package/dist/src/tests/core.e2e-test.d.ts +0 -2
  98. package/dist/src/tests/core.e2e-test.d.ts.map +0 -1
  99. package/dist/src/tests/core.e2e-test.js +0 -113
  100. package/dist/src/tests/core.e2e-test.js.map +0 -1
@@ -1,8 +1,21 @@
1
1
  import { TokenRouterConfig } from '@hyperlane-xyz/sdk';
2
2
  import { Address } from '@hyperlane-xyz/utils';
3
- export declare const TEST_CONFIGS_PATH = "./test-configs";
3
+ export declare const E2E_TEST_CONFIGS_PATH = "./test-configs";
4
4
  export declare const REGISTRY_PATH = "./test-configs/anvil";
5
+ export declare const TEMP_PATH = "/tmp";
5
6
  export declare const ANVIL_KEY = "0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80";
7
+ export declare const E2E_TEST_BURN_ADDRESS = "0x0000000000000000000000000000000000000001";
8
+ export declare const CHAIN_NAME_2 = "anvil2";
9
+ export declare const CHAIN_NAME_3 = "anvil3";
10
+ export declare const EXAMPLES_PATH = "./examples";
11
+ export declare const CORE_CONFIG_PATH = "./examples/core-config.yaml";
12
+ export declare const CORE_READ_CONFIG_PATH_2 = "/tmp/anvil2/core-config-read.yaml";
13
+ export declare const CHAIN_2_METADATA_PATH = "./test-configs/anvil/chains/anvil2/metadata.yaml";
14
+ export declare const CHAIN_3_METADATA_PATH = "./test-configs/anvil/chains/anvil3/metadata.yaml";
15
+ export declare const WARP_CONFIG_PATH_EXAMPLE = "./examples/warp-route-deployment.yaml";
16
+ export declare const WARP_CONFIG_PATH_2 = "/tmp/anvil2/warp-route-deployment-anvil2.yaml";
17
+ export declare const WARP_CORE_CONFIG_PATH_2 = "./test-configs/anvil/deployments/warp_routes/ETH/anvil2-config.yaml";
18
+ export declare const DEFAULT_E2E_TEST_TIMEOUT = 100000;
6
19
  /**
7
20
  * Retrieves the deployed Warp address from the Warp core config.
8
21
  */
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../src/tests/commands/helpers.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,iBAAiB,EAGlB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAY/C,eAAO,MAAM,iBAAiB,mBAAmB,CAAC;AAClD,eAAO,MAAM,aAAa,yBAA+B,CAAC;AAE1D,eAAO,MAAM,SAAS,uEACgD,CAAC;AAEvE;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,iBAKzE;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,OAAO,EACd,YAAY,EAAE,MAAM,EACpB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,MAAM,CAAC,CAUjB;AAED;;GAEG;AACH,wBAAsB,WAAW,CAC/B,KAAK,EAAE,OAAO,EACd,KAAK,EAAE,MAAM,EACb,cAAc,EAAE,MAAM,EACtB,kBAAkB,EAAE,MAAM,uCAI3B;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,MAAM,EAAE;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,iBAAiB,CAAC;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,GAAG,OAAO,CAAC,MAAM,CAAC,CAmBlB;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,MAAM,EACb,aAAa,EAAE,MAAM,EACrB,GAAG,EAAE,MAAM,mCAeZ;AAED,wBAAsB,WAAW,CAC/B,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,MAAM,CAAC,CAQjB;AAED,wBAAsB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,oDAalE;AAED,wBAAsB,eAAe,CACnC,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,sDAcrB;AAED;;;;;;;GAOG;AACH,wBAAsB,6BAA6B,CACjD,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,kBAAkB,EAAE,MAAM,uCAI3B;AAED,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,uCASpB;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,MAAM,+BAQ/D"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../src/tests/commands/helpers.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,iBAAiB,EAGlB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAY/C,eAAO,MAAM,qBAAqB,mBAAmB,CAAC;AACtD,eAAO,MAAM,aAAa,yBAAmC,CAAC;AAC9D,eAAO,MAAM,SAAS,SAAS,CAAC;AAEhC,eAAO,MAAM,SAAS,uEACgD,CAAC;AACvE,eAAO,MAAM,qBAAqB,+CACY,CAAC;AAE/C,eAAO,MAAM,YAAY,WAAW,CAAC;AACrC,eAAO,MAAM,YAAY,WAAW,CAAC;AAErC,eAAO,MAAM,aAAa,eAAe,CAAC;AAC1C,eAAO,MAAM,gBAAgB,gCAAsC,CAAC;AACpE,eAAO,MAAM,uBAAuB,sCAAuD,CAAC;AAC5F,eAAO,MAAM,qBAAqB,qDAA0D,CAAC;AAC7F,eAAO,MAAM,qBAAqB,qDAA0D,CAAC;AAE7F,eAAO,MAAM,wBAAwB,0CAAgD,CAAC;AACtF,eAAO,MAAM,kBAAkB,kDAAmE,CAAC;AACnG,eAAO,MAAM,uBAAuB,wEAAoE,CAAC;AAEzG,eAAO,MAAM,wBAAwB,SAAU,CAAC;AAEhD;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,iBAKzE;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,OAAO,EACd,YAAY,EAAE,MAAM,EACpB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,MAAM,CAAC,CAUjB;AAED;;GAEG;AACH,wBAAsB,WAAW,CAC/B,KAAK,EAAE,OAAO,EACd,KAAK,EAAE,MAAM,EACb,cAAc,EAAE,MAAM,EACtB,kBAAkB,EAAE,MAAM,uCAI3B;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,MAAM,EAAE;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,iBAAiB,CAAC;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,GAAG,OAAO,CAAC,MAAM,CAAC,CAmBlB;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,MAAM,EACb,aAAa,EAAE,MAAM,EACrB,GAAG,EAAE,MAAM,mCAeZ;AAED,wBAAsB,WAAW,CAC/B,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,MAAM,CAAC,CAQjB;AAED,wBAAsB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,oDAalE;AAED,wBAAsB,eAAe,CACnC,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,sDAcrB;AAED;;;;;;;GAOG;AACH,wBAAsB,6BAA6B,CACjD,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,kBAAkB,EAAE,MAAM,uCAI3B;AAED,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,uCASpB;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,MAAM,+BAQ/D"}
@@ -5,9 +5,22 @@ import { getContext } from '../../context/context.js';
5
5
  import { readYamlOrJson, writeYamlOrJson } from '../../utils/files.js';
6
6
  import { hyperlaneCoreDeploy } from './core.js';
7
7
  import { hyperlaneWarpApply, hyperlaneWarpSendRelay, readWarpConfig, } from './warp.js';
8
- export const TEST_CONFIGS_PATH = './test-configs';
9
- export const REGISTRY_PATH = `${TEST_CONFIGS_PATH}/anvil`;
8
+ export const E2E_TEST_CONFIGS_PATH = './test-configs';
9
+ export const REGISTRY_PATH = `${E2E_TEST_CONFIGS_PATH}/anvil`;
10
+ export const TEMP_PATH = '/tmp'; // /temp gets removed at the end of all-test.sh
10
11
  export const ANVIL_KEY = '0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80';
12
+ export const E2E_TEST_BURN_ADDRESS = '0x0000000000000000000000000000000000000001';
13
+ export const CHAIN_NAME_2 = 'anvil2';
14
+ export const CHAIN_NAME_3 = 'anvil3';
15
+ export const EXAMPLES_PATH = './examples';
16
+ export const CORE_CONFIG_PATH = `${EXAMPLES_PATH}/core-config.yaml`;
17
+ export const CORE_READ_CONFIG_PATH_2 = `${TEMP_PATH}/${CHAIN_NAME_2}/core-config-read.yaml`;
18
+ export const CHAIN_2_METADATA_PATH = `${REGISTRY_PATH}/chains/${CHAIN_NAME_2}/metadata.yaml`;
19
+ export const CHAIN_3_METADATA_PATH = `${REGISTRY_PATH}/chains/${CHAIN_NAME_3}/metadata.yaml`;
20
+ export const WARP_CONFIG_PATH_EXAMPLE = `${EXAMPLES_PATH}/warp-route-deployment.yaml`;
21
+ export const WARP_CONFIG_PATH_2 = `${TEMP_PATH}/${CHAIN_NAME_2}/warp-route-deployment-anvil2.yaml`;
22
+ export const WARP_CORE_CONFIG_PATH_2 = `${REGISTRY_PATH}/deployments/warp_routes/ETH/anvil2-config.yaml`;
23
+ export const DEFAULT_E2E_TEST_TIMEOUT = 100000; // Long timeout since these tests can take a while
11
24
  /**
12
25
  * Retrieves the deployed Warp address from the Warp core config.
13
26
  */
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../src/tests/commands/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../src/tests/commands/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,IAAI,CAAC;AAEvB,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAE/E,OAAO,EAGL,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACtB,cAAc,GACf,MAAM,WAAW,CAAC;AAEnB,MAAM,CAAC,MAAM,qBAAqB,GAAG,gBAAgB,CAAC;AACtD,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,qBAAqB,QAAQ,CAAC;AAC9D,MAAM,CAAC,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,+CAA+C;AAEhF,MAAM,CAAC,MAAM,SAAS,GACpB,oEAAoE,CAAC;AACvE,MAAM,CAAC,MAAM,qBAAqB,GAChC,4CAA4C,CAAC;AAE/C,MAAM,CAAC,MAAM,YAAY,GAAG,QAAQ,CAAC;AACrC,MAAM,CAAC,MAAM,YAAY,GAAG,QAAQ,CAAC;AAErC,MAAM,CAAC,MAAM,aAAa,GAAG,YAAY,CAAC;AAC1C,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,aAAa,mBAAmB,CAAC;AACpE,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAG,SAAS,IAAI,YAAY,wBAAwB,CAAC;AAC5F,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,aAAa,WAAW,YAAY,gBAAgB,CAAC;AAC7F,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,aAAa,WAAW,YAAY,gBAAgB,CAAC;AAE7F,MAAM,CAAC,MAAM,wBAAwB,GAAG,GAAG,aAAa,6BAA6B,CAAC;AACtF,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,SAAS,IAAI,YAAY,oCAAoC,CAAC;AACnG,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAG,aAAa,iDAAiD,CAAC;AAEzG,MAAM,CAAC,MAAM,wBAAwB,GAAG,MAAO,CAAC,CAAC,kDAAkD;AAEnG;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,KAAa,EAAE,YAAoB;IACxE,MAAM,cAAc,GAAmB,cAAc,CAAC,YAAY,CAAC,CAAC;IACpE,oBAAoB,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IAC3C,OAAO,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,KAAK,CAAE;SAC7D,cAAc,CAAC;AACpB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,KAAa,EACb,KAAc,EACd,YAAoB,EACpB,cAAsB;IAEtB,MAAM,gBAAgB,GAAG,MAAM,cAAc,CAC3C,KAAK,EACL,YAAY,EACZ,cAAc,CACf,CAAC;IACF,gBAAgB,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC;IACtC,MAAM,eAAe,CAAC,cAAc,EAAE,gBAAgB,CAAC,CAAC;IAExD,OAAO,cAAc,CAAC;AACxB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,KAAc,EACd,KAAa,EACb,cAAsB,EACtB,kBAA0B;IAE1B,MAAM,qBAAqB,CAAC,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAAE,cAAc,CAAC,CAAC;IAC9E,OAAO,kBAAkB,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;AAChE,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,MAOtC;IACC,MAAM,EACJ,KAAK,EACL,aAAa,EACb,cAAc,EACd,YAAY,EACZ,cAAc,EACd,WAAW,GACZ,GAAG,MAAM,CAAC;IACX,MAAM,gBAAgB,GAAG,MAAM,cAAc,CAC3C,KAAK,EACL,YAAY,EACZ,cAAc,CACf,CAAC;IACF,gBAAgB,CAAC,aAAa,CAAC,GAAG,cAAc,CAAC;IACjD,eAAe,CAAC,cAAc,EAAE,gBAAgB,CAAC,CAAC;IAClD,MAAM,kBAAkB,CAAC,cAAc,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC;IAEpE,OAAO,cAAc,CAAC;AACxB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,KAAa,EACb,aAAqB,EACrB,GAAW;IAEX,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,UAAU,CAAC;QACpC,WAAW,EAAE,aAAa;QAC1B,mBAAmB,EAAE,EAAE;QACvB,GAAG;KACJ,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,CAAC,MAAM,QAAQ,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAmB,CAAC;IAE9E,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,mBAAmB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;QAChD,OAAO,uBAAuB,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,CAAC,CAAC;IAC5D,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,SAAiB,EACjB,GAAW;IAEX,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,UAAU,CAAC;QACpC,WAAW,EAAE,aAAa;QAC1B,mBAAmB,EAAE,EAAE;QACvB,GAAG;KACJ,CAAC,CAAC;IACH,MAAM,aAAa,GAAG,MAAM,QAAQ,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;IACjE,OAAO,MAAM,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,UAAkB,EAAE,KAAa;IACjE,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,UAAU,CAAC;QACzC,WAAW,EAAE,aAAa;QAC1B,mBAAmB,EAAE,EAAE;QACvB,GAAG,EAAE,UAAU;KAChB,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,MAAM,IAAI,kBAAkB,CACxC,aAAa,CAAC,SAAS,CAAC,KAAK,CAAC,CAC/B,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,uBAAuB,EAAE,EAAE,CAAC,CAAC;IACxD,MAAM,KAAK,CAAC,QAAQ,EAAE,CAAC;IAEvB,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,UAAkB,EAClB,KAAa,EACb,YAAoB;IAEpB,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,UAAU,CAAC;QACzC,WAAW,EAAE,aAAa;QAC1B,mBAAmB,EAAE,EAAE;QACvB,GAAG,EAAE,UAAU;KAChB,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,MAAM,IAAI,oBAAoB,CAC1C,aAAa,CAAC,SAAS,CAAC,KAAK,CAAC,CAC/B,CAAC,MAAM,CAAC,YAAY,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACzC,MAAM,KAAK,CAAC,QAAQ,EAAE,CAAC;IAEvB,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,6BAA6B,CACjD,MAAc,EACd,MAAc,EACd,kBAA0B;IAE1B,MAAM,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,kBAAkB,CAAC,CAAC;IACjE,OAAO,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,kBAAkB,CAAC,CAAC;AACpE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,MAAc,EACd,WAAmB;IAEnB,OAAO,CAAC,CAAA;qBACW,aAAa;mBACf,MAAM;wBACD,WAAW;gBACnB,SAAS;;cAEX,CAAC;AACf,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,MAAgB,EAAE,IAAa;IAC9D,OAAO,CAAC,CAAA;qBACW,aAAa;mBACf,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;iBAClB,IAAI,IAAI,EAAE;gBACX,SAAS;;cAEX,CAAC;AACf,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=core-apply.e2e-test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core-apply.e2e-test.d.ts","sourceRoot":"","sources":["../../../src/tests/core-apply.e2e-test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,155 @@
1
+ import { expect } from 'chai';
2
+ import { Wallet, ethers } from 'ethers';
3
+ import { ProxyAdmin__factory } from '@hyperlane-xyz/core';
4
+ import { randomAddress, } from '@hyperlane-xyz/sdk';
5
+ import { addressToBytes32 } from '@hyperlane-xyz/utils';
6
+ import { readYamlOrJson, writeYamlOrJson } from '../utils/files.js';
7
+ import { hyperlaneCoreApply, hyperlaneCoreDeploy, readCoreConfig, } from './commands/core.js';
8
+ import { ANVIL_KEY, CHAIN_2_METADATA_PATH, CHAIN_3_METADATA_PATH, CHAIN_NAME_2, CHAIN_NAME_3, CORE_CONFIG_PATH, CORE_READ_CONFIG_PATH_2, DEFAULT_E2E_TEST_TIMEOUT, TEMP_PATH, } from './commands/helpers.js';
9
+ const CORE_READ_CHAIN_2_CONFIG_PATH = `${TEMP_PATH}/${CHAIN_NAME_2}/core-config-read.yaml`;
10
+ const CORE_READ_CHAIN_3_CONFIG_PATH = `${TEMP_PATH}/${CHAIN_NAME_3}/core-config-read.yaml`;
11
+ describe('hyperlane core apply e2e tests', async function () {
12
+ this.timeout(2 * DEFAULT_E2E_TEST_TIMEOUT);
13
+ let signer;
14
+ let initialOwnerAddress;
15
+ let chain2DomainId;
16
+ let chain3DomainId;
17
+ before(async () => {
18
+ const chain2Metadata = readYamlOrJson(CHAIN_2_METADATA_PATH);
19
+ const chain3Metadata = readYamlOrJson(CHAIN_3_METADATA_PATH);
20
+ const provider = new ethers.providers.JsonRpcProvider(chain2Metadata.rpcUrls[0].http);
21
+ chain2DomainId = chain2Metadata.domainId;
22
+ chain3DomainId = chain3Metadata.domainId;
23
+ const wallet = new Wallet(ANVIL_KEY);
24
+ signer = wallet.connect(provider);
25
+ initialOwnerAddress = await signer.getAddress();
26
+ });
27
+ it('should update the mailbox owner', async () => {
28
+ await hyperlaneCoreDeploy(CHAIN_NAME_2, CORE_CONFIG_PATH);
29
+ const coreConfig = await readCoreConfig(CHAIN_NAME_2, CORE_READ_CONFIG_PATH_2);
30
+ expect(coreConfig.owner).to.equal(initialOwnerAddress);
31
+ const newOwner = randomAddress().toLowerCase();
32
+ coreConfig.owner = newOwner;
33
+ writeYamlOrJson(CORE_READ_CONFIG_PATH_2, coreConfig);
34
+ await hyperlaneCoreApply(CHAIN_NAME_2, CORE_READ_CONFIG_PATH_2);
35
+ // Verify that the owner has been set correctly without modifying any other owner values
36
+ const updatedConfig = await readCoreConfig(CHAIN_NAME_2, CORE_READ_CONFIG_PATH_2);
37
+ expect(updatedConfig.owner.toLowerCase()).to.equal(newOwner);
38
+ expect(updatedConfig.proxyAdmin?.owner).to.equal(initialOwnerAddress);
39
+ // Assuming that the ProtocolFeeHook is used for deployment
40
+ expect(updatedConfig.requiredHook.owner).to.equal(initialOwnerAddress);
41
+ });
42
+ it('should update the ProxyAdmin to a new one for the mailbox', async () => {
43
+ await hyperlaneCoreDeploy(CHAIN_NAME_2, CORE_CONFIG_PATH);
44
+ const coreConfig = await readCoreConfig(CHAIN_NAME_2, CORE_READ_CONFIG_PATH_2);
45
+ expect(coreConfig.owner).to.equal(initialOwnerAddress);
46
+ const proxyFactory = new ProxyAdmin__factory().connect(signer);
47
+ const deployTx = await proxyFactory.deploy();
48
+ const newProxyAdmin = await deployTx.deployed();
49
+ coreConfig.proxyAdmin.address = newProxyAdmin.address;
50
+ writeYamlOrJson(CORE_READ_CONFIG_PATH_2, coreConfig);
51
+ await hyperlaneCoreApply(CHAIN_NAME_2, CORE_READ_CONFIG_PATH_2);
52
+ // Verify that the owner has been set correctly without modifying any other owner values
53
+ const updatedConfig = await readCoreConfig(CHAIN_NAME_2, CORE_READ_CONFIG_PATH_2);
54
+ expect(updatedConfig.owner).to.equal(initialOwnerAddress);
55
+ expect(updatedConfig.proxyAdmin?.address).to.equal(newProxyAdmin.address);
56
+ // Assuming that the ProtocolFeeHook is used for deployment
57
+ expect(updatedConfig.requiredHook.owner).to.equal(initialOwnerAddress);
58
+ });
59
+ it('should update the ProxyAdmin owner for the mailbox', async () => {
60
+ await hyperlaneCoreDeploy(CHAIN_NAME_2, CORE_CONFIG_PATH);
61
+ const coreConfig = await readCoreConfig(CHAIN_NAME_2, CORE_READ_CONFIG_PATH_2);
62
+ expect(coreConfig.owner).to.equal(initialOwnerAddress);
63
+ const newOwner = randomAddress().toLowerCase();
64
+ coreConfig.proxyAdmin.owner = newOwner;
65
+ writeYamlOrJson(CORE_READ_CONFIG_PATH_2, coreConfig);
66
+ await hyperlaneCoreApply(CHAIN_NAME_2, CORE_READ_CONFIG_PATH_2);
67
+ // Verify that the owner has been set correctly without modifying any other owner values
68
+ const updatedConfig = await readCoreConfig(CHAIN_NAME_2, CORE_READ_CONFIG_PATH_2);
69
+ expect(updatedConfig.owner).to.equal(initialOwnerAddress);
70
+ expect(updatedConfig.proxyAdmin?.owner.toLowerCase()).to.equal(newOwner);
71
+ // Assuming that the ProtocolFeeHook is used for deployment
72
+ expect(updatedConfig.requiredHook.owner).to.equal(initialOwnerAddress);
73
+ });
74
+ it('should enroll a remote ICA Router and update the config on all involved chains', async () => {
75
+ await Promise.all([
76
+ hyperlaneCoreDeploy(CHAIN_NAME_2, CORE_CONFIG_PATH),
77
+ hyperlaneCoreDeploy(CHAIN_NAME_3, CORE_CONFIG_PATH),
78
+ ]);
79
+ const [coreConfigChain2, coreConfigChain3] = await Promise.all([
80
+ readCoreConfig(CHAIN_NAME_2, CORE_READ_CHAIN_2_CONFIG_PATH),
81
+ readCoreConfig(CHAIN_NAME_3, CORE_READ_CHAIN_3_CONFIG_PATH),
82
+ ]);
83
+ expect(coreConfigChain2.owner).to.equal(initialOwnerAddress);
84
+ expect(coreConfigChain3.owner).to.equal(initialOwnerAddress);
85
+ expect(coreConfigChain2.interchainAccountRouter).not.to.be.undefined;
86
+ expect(coreConfigChain3.interchainAccountRouter).not.to.be.undefined;
87
+ const coreConfigChain2IcaConfig = coreConfigChain2.interchainAccountRouter;
88
+ const coreConfigChain3IcaConfig = coreConfigChain3.interchainAccountRouter;
89
+ // Add the remote ica on chain anvil3
90
+ coreConfigChain2IcaConfig.remoteIcaRouters = {
91
+ [chain3DomainId]: {
92
+ address: coreConfigChain3IcaConfig.address,
93
+ },
94
+ };
95
+ const expectedChain2RemoteRoutersConfig = {
96
+ [chain3DomainId]: {
97
+ address: addressToBytes32(coreConfigChain3IcaConfig.address),
98
+ },
99
+ };
100
+ const expectedChain3RemoteRoutersConfig = {
101
+ [chain2DomainId]: {
102
+ address: addressToBytes32(coreConfigChain2IcaConfig.address),
103
+ },
104
+ };
105
+ writeYamlOrJson(CORE_READ_CHAIN_2_CONFIG_PATH, coreConfigChain2);
106
+ await hyperlaneCoreApply(CHAIN_NAME_2, CORE_READ_CHAIN_2_CONFIG_PATH);
107
+ const [updatedChain2Config, updatedChain3Config] = await Promise.all([
108
+ readCoreConfig(CHAIN_NAME_2, CORE_READ_CHAIN_2_CONFIG_PATH),
109
+ readCoreConfig(CHAIN_NAME_3, CORE_READ_CHAIN_3_CONFIG_PATH),
110
+ ]);
111
+ expect(updatedChain2Config.interchainAccountRouter?.remoteIcaRouters).to.deep.equal(expectedChain2RemoteRoutersConfig);
112
+ expect(updatedChain3Config.interchainAccountRouter?.remoteIcaRouters).to.deep.equal(expectedChain3RemoteRoutersConfig);
113
+ });
114
+ it('should unenroll a remote ICA Router and update the config on all involved chains', async () => {
115
+ await Promise.all([
116
+ hyperlaneCoreDeploy(CHAIN_NAME_2, CORE_CONFIG_PATH),
117
+ hyperlaneCoreDeploy(CHAIN_NAME_3, CORE_CONFIG_PATH),
118
+ ]);
119
+ const [coreConfigChain2, coreConfigChain3] = await Promise.all([
120
+ readCoreConfig(CHAIN_NAME_2, CORE_READ_CHAIN_2_CONFIG_PATH),
121
+ readCoreConfig(CHAIN_NAME_3, CORE_READ_CHAIN_3_CONFIG_PATH),
122
+ ]);
123
+ expect(coreConfigChain2.interchainAccountRouter).not.to.be.undefined;
124
+ expect(coreConfigChain3.interchainAccountRouter).not.to.be.undefined;
125
+ const coreConfigChain2IcaConfig = coreConfigChain2.interchainAccountRouter;
126
+ const coreConfigChain3IcaConfig = coreConfigChain3.interchainAccountRouter;
127
+ coreConfigChain2IcaConfig.remoteIcaRouters = {
128
+ [chain3DomainId]: {
129
+ address: coreConfigChain3IcaConfig.address,
130
+ },
131
+ };
132
+ const expectedRemoteRoutersConfigAfterEnrollment = {
133
+ [chain3DomainId]: {
134
+ address: addressToBytes32(coreConfigChain3IcaConfig.address),
135
+ },
136
+ };
137
+ writeYamlOrJson(CORE_READ_CHAIN_2_CONFIG_PATH, coreConfigChain2);
138
+ await hyperlaneCoreApply(CHAIN_NAME_2, CORE_READ_CHAIN_2_CONFIG_PATH);
139
+ const updatedChain2ConfigAfterEnrollment = await readCoreConfig(CHAIN_NAME_2, CORE_READ_CHAIN_2_CONFIG_PATH);
140
+ expect(updatedChain2ConfigAfterEnrollment.interchainAccountRouter
141
+ ?.remoteIcaRouters).to.deep.equal(expectedRemoteRoutersConfigAfterEnrollment);
142
+ // Remove all remote ICAs
143
+ updatedChain2ConfigAfterEnrollment.interchainAccountRouter.remoteIcaRouters =
144
+ {};
145
+ writeYamlOrJson(CORE_READ_CHAIN_2_CONFIG_PATH, updatedChain2ConfigAfterEnrollment);
146
+ await hyperlaneCoreApply(CHAIN_NAME_2, CORE_READ_CHAIN_2_CONFIG_PATH);
147
+ const [updatedChain2Config, updatedChain3Config] = await Promise.all([
148
+ readCoreConfig(CHAIN_NAME_2, CORE_READ_CHAIN_2_CONFIG_PATH),
149
+ readCoreConfig(CHAIN_NAME_3, CORE_READ_CHAIN_3_CONFIG_PATH),
150
+ ]);
151
+ expect(updatedChain2Config.interchainAccountRouter?.remoteIcaRouters).to.deep.equal({});
152
+ expect(updatedChain3Config.interchainAccountRouter?.remoteIcaRouters).to.deep.equal({});
153
+ });
154
+ });
155
+ //# sourceMappingURL=core-apply.e2e-test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core-apply.e2e-test.js","sourceRoot":"","sources":["../../../src/tests/core-apply.e2e-test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=core-deploy.e2e-test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core-deploy.e2e-test.d.ts","sourceRoot":"","sources":["../../../src/tests/core-deploy.e2e-test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,55 @@
1
+ import { expect } from 'chai';
2
+ import { Wallet, ethers } from 'ethers';
3
+ import { randomAddress, } from '@hyperlane-xyz/sdk';
4
+ import { readYamlOrJson, writeYamlOrJson } from '../utils/files.js';
5
+ import { hyperlaneCoreDeploy, readCoreConfig } from './commands/core.js';
6
+ import { ANVIL_KEY, CHAIN_2_METADATA_PATH, CHAIN_NAME_2, CORE_CONFIG_PATH, CORE_READ_CONFIG_PATH_2, DEFAULT_E2E_TEST_TIMEOUT, } from './commands/helpers.js';
7
+ describe('hyperlane core deploy e2e tests', async function () {
8
+ this.timeout(DEFAULT_E2E_TEST_TIMEOUT);
9
+ let signer;
10
+ let initialOwnerAddress;
11
+ before(async () => {
12
+ const chainMetadata = readYamlOrJson(CHAIN_2_METADATA_PATH);
13
+ const provider = new ethers.providers.JsonRpcProvider(chainMetadata.rpcUrls[0].http);
14
+ const wallet = new Wallet(ANVIL_KEY);
15
+ signer = wallet.connect(provider);
16
+ initialOwnerAddress = await signer.getAddress();
17
+ });
18
+ it('should create a core deployment with the signer as the mailbox owner', async () => {
19
+ await hyperlaneCoreDeploy(CHAIN_NAME_2, CORE_CONFIG_PATH);
20
+ const coreConfig = await readCoreConfig(CHAIN_NAME_2, CORE_READ_CONFIG_PATH_2);
21
+ expect(coreConfig.owner).to.equal(initialOwnerAddress);
22
+ expect(coreConfig.proxyAdmin?.owner).to.equal(initialOwnerAddress);
23
+ // Assuming that the ProtocolFeeHook is used for deployment
24
+ expect(coreConfig.requiredHook.owner).to.equal(initialOwnerAddress);
25
+ });
26
+ it('should create a core deployment with the mailbox owner set to the address in the config', async () => {
27
+ const coreConfig = await readYamlOrJson(CORE_CONFIG_PATH);
28
+ const newOwner = randomAddress().toLowerCase();
29
+ coreConfig.owner = newOwner;
30
+ writeYamlOrJson(CORE_READ_CONFIG_PATH_2, coreConfig);
31
+ // Deploy the core contracts with the updated mailbox owner
32
+ await hyperlaneCoreDeploy(CHAIN_NAME_2, CORE_READ_CONFIG_PATH_2);
33
+ // Verify that the owner has been set correctly without modifying any other owner values
34
+ const updatedConfig = await readCoreConfig(CHAIN_NAME_2, CORE_READ_CONFIG_PATH_2);
35
+ expect(updatedConfig.owner.toLowerCase()).to.equal(newOwner);
36
+ expect(updatedConfig.proxyAdmin?.owner).to.equal(initialOwnerAddress);
37
+ // Assuming that the ProtocolFeeHook is used for deployment
38
+ expect(updatedConfig.requiredHook.owner).to.equal(initialOwnerAddress);
39
+ });
40
+ it('should create a core deployment with ProxyAdmin owner of the mailbox set to the address in the config', async () => {
41
+ const coreConfig = await readYamlOrJson(CORE_CONFIG_PATH);
42
+ const newOwner = randomAddress().toLowerCase();
43
+ coreConfig.proxyAdmin = { owner: newOwner };
44
+ writeYamlOrJson(CORE_READ_CONFIG_PATH_2, coreConfig);
45
+ // Deploy the core contracts with the updated mailbox owner
46
+ await hyperlaneCoreDeploy(CHAIN_NAME_2, CORE_READ_CONFIG_PATH_2);
47
+ // Verify that the owner has been set correctly without modifying any other owner values
48
+ const updatedConfig = await readCoreConfig(CHAIN_NAME_2, CORE_READ_CONFIG_PATH_2);
49
+ expect(updatedConfig.owner).to.equal(initialOwnerAddress);
50
+ expect(updatedConfig.proxyAdmin?.owner.toLowerCase()).to.equal(newOwner);
51
+ // Assuming that the ProtocolFeeHook is used for deployment
52
+ expect(updatedConfig.requiredHook.owner).to.equal(initialOwnerAddress);
53
+ });
54
+ });
55
+ //# sourceMappingURL=core-deploy.e2e-test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core-deploy.e2e-test.js","sourceRoot":"","sources":["../../../src/tests/core-deploy.e2e-test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=core-read.e2e-test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core-read.e2e-test.d.ts","sourceRoot":"","sources":["../../../src/tests/core-read.e2e-test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,29 @@
1
+ import { expect } from 'chai';
2
+ import { Wallet, ethers } from 'ethers';
3
+ import { readYamlOrJson } from '../utils/files.js';
4
+ import { hyperlaneCoreDeploy, readCoreConfig } from './commands/core.js';
5
+ import { ANVIL_KEY, CHAIN_2_METADATA_PATH, CHAIN_NAME_2, CORE_CONFIG_PATH, CORE_READ_CONFIG_PATH_2, DEFAULT_E2E_TEST_TIMEOUT, } from './commands/helpers.js';
6
+ describe('hyperlane core read e2e tests', async function () {
7
+ this.timeout(DEFAULT_E2E_TEST_TIMEOUT);
8
+ let signer;
9
+ let initialOwnerAddress;
10
+ before(async () => {
11
+ const chainMetadata = readYamlOrJson(CHAIN_2_METADATA_PATH);
12
+ const provider = new ethers.providers.JsonRpcProvider(chainMetadata.rpcUrls[0].http);
13
+ const wallet = new Wallet(ANVIL_KEY);
14
+ signer = wallet.connect(provider);
15
+ initialOwnerAddress = await signer.getAddress();
16
+ });
17
+ it('should read a core deployment', async () => {
18
+ await hyperlaneCoreDeploy(CHAIN_NAME_2, CORE_CONFIG_PATH);
19
+ const coreConfig = await readCoreConfig(CHAIN_NAME_2, CORE_READ_CONFIG_PATH_2);
20
+ expect(coreConfig.owner).to.equal(initialOwnerAddress);
21
+ expect(coreConfig.proxyAdmin?.owner).to.equal(initialOwnerAddress);
22
+ expect(coreConfig.requiredHook).not.to.be.undefined;
23
+ expect(coreConfig.defaultHook).not.to.be.undefined;
24
+ expect(coreConfig.defaultIsm).not.to.be.undefined;
25
+ // Assuming that the ProtocolFeeHook is used for deployment
26
+ expect(coreConfig.requiredHook.owner).to.equal(initialOwnerAddress);
27
+ });
28
+ });
29
+ //# sourceMappingURL=core-read.e2e-test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core-read.e2e-test.js","sourceRoot":"","sources":["../../../src/tests/core-read.e2e-test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAC9B,OAAO,EAAU,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAShD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,EACL,SAAS,EACT,qBAAqB,EACrB,YAAY,EACZ,gBAAgB,EAChB,uBAAuB,EACvB,wBAAwB,GACzB,MAAM,uBAAuB,CAAC;AAE/B,QAAQ,CAAC,+BAA+B,EAAE,KAAK;IAC7C,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAEvC,IAAI,MAAc,CAAC;IACnB,IAAI,mBAA4B,CAAC;IAEjC,MAAM,CAAC,KAAK,IAAI,EAAE;QAChB,MAAM,aAAa,GAAkB,cAAc,CAAC,qBAAqB,CAAC,CAAC;QAE3E,MAAM,QAAQ,GAAG,IAAI,MAAM,CAAC,SAAS,CAAC,eAAe,CACnD,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAC9B,CAAC;QAEF,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC;QACrC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAElC,mBAAmB,GAAG,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;QAC7C,MAAM,mBAAmB,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;QAE1D,MAAM,UAAU,GAAe,MAAM,cAAc,CACjD,YAAY,EACZ,uBAAuB,CACxB,CAAC;QAEF,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACvD,MAAM,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACnE,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC;QACpD,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC;QACnD,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC;QAClD,2DAA2D;QAC3D,MAAM,CAAE,UAAU,CAAC,YAAsC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CACvE,mBAAmB,CACpB,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,20 +1,17 @@
1
1
  import { TokenType } from '@hyperlane-xyz/sdk';
2
2
  import { writeYamlOrJson } from '../utils/files.js';
3
3
  import { hyperlaneCoreDeploy } from './commands/core.js';
4
- import { REGISTRY_PATH, hyperlaneRelayer, hyperlaneSendMessage, } from './commands/helpers.js';
4
+ import { CHAIN_NAME_2, CHAIN_NAME_3, CORE_CONFIG_PATH, DEFAULT_E2E_TEST_TIMEOUT, REGISTRY_PATH, TEMP_PATH, hyperlaneRelayer, hyperlaneSendMessage, } from './commands/helpers.js';
5
5
  import { hyperlaneWarpDeploy, hyperlaneWarpSendRelay, } from './commands/warp.js';
6
- const CHAIN_NAME_1 = 'anvil2';
7
- const CHAIN_NAME_2 = 'anvil3';
8
6
  const SYMBOL = 'ETH';
9
- const WARP_DEPLOY_OUTPUT = `${REGISTRY_PATH}/deployments/warp_routes/${SYMBOL}/${CHAIN_NAME_1}-${CHAIN_NAME_2}-config.yaml`;
10
- const EXAMPLES_PATH = './examples';
11
- const CORE_CONFIG_PATH = `${EXAMPLES_PATH}/core-config.yaml`;
12
- const TEST_TIMEOUT = 100000; // Long timeout since these tests can take a while
7
+ const WARP_DEPLOY_OUTPUT = `${REGISTRY_PATH}/deployments/warp_routes/${SYMBOL}/${CHAIN_NAME_2}-${CHAIN_NAME_3}-config.yaml`;
13
8
  describe('hyperlane relayer e2e tests', async function () {
14
- this.timeout(TEST_TIMEOUT);
9
+ this.timeout(2 * DEFAULT_E2E_TEST_TIMEOUT);
15
10
  before(async () => {
16
- await hyperlaneCoreDeploy(CHAIN_NAME_1, CORE_CONFIG_PATH);
17
- await hyperlaneCoreDeploy(CHAIN_NAME_2, CORE_CONFIG_PATH);
11
+ await Promise.all([
12
+ hyperlaneCoreDeploy(CHAIN_NAME_2, CORE_CONFIG_PATH),
13
+ hyperlaneCoreDeploy(CHAIN_NAME_3, CORE_CONFIG_PATH),
14
+ ]);
18
15
  const warpConfig = {
19
16
  anvil2: {
20
17
  type: TokenType.native,
@@ -25,21 +22,21 @@ describe('hyperlane relayer e2e tests', async function () {
25
22
  symbol: SYMBOL,
26
23
  },
27
24
  };
28
- const warpConfigPath = './tmp/warp-route-config.yaml';
25
+ const warpConfigPath = `./${TEMP_PATH}/warp-route-config.yaml`;
29
26
  writeYamlOrJson(warpConfigPath, warpConfig);
30
27
  await hyperlaneWarpDeploy(warpConfigPath);
31
28
  });
32
29
  describe('relayer', () => {
33
30
  it('should relay core messages', async () => {
34
- const process = hyperlaneRelayer([CHAIN_NAME_1, CHAIN_NAME_2]);
35
- await hyperlaneSendMessage(CHAIN_NAME_1, CHAIN_NAME_2);
36
- await hyperlaneSendMessage(CHAIN_NAME_2, CHAIN_NAME_1);
31
+ const process = hyperlaneRelayer([CHAIN_NAME_2, CHAIN_NAME_3]);
32
+ await hyperlaneSendMessage(CHAIN_NAME_2, CHAIN_NAME_3);
33
+ await hyperlaneSendMessage(CHAIN_NAME_3, CHAIN_NAME_2);
37
34
  await process.kill('SIGINT');
38
35
  });
39
36
  it('should relay warp messages', async () => {
40
- const process = hyperlaneRelayer([CHAIN_NAME_1, CHAIN_NAME_2], WARP_DEPLOY_OUTPUT);
41
- await hyperlaneWarpSendRelay(CHAIN_NAME_1, CHAIN_NAME_2, WARP_DEPLOY_OUTPUT, false);
42
- await hyperlaneWarpSendRelay(CHAIN_NAME_2, CHAIN_NAME_1, WARP_DEPLOY_OUTPUT, false);
37
+ const process = hyperlaneRelayer([CHAIN_NAME_2, CHAIN_NAME_3], WARP_DEPLOY_OUTPUT);
38
+ await hyperlaneWarpSendRelay(CHAIN_NAME_2, CHAIN_NAME_3, WARP_DEPLOY_OUTPUT, false);
39
+ await hyperlaneWarpSendRelay(CHAIN_NAME_3, CHAIN_NAME_2, WARP_DEPLOY_OUTPUT, false);
43
40
  await process.kill('SIGINT');
44
41
  });
45
42
  });
@@ -1 +1 @@
1
- {"version":3,"file":"relay.e2e-test.js","sourceRoot":"","sources":["../../../src/tests/relay.e2e-test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,YAAY,GAAG,QAAQ,CAAC;AAC9B,MAAM,YAAY,GAAG,QAAQ,CAAC;AAE9B,MAAM,MAAM,GAAG,KAAK,CAAC;AAErB,MAAM,kBAAkB,GAAG,GAAG,aAAa,4BAA4B,MAAM,IAAI,YAAY,IAAI,YAAY,cAAc,CAAC;AAE5H,MAAM,aAAa,GAAG,YAAY,CAAC;AACnC,MAAM,gBAAgB,GAAG,GAAG,aAAa,mBAAmB,CAAC;AAE7D,MAAM,YAAY,GAAG,MAAO,CAAC,CAAC,kDAAkD;AAChF,QAAQ,CAAC,6BAA6B,EAAE,KAAK;IAC3C,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAE3B,MAAM,CAAC,KAAK,IAAI,EAAE;QAChB,MAAM,mBAAmB,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;QAC1D,MAAM,mBAAmB,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;QAE1D,MAAM,UAAU,GAAG;YACjB,MAAM,EAAE;gBACN,IAAI,EAAE,SAAS,CAAC,MAAM;gBACtB,MAAM,EAAE,MAAM;aACf;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,SAAS,CAAC,SAAS;gBACzB,MAAM,EAAE,MAAM;aACf;SACF,CAAC;QAEF,MAAM,cAAc,GAAG,8BAA8B,CAAC;QACtD,eAAe,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;QAC5C,MAAM,mBAAmB,CAAC,cAAc,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;QACvB,EAAE,CAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE;YAC1C,MAAM,OAAO,GAAG,gBAAgB,CAAC,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC;YAE/D,MAAM,oBAAoB,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;YACvD,MAAM,oBAAoB,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;YAEvD,MAAM,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE;YAC1C,MAAM,OAAO,GAAG,gBAAgB,CAC9B,CAAC,YAAY,EAAE,YAAY,CAAC,EAC5B,kBAAkB,CACnB,CAAC;YAEF,MAAM,sBAAsB,CAC1B,YAAY,EACZ,YAAY,EACZ,kBAAkB,EAClB,KAAK,CACN,CAAC;YACF,MAAM,sBAAsB,CAC1B,YAAY,EACZ,YAAY,EACZ,kBAAkB,EAClB,KAAK,CACN,CAAC;YAEF,MAAM,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"relay.e2e-test.js","sourceRoot":"","sources":["../../../src/tests/relay.e2e-test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,wBAAwB,EACxB,aAAa,EACb,SAAS,EACT,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,MAAM,GAAG,KAAK,CAAC;AACrB,MAAM,kBAAkB,GAAG,GAAG,aAAa,4BAA4B,MAAM,IAAI,YAAY,IAAI,YAAY,cAAc,CAAC;AAE5H,QAAQ,CAAC,6BAA6B,EAAE,KAAK;IAC3C,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,wBAAwB,CAAC,CAAC;IAE3C,MAAM,CAAC,KAAK,IAAI,EAAE;QAChB,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,mBAAmB,CAAC,YAAY,EAAE,gBAAgB,CAAC;YACnD,mBAAmB,CAAC,YAAY,EAAE,gBAAgB,CAAC;SACpD,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG;YACjB,MAAM,EAAE;gBACN,IAAI,EAAE,SAAS,CAAC,MAAM;gBACtB,MAAM,EAAE,MAAM;aACf;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,SAAS,CAAC,SAAS;gBACzB,MAAM,EAAE,MAAM;aACf;SACF,CAAC;QAEF,MAAM,cAAc,GAAG,KAAK,SAAS,yBAAyB,CAAC;QAC/D,eAAe,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;QAC5C,MAAM,mBAAmB,CAAC,cAAc,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;QACvB,EAAE,CAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE;YAC1C,MAAM,OAAO,GAAG,gBAAgB,CAAC,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC;YAE/D,MAAM,oBAAoB,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;YACvD,MAAM,oBAAoB,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;YAEvD,MAAM,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE;YAC1C,MAAM,OAAO,GAAG,gBAAgB,CAC9B,CAAC,YAAY,EAAE,YAAY,CAAC,EAC5B,kBAAkB,CACnB,CAAC;YAEF,MAAM,sBAAsB,CAC1B,YAAY,EACZ,YAAY,EACZ,kBAAkB,EAClB,KAAK,CACN,CAAC;YACF,MAAM,sBAAsB,CAC1B,YAAY,EACZ,YAAY,EACZ,kBAAkB,EAClB,KAAK,CACN,CAAC;YAEF,MAAM,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,22 +1,12 @@
1
1
  import { expect } from 'chai';
2
2
  import { Wallet } from 'ethers';
3
- import { TokenType, } from '@hyperlane-xyz/sdk';
3
+ import { HookType, TokenType, normalizeConfig, randomAddress, } from '@hyperlane-xyz/sdk';
4
4
  import { readYamlOrJson, writeYamlOrJson } from '../utils/files.js';
5
- import { ANVIL_KEY, REGISTRY_PATH, deployOrUseExistingCore, extendWarpConfig, getDomainId, updateOwner, } from './commands/helpers.js';
5
+ import { ANVIL_KEY, CHAIN_NAME_2, CHAIN_NAME_3, CORE_CONFIG_PATH, DEFAULT_E2E_TEST_TIMEOUT, E2E_TEST_BURN_ADDRESS, EXAMPLES_PATH, REGISTRY_PATH, TEMP_PATH, WARP_CONFIG_PATH_2, WARP_CONFIG_PATH_EXAMPLE, WARP_CORE_CONFIG_PATH_2, deployOrUseExistingCore, extendWarpConfig, getDomainId, updateOwner, } from './commands/helpers.js';
6
6
  import { hyperlaneWarpApply, hyperlaneWarpDeploy, readWarpConfig, } from './commands/warp.js';
7
- const CHAIN_NAME_2 = 'anvil2';
8
- const CHAIN_NAME_3 = 'anvil3';
9
- const BURN_ADDRESS = '0x0000000000000000000000000000000000000001';
10
- const EXAMPLES_PATH = './examples';
11
- const CORE_CONFIG_PATH = `${EXAMPLES_PATH}/core-config.yaml`;
12
- const WARP_CONFIG_PATH_EXAMPLE = `${EXAMPLES_PATH}/warp-route-deployment.yaml`;
13
- const TEMP_PATH = '/tmp'; // /temp gets removed at the end of all-test.sh
14
- const WARP_CONFIG_PATH_2 = `${TEMP_PATH}/anvil2/warp-route-deployment-anvil2.yaml`;
15
- const WARP_CORE_CONFIG_PATH_2 = `${REGISTRY_PATH}/deployments/warp_routes/ETH/anvil2-config.yaml`;
16
- const TEST_TIMEOUT = 100000; // Long timeout since these tests can take a while
17
- describe('WarpApply e2e tests', async function () {
7
+ describe('hyperlane warp apply e2e tests', async function () {
8
+ this.timeout(2 * DEFAULT_E2E_TEST_TIMEOUT);
18
9
  let chain2Addresses = {};
19
- this.timeout(TEST_TIMEOUT);
20
10
  before(async function () {
21
11
  await deployOrUseExistingCore(CHAIN_NAME_2, CORE_CONFIG_PATH, ANVIL_KEY);
22
12
  chain2Addresses = await deployOrUseExistingCore(CHAIN_NAME_3, CORE_CONFIG_PATH, ANVIL_KEY);
@@ -30,16 +20,38 @@ describe('WarpApply e2e tests', async function () {
30
20
  });
31
21
  it('should burn owner address', async function () {
32
22
  const warpConfigPath = `${TEMP_PATH}/warp-route-deployment-2.yaml`;
33
- await updateOwner(BURN_ADDRESS, CHAIN_NAME_2, warpConfigPath, WARP_CORE_CONFIG_PATH_2);
23
+ await updateOwner(E2E_TEST_BURN_ADDRESS, CHAIN_NAME_2, warpConfigPath, WARP_CORE_CONFIG_PATH_2);
34
24
  const updatedWarpDeployConfig = await readWarpConfig(CHAIN_NAME_2, WARP_CORE_CONFIG_PATH_2, warpConfigPath);
35
- expect(updatedWarpDeployConfig.anvil2.owner).to.equal(BURN_ADDRESS);
25
+ expect(updatedWarpDeployConfig.anvil2.owner).to.equal(E2E_TEST_BURN_ADDRESS);
36
26
  });
37
27
  it('should not update the same owner', async () => {
38
28
  const warpConfigPath = `${TEMP_PATH}/warp-route-deployment-2.yaml`;
39
- await updateOwner(BURN_ADDRESS, CHAIN_NAME_2, warpConfigPath, WARP_CORE_CONFIG_PATH_2);
40
- const { stdout } = await updateOwner(BURN_ADDRESS, CHAIN_NAME_2, warpConfigPath, WARP_CORE_CONFIG_PATH_2);
29
+ await updateOwner(E2E_TEST_BURN_ADDRESS, CHAIN_NAME_2, warpConfigPath, WARP_CORE_CONFIG_PATH_2);
30
+ const { stdout } = await updateOwner(E2E_TEST_BURN_ADDRESS, CHAIN_NAME_2, warpConfigPath, WARP_CORE_CONFIG_PATH_2);
41
31
  expect(stdout).to.include('Warp config is the same as target. No updates needed.');
42
32
  });
33
+ it('should update hook configuration', async () => {
34
+ const warpDeployPath = `${TEMP_PATH}/warp-route-deployment-2.yaml`;
35
+ // First read the existing config
36
+ const warpDeployConfig = await readWarpConfig(CHAIN_NAME_2, WARP_CORE_CONFIG_PATH_2, warpDeployPath);
37
+ // Update with a new hook config
38
+ const owner = randomAddress();
39
+ warpDeployConfig[CHAIN_NAME_2].hook = {
40
+ type: HookType.PROTOCOL_FEE,
41
+ beneficiary: owner,
42
+ maxProtocolFee: '1000000',
43
+ protocolFee: '100000',
44
+ owner,
45
+ };
46
+ // Write the updated config
47
+ await writeYamlOrJson(warpDeployPath, warpDeployConfig);
48
+ // Apply the changes
49
+ await hyperlaneWarpApply(warpDeployPath, WARP_CORE_CONFIG_PATH_2);
50
+ // Read back the config to verify changes
51
+ const updatedConfig = await readWarpConfig(CHAIN_NAME_2, WARP_CORE_CONFIG_PATH_2, warpDeployPath);
52
+ // Verify the hook was updated with all properties
53
+ expect(normalizeConfig(updatedConfig[CHAIN_NAME_2].hook)).to.deep.equal(normalizeConfig(warpDeployConfig[CHAIN_NAME_2].hook));
54
+ });
43
55
  it('should extend an existing warp route', async () => {
44
56
  // Read existing config into a file
45
57
  const warpConfigPath = `${TEMP_PATH}/warp-route-deployment-2.yaml`;
@@ -111,7 +123,7 @@ describe('WarpApply e2e tests', async function () {
111
123
  const warpDeployPath = `${TEMP_PATH}/warp-route-deployment-2.yaml`;
112
124
  // Burn anvil2 owner in config
113
125
  const warpDeployConfig = await readWarpConfig(CHAIN_NAME_2, WARP_CORE_CONFIG_PATH_2, warpDeployPath);
114
- warpDeployConfig[CHAIN_NAME_2].owner = BURN_ADDRESS;
126
+ warpDeployConfig[CHAIN_NAME_2].owner = E2E_TEST_BURN_ADDRESS;
115
127
  // Extend with new config
116
128
  const randomOwner = new Wallet(ANVIL_KEY).address;
117
129
  const extendedConfig = {
@@ -130,7 +142,7 @@ describe('WarpApply e2e tests', async function () {
130
142
  const updatedWarpDeployConfig_2 = await readWarpConfig(CHAIN_NAME_2, COMBINED_WARP_CORE_CONFIG_PATH, warpDeployPath);
131
143
  const updatedWarpDeployConfig_3 = await readWarpConfig(CHAIN_NAME_3, COMBINED_WARP_CORE_CONFIG_PATH, warpDeployPath);
132
144
  // Check that anvil2 owner is burned
133
- expect(updatedWarpDeployConfig_2.anvil2.owner).to.equal(BURN_ADDRESS);
145
+ expect(updatedWarpDeployConfig_2.anvil2.owner).to.equal(E2E_TEST_BURN_ADDRESS);
134
146
  // Also, anvil3 owner is not burned
135
147
  expect(updatedWarpDeployConfig_3.anvil3.owner).to.equal(randomOwner);
136
148
  // Check that both chains enrolled
@@ -1 +1 @@
1
- {"version":3,"file":"warp-apply.e2e-test.js","sourceRoot":"","sources":["../../../src/tests/warp-apply.e2e-test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"warp-apply.e2e-test.js","sourceRoot":"","sources":["../../../src/tests/warp-apply.e2e-test.ts"],"names":[],"mappings":"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"}