@inco/lightning 0.8.0-devnet-13 → 0.8.0-devnet-20

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 (52) hide show
  1. package/manifest.yaml +66 -0
  2. package/package.json +8 -8
  3. package/src/IncoLightning.sol +5 -0
  4. package/src/Lib.alphanet.sol +31 -35
  5. package/src/Lib.demonet.sol +31 -35
  6. package/src/Lib.devnet.sol +31 -35
  7. package/src/Lib.sol +31 -35
  8. package/src/Lib.template.sol +54 -35
  9. package/src/Lib.testnet.sol +31 -35
  10. package/src/Types.sol +18 -0
  11. package/src/interfaces/IIncoLightning.sol +2 -0
  12. package/src/libs/incoLightning_alphanet_v0_297966649.sol +31 -35
  13. package/src/libs/incoLightning_alphanet_v1_725458969.sol +31 -35
  14. package/src/libs/incoLightning_alphanet_v2_976644394.sol +31 -35
  15. package/src/libs/incoLightning_demonet_v0_863421733.sol +31 -35
  16. package/src/libs/incoLightning_demonet_v2_467437523.sol +31 -35
  17. package/src/libs/incoLightning_devnet_v0_340846814.sol +31 -35
  18. package/src/libs/incoLightning_devnet_v1_904635675.sol +31 -35
  19. package/src/libs/incoLightning_devnet_v2_295237520.sol +31 -35
  20. package/src/libs/incoLightning_devnet_v3_976859633.sol +31 -35
  21. package/src/libs/incoLightning_devnet_v4_409204766.sol +31 -35
  22. package/src/libs/incoLightning_devnet_v5_203964628.sol +31 -35
  23. package/src/libs/incoLightning_devnet_v6_281949651.sol +31 -35
  24. package/src/libs/incoLightning_devnet_v7_24560427.sol +1197 -0
  25. package/src/libs/incoLightning_devnet_v8_985328058.sol +1197 -0
  26. package/src/libs/incoLightning_devnet_v9_269218568.sol +1197 -0
  27. package/src/libs/incoLightning_testnet_v0_183408998.sol +31 -35
  28. package/src/libs/incoLightning_testnet_v2_889158349.sol +31 -35
  29. package/src/lightning-parts/AccessControl/AdvancedAccessControl.sol +4 -3
  30. package/src/lightning-parts/AccessControl/BaseAccessControlList.sol +0 -16
  31. package/src/lightning-parts/AccessControl/interfaces/IAdvancedAccessControl.sol +1 -1
  32. package/src/lightning-parts/AccessControl/interfaces/IBaseAccessControlList.sol +0 -1
  33. package/src/lightning-parts/AccessControl/test/TestAdvancedAccessControl.t.sol +3 -1
  34. package/src/lightning-parts/AccessControl/test/TestBaseAccessControl.t.sol +0 -43
  35. package/src/lightning-parts/DecryptionAttester.sol +2 -2
  36. package/src/lightning-parts/DecryptionAttester.types.sol +3 -3
  37. package/src/lightning-parts/EList.sol +105 -25
  38. package/src/lightning-parts/EncryptedOperations.sol +18 -8
  39. package/src/lightning-parts/Fee.sol +29 -0
  40. package/src/lightning-parts/interfaces/IDecryptionAttester.sol +2 -2
  41. package/src/lightning-parts/interfaces/IEList.sol +11 -8
  42. package/src/lightning-parts/interfaces/IEncryptedInput.sol +2 -2
  43. package/src/lightning-parts/test/Elist.t.sol +160 -9
  44. package/src/lightning-parts/test/TestDecryptionAttestationInSynchronousFlow.t.sol +41 -13
  45. package/src/periphery/IncoUtils.sol +1 -1
  46. package/src/test/EListTester.sol +31 -13
  47. package/src/test/FakeIncoInfra/FakeComputeServer.sol +2 -2
  48. package/src/test/TestDeploy.t.sol +45 -1
  49. package/src/test/TestFakeInfra.t.sol +32 -6
  50. package/src/test/TestLib.t.sol +840 -19
  51. package/src/test/TestReceive.t.sol +42 -0
  52. package/src/version/IncoLightningConfig.sol +1 -1
@@ -0,0 +1,42 @@
1
+ // SPDX-License-Identifier: No License
2
+ pragma solidity ^0.8;
3
+
4
+ import {inco} from "../Lib.sol";
5
+ import {IncoTest} from "./IncoTest.sol";
6
+ import {IIncoLightning} from "../interfaces/IIncoLightning.sol";
7
+
8
+ contract TestReceive is IncoTest {
9
+
10
+ function setUp() public override {
11
+ super.setUp();
12
+ }
13
+
14
+ function testReceive_Reverts() public {
15
+ uint256 sendAmount = 1 ether;
16
+ vm.deal(alice, sendAmount);
17
+ vm.prank(alice);
18
+ (bool success, bytes memory returnData) = address(inco).call{value: sendAmount}("");
19
+
20
+ assertFalse(success, "ETH transfer should revert");
21
+ bytes4 expectedSelector = IIncoLightning.EthInboundTransferUnsupported.selector;
22
+ bytes4 actualSelector;
23
+ assembly {
24
+ actualSelector := mload(add(returnData, 32))
25
+ }
26
+ assertEq(actualSelector, expectedSelector, "Should revert with EthInboundTransferUnsupported");
27
+ }
28
+
29
+ function testReceive_ZeroValue_Reverts() public {
30
+ vm.prank(alice);
31
+ (bool success, bytes memory returnData) = address(inco).call{value: 0}("");
32
+
33
+ assertFalse(success, "Zero value transfer should also revert");
34
+ bytes4 expectedSelector = IIncoLightning.EthInboundTransferUnsupported.selector;
35
+ bytes4 actualSelector;
36
+ assembly {
37
+ actualSelector := mload(add(returnData, 32))
38
+ }
39
+ assertEq(actualSelector, expectedSelector, "Should revert with EthInboundTransferUnsupported");
40
+ }
41
+
42
+ }
@@ -7,7 +7,7 @@ pragma solidity ^0.8;
7
7
  // UPDATE the CHANGELOG on new versions
8
8
 
9
9
  string constant CONTRACT_NAME = "incoLightning";
10
- uint8 constant MAJOR_VERSION = 6;
10
+ uint8 constant MAJOR_VERSION = 9;
11
11
  uint8 constant MINOR_VERSION = 0;
12
12
  // whenever a new version is deployed, we need to pump this up
13
13
  // otherwise make test_upgrade will fail