diff --git a/.github/ISSUE_TEMPLATE/bug-report.md b/.github/ISSUE_TEMPLATE/bug-report.md index 01be5209..e1a574de 100644 --- a/.github/ISSUE_TEMPLATE/bug-report.md +++ b/.github/ISSUE_TEMPLATE/bug-report.md @@ -1,6 +1,6 @@ --- name: Bug Report -about: Report a bug in mx-bridge-eth-go node +about: Report a bug in klv-bridge-eth-go node title: "[BUG]" labels: bug assignees: '' diff --git a/.github/ISSUE_TEMPLATE/feature.md b/.github/ISSUE_TEMPLATE/feature.md index 8e4023b6..a20438a1 100644 --- a/.github/ISSUE_TEMPLATE/feature.md +++ b/.github/ISSUE_TEMPLATE/feature.md @@ -1,6 +1,6 @@ --- name: Feature -about: Suggest a new feature for mx-bridge-eth-go +about: Suggest a new feature for klv-bridge-eth-go title: "[FEAT]" labels: enhancement assignees: '' diff --git a/.github/ISSUE_TEMPLATE/question.md b/.github/ISSUE_TEMPLATE/question.md index 45b66d66..c37be304 100644 --- a/.github/ISSUE_TEMPLATE/question.md +++ b/.github/ISSUE_TEMPLATE/question.md @@ -1,12 +1,9 @@ --- name: Question -about: Ask a question about mx-bridge-eth-go +about: Ask a question about klv-bridge-eth-go title: "[QUESTION]" labels: '' assignees: '' --- - diff --git a/.github/workflows/create_release.yml b/.github/workflows/create_release.yml index 6a8da390..0f144059 100644 --- a/.github/workflows/create_release.yml +++ b/.github/workflows/create_release.yml @@ -43,7 +43,7 @@ jobs: GOOS=$(go env GOOS) GOARCH=$(go env GOARCH) GOPATH=$(go env GOPATH) - ARCHIVE="multiversx_eth_bridge""$APP_VER_SHORT""_""$GOOS""_""$GOARCH"".tgz" + ARCHIVE="kc_eth_bridge""$APP_VER_SHORT""_""$GOOS""_""$GOARCH"".tgz" BUILD_DIR=${GITHUB_WORKSPACE}/build echo "GOOS=${GOOS}" >> $GITHUB_ENV diff --git a/README.md b/README.md index b670851b..17709aeb 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ -# KleverChain<->Eth Bridge -The relayer code implemented in go that uses the smart contracts and powers the bridge between KleverChain and Ethereum. +# KleverBlockchain<->Eth Bridge +The relayer code implemented in go that uses the smart contracts and powers the bridge between KleverBlockchain and Ethereum. ## Installation and running for the relayer @@ -18,9 +18,9 @@ For the documentation and how to setup swagger. Go to [README.md](api/swagger/RE ## Contribution -Thank you for considering to help out with the source code! We welcome contributions from anyone on the internet, and are grateful for even the smallest of fixes to KleverChain! +Thank you for considering to help out with the source code! We welcome contributions from anyone on the internet, and are grateful for even the smallest of fixes to KleverBlockchain! -If you'd like to contribute to KleverChain, please fork, fix, commit and send a pull request for the maintainers to review and merge into the main code base. If you wish to submit more complex changes though, please check up with the core developers first on our [telegram channel]() to ensure those changes are in line with the general philosophy of the project and/or get some early feedback which can make both your efforts much lighter as well as our review and merge procedures quick and simple. +If you'd like to contribute to KleverBlockchain, please fork, fix, commit and send a pull request for the maintainers to review and merge into the main code base. If you wish to submit more complex changes though, please check up with the core developers first on our [telegram channel]() to ensure those changes are in line with the general philosophy of the project and/or get some early feedback which can make both your efforts much lighter as well as our review and merge procedures quick and simple. Please make sure your contributions adhere to our coding guidelines: @@ -30,4 +30,4 @@ Please make sure your contributions adhere to our coding guidelines: - Commit messages should be prefixed with the package(s) they modify. - E.g. "core/indexer: fixed a typo" -Please see the [documentation](https://docs.klever.org/) for more details on the KleverChain project. +Please see the [documentation](https://docs.klever.org/) for more details on the KleverBlockchain project. diff --git a/api/swagger/README.md b/api/swagger/README.md index dc14f4e0..a11bc415 100644 --- a/api/swagger/README.md +++ b/api/swagger/README.md @@ -1,6 +1,6 @@ # Swagger setup for the relayer node The relayer node exposes some api routes in order to monitor the health of it: -- connection status between ethereum and multiversx clients +- connection status between ethereum and klever blockchain clients - information for each half-bridge regarding the current status In order to setup the swagger for interacting with those routes we will use `docker` diff --git a/api/swagger/swagger/openapi.yaml b/api/swagger/swagger/openapi.yaml index 80d6e0ab..960b0590 100644 --- a/api/swagger/swagger/openapi.yaml +++ b/api/swagger/swagger/openapi.yaml @@ -3,7 +3,7 @@ info: version: "1.0.0" title: "Relayers API" contact: - email: "contact@multiversx.com" + email: "contact@klever.io" basePath: "/node" host: localhost:8080 tags: @@ -24,7 +24,7 @@ paths: content: application/json: schema: - $ref: '#components/schemas/MultiversXReply' + $ref: '#components/schemas/KleverBlockchainReply' /status?name={metric}: get: tags: @@ -37,18 +37,18 @@ paths: required: true description: The wanted metric type: string - enum: [MultiversXToEth, EthToMultiversX, multiversx-client, eth-client] + enum: [KleverBlockchainToEth, EthToKleverBlockchain, klever-client, eth-client] responses: '200': description: Information of the requested metric content: application/json: schema: - $ref: '#components/schemas/MultiversXReply' + $ref: '#components/schemas/KleverBlockchainReply' components: schemas: - MultiversXReply: + KleverBlockchainReply: type: object properties: data: diff --git a/bridges/ethMultiversX/bridgeExecutor.go b/bridges/ethKC/bridgeExecutor.go similarity index 65% rename from bridges/ethMultiversX/bridgeExecutor.go rename to bridges/ethKC/bridgeExecutor.go index ef01bd86..f58f07ed 100644 --- a/bridges/ethMultiversX/bridgeExecutor.go +++ b/bridges/ethKC/bridgeExecutor.go @@ -1,4 +1,4 @@ -package ethmultiversx +package ethKC import ( "context" @@ -25,38 +25,38 @@ const minRetries = 1 // ArgsBridgeExecutor is the arguments DTO struct used in both bridges type ArgsBridgeExecutor struct { - Log logger.Logger - TopologyProvider TopologyProvider - MultiversXClient MultiversXClient - EthereumClient EthereumClient - TimeForWaitOnEthereum time.Duration - StatusHandler core.StatusHandler - SignaturesHolder SignaturesHolder - BalanceValidator BalanceValidator - MaxQuorumRetriesOnEthereum uint64 - MaxQuorumRetriesOnMultiversX uint64 - MaxRestriesOnWasProposed uint64 + Log logger.Logger + TopologyProvider TopologyProvider + KCClient KCClient + EthereumClient EthereumClient + TimeForWaitOnEthereum time.Duration + StatusHandler core.StatusHandler + SignaturesHolder SignaturesHolder + BalanceValidator BalanceValidator + MaxQuorumRetriesOnEthereum uint64 + MaxQuorumRetriesOnKC uint64 + MaxRetriesOnWasProposed uint64 } type bridgeExecutor struct { - log logger.Logger - topologyProvider TopologyProvider - multiversXClient MultiversXClient - ethereumClient EthereumClient - timeForWaitOnEthereum time.Duration - statusHandler core.StatusHandler - sigsHolder SignaturesHolder - balanceValidator BalanceValidator - maxQuorumRetriesOnEthereum uint64 - maxQuorumRetriesOnMultiversX uint64 - maxRetriesOnWasProposed uint64 - - batch *bridgeCore.TransferBatch - actionID uint64 - msgHash common.Hash - quorumRetriesOnEthereum uint64 - quorumRetriesOnMultiversX uint64 - retriesOnWasProposed uint64 + log logger.Logger + topologyProvider TopologyProvider + kcClient KCClient + ethereumClient EthereumClient + timeForWaitOnEthereum time.Duration + statusHandler core.StatusHandler + sigsHolder SignaturesHolder + balanceValidator BalanceValidator + maxQuorumRetriesOnEthereum uint64 + maxQuorumRetriesOnKC uint64 + maxRetriesOnWasProposed uint64 + + batch *bridgeCore.TransferBatch + actionID uint64 + msgHash common.Hash + quorumRetriesOnEthereum uint64 + quorumRetriesOnKC uint64 + retriesOnWasProposed uint64 } // NewBridgeExecutor creates a bridge executor, which can be used for both half-bridges @@ -74,8 +74,8 @@ func checkArgs(args ArgsBridgeExecutor) error { if check.IfNil(args.Log) { return ErrNilLogger } - if check.IfNil(args.MultiversXClient) { - return ErrNilMultiversXClient + if check.IfNil(args.KCClient) { + return ErrNilKCClient } if check.IfNil(args.EthereumClient) { return ErrNilEthereumClient @@ -99,30 +99,30 @@ func checkArgs(args ArgsBridgeExecutor) error { return fmt.Errorf("%w for args.MaxQuorumRetriesOnEthereum, got: %d, minimum: %d", clients.ErrInvalidValue, args.MaxQuorumRetriesOnEthereum, minRetries) } - if args.MaxQuorumRetriesOnMultiversX < minRetries { - return fmt.Errorf("%w for args.MaxQuorumRetriesOnMultiversX, got: %d, minimum: %d", - clients.ErrInvalidValue, args.MaxQuorumRetriesOnMultiversX, minRetries) + if args.MaxQuorumRetriesOnKC < minRetries { + return fmt.Errorf("%w for args.MaxQuorumRetriesOnKC, got: %d, minimum: %d", + clients.ErrInvalidValue, args.MaxQuorumRetriesOnKC, minRetries) } - if args.MaxRestriesOnWasProposed < minRetries { - return fmt.Errorf("%w for args.MaxRestriesOnWasProposed, got: %d, minimum: %d", - clients.ErrInvalidValue, args.MaxRestriesOnWasProposed, minRetries) + if args.MaxRetriesOnWasProposed < minRetries { + return fmt.Errorf("%w for args.MaxRetriesOnWasProposed, got: %d, minimum: %d", + clients.ErrInvalidValue, args.MaxRetriesOnWasProposed, minRetries) } return nil } func createBridgeExecutor(args ArgsBridgeExecutor) *bridgeExecutor { return &bridgeExecutor{ - log: args.Log, - multiversXClient: args.MultiversXClient, - ethereumClient: args.EthereumClient, - topologyProvider: args.TopologyProvider, - statusHandler: args.StatusHandler, - timeForWaitOnEthereum: args.TimeForWaitOnEthereum, - sigsHolder: args.SignaturesHolder, - balanceValidator: args.BalanceValidator, - maxQuorumRetriesOnEthereum: args.MaxQuorumRetriesOnEthereum, - maxQuorumRetriesOnMultiversX: args.MaxQuorumRetriesOnMultiversX, - maxRetriesOnWasProposed: args.MaxRestriesOnWasProposed, + log: args.Log, + kcClient: args.KCClient, + ethereumClient: args.EthereumClient, + topologyProvider: args.TopologyProvider, + statusHandler: args.StatusHandler, + timeForWaitOnEthereum: args.TimeForWaitOnEthereum, + sigsHolder: args.SignaturesHolder, + balanceValidator: args.BalanceValidator, + maxQuorumRetriesOnEthereum: args.MaxQuorumRetriesOnEthereum, + maxQuorumRetriesOnKC: args.MaxQuorumRetriesOnKC, + maxRetriesOnWasProposed: args.MaxRetriesOnWasProposed, } } @@ -150,17 +150,17 @@ func (executor *bridgeExecutor) MyTurnAsLeader() bool { return executor.topologyProvider.MyTurnAsLeader() } -// GetBatchFromMultiversX fetches the pending batch from MultiversX -func (executor *bridgeExecutor) GetBatchFromMultiversX(ctx context.Context) (*bridgeCore.TransferBatch, error) { - batch, err := executor.multiversXClient.GetPendingBatch(ctx) +// GetBatchFromKC fetches the pending batch from KC +func (executor *bridgeExecutor) GetBatchFromKC(ctx context.Context) (*bridgeCore.TransferBatch, error) { + batch, err := executor.kcClient.GetPendingBatch(ctx) if err == nil { executor.statusHandler.SetIntMetric(core.MetricNumBatches, int(batch.ID)-1) } return batch, err } -// StoreBatchFromMultiversX saves the pending batch from MultiversX -func (executor *bridgeExecutor) StoreBatchFromMultiversX(batch *bridgeCore.TransferBatch) error { +// StoreBatchFromKC saves the pending batch from KC +func (executor *bridgeExecutor) StoreBatchFromKC(batch *bridgeCore.TransferBatch) error { if batch == nil { return ErrNilBatch } @@ -174,9 +174,9 @@ func (executor *bridgeExecutor) GetStoredBatch() *bridgeCore.TransferBatch { return executor.batch } -// GetLastExecutedEthBatchIDFromMultiversX returns the last executed batch ID that is stored on the MultiversX SC -func (executor *bridgeExecutor) GetLastExecutedEthBatchIDFromMultiversX(ctx context.Context) (uint64, error) { - batchID, err := executor.multiversXClient.GetLastExecutedEthBatchID(ctx) +// GetLastExecutedEthBatchIDFromKC returns the last executed batch ID that is stored on the Klever Blockchain SC +func (executor *bridgeExecutor) GetLastExecutedEthBatchIDFromKC(ctx context.Context) (uint64, error) { + batchID, err := executor.kcClient.GetLastExecutedEthBatchID(ctx) if err == nil { executor.statusHandler.SetIntMetric(core.MetricNumBatches, int(batchID)) } @@ -189,7 +189,7 @@ func (executor *bridgeExecutor) VerifyLastDepositNonceExecutedOnEthereumBatch(ct return ErrNilBatch } - lastNonce, err := executor.multiversXClient.GetLastExecutedEthTxID(ctx) + lastNonce, err := executor.kcClient.GetLastExecutedEthTxID(ctx) if err != nil { return err } @@ -210,13 +210,13 @@ func (executor *bridgeExecutor) verifyDepositNonces(lastNonce uint64) error { return nil } -// GetAndStoreActionIDForProposeTransferOnMultiversX fetches the action ID for ProposeTransfer by using the stored batch. Stores the action ID and returns it -func (executor *bridgeExecutor) GetAndStoreActionIDForProposeTransferOnMultiversX(ctx context.Context) (uint64, error) { +// GetAndStoreActionIDForProposeTransferOnKC fetches the action ID for ProposeTransfer by using the stored batch. Stores the action ID and returns it +func (executor *bridgeExecutor) GetAndStoreActionIDForProposeTransferOnKC(ctx context.Context) (uint64, error) { if executor.batch == nil { return InvalidActionID, ErrNilBatch } - actionID, err := executor.multiversXClient.GetActionIDForProposeTransfer(ctx, executor.batch) + actionID, err := executor.kcClient.GetActionIDForProposeTransfer(ctx, executor.batch) if err != nil { return InvalidActionID, err } @@ -226,13 +226,13 @@ func (executor *bridgeExecutor) GetAndStoreActionIDForProposeTransferOnMultivers return actionID, nil } -// GetAndStoreActionIDForProposeSetStatusFromMultiversX fetches the action ID for SetStatus by using the stored batch. Stores the action ID and returns it -func (executor *bridgeExecutor) GetAndStoreActionIDForProposeSetStatusFromMultiversX(ctx context.Context) (uint64, error) { +// GetAndStoreActionIDForProposeSetStatusFromKC fetches the action ID for SetStatus by using the stored batch. Stores the action ID and returns it +func (executor *bridgeExecutor) GetAndStoreActionIDForProposeSetStatusFromKC(ctx context.Context) (uint64, error) { if executor.batch == nil { return InvalidActionID, ErrNilBatch } - actionID, err := executor.multiversXClient.GetActionIDForSetStatusOnPendingTransfer(ctx, executor.batch) + actionID, err := executor.kcClient.GetActionIDForSetStatusOnPendingTransfer(ctx, executor.batch) if err != nil { return InvalidActionID, err } @@ -247,22 +247,22 @@ func (executor *bridgeExecutor) GetStoredActionID() uint64 { return executor.actionID } -// WasTransferProposedOnMultiversX checks if the transfer was proposed on MultiversX -func (executor *bridgeExecutor) WasTransferProposedOnMultiversX(ctx context.Context) (bool, error) { +// WasTransferProposedOnKC checks if the transfer was proposed on KC +func (executor *bridgeExecutor) WasTransferProposedOnKC(ctx context.Context) (bool, error) { if executor.batch == nil { return false, ErrNilBatch } - return executor.multiversXClient.WasProposedTransfer(ctx, executor.batch) + return executor.kcClient.WasProposedTransfer(ctx, executor.batch) } -// ProposeTransferOnMultiversX propose the transfer on MultiversX -func (executor *bridgeExecutor) ProposeTransferOnMultiversX(ctx context.Context) error { +// ProposeTransferOnKC propose the transfer on KC +func (executor *bridgeExecutor) ProposeTransferOnKC(ctx context.Context) error { if executor.batch == nil { return ErrNilBatch } - hash, err := executor.multiversXClient.ProposeTransfer(ctx, executor.batch) + hash, err := executor.kcClient.ProposeTransfer(ctx, executor.batch) if err != nil { return err } @@ -273,8 +273,8 @@ func (executor *bridgeExecutor) ProposeTransferOnMultiversX(ctx context.Context) return nil } -// ProcessMaxRetriesOnWasTransferProposedOnMultiversX checks if the retries on MultiversX were reached and increments the counter -func (executor *bridgeExecutor) ProcessMaxRetriesOnWasTransferProposedOnMultiversX() bool { +// ProcessMaxRetriesOnWasTransferProposedOnKC checks if the retries on KC were reached and increments the counter +func (executor *bridgeExecutor) ProcessMaxRetriesOnWasTransferProposedOnKC() bool { if executor.retriesOnWasProposed < executor.maxRetriesOnWasProposed { executor.retriesOnWasProposed++ return false @@ -283,27 +283,27 @@ func (executor *bridgeExecutor) ProcessMaxRetriesOnWasTransferProposedOnMultiver return true } -// ResetRetriesOnWasTransferProposedOnMultiversX resets the number of retries on was transfer proposed -func (executor *bridgeExecutor) ResetRetriesOnWasTransferProposedOnMultiversX() { +// ResetRetriesOnWasTransferProposedOnKC resets the number of retries on was transfer proposed +func (executor *bridgeExecutor) ResetRetriesOnWasTransferProposedOnKC() { executor.retriesOnWasProposed = 0 } -// WasSetStatusProposedOnMultiversX checks if set status was proposed on MultiversX -func (executor *bridgeExecutor) WasSetStatusProposedOnMultiversX(ctx context.Context) (bool, error) { +// WasSetStatusProposedOnKC checks if set status was proposed on KC +func (executor *bridgeExecutor) WasSetStatusProposedOnKC(ctx context.Context) (bool, error) { if executor.batch == nil { return false, ErrNilBatch } - return executor.multiversXClient.WasProposedSetStatus(ctx, executor.batch) + return executor.kcClient.WasProposedSetStatus(ctx, executor.batch) } -// ProposeSetStatusOnMultiversX propose set status on MultiversX -func (executor *bridgeExecutor) ProposeSetStatusOnMultiversX(ctx context.Context) error { +// ProposeSetStatusOnKC propose set status on KC +func (executor *bridgeExecutor) ProposeSetStatusOnKC(ctx context.Context) error { if executor.batch == nil { return ErrNilBatch } - hash, err := executor.multiversXClient.ProposeSetStatus(ctx, executor.batch) + hash, err := executor.kcClient.ProposeSetStatus(ctx, executor.batch) if err != nil { return err } @@ -314,14 +314,14 @@ func (executor *bridgeExecutor) ProposeSetStatusOnMultiversX(ctx context.Context return nil } -// WasActionSignedOnMultiversX returns true if the current relayer already signed the action -func (executor *bridgeExecutor) WasActionSignedOnMultiversX(ctx context.Context) (bool, error) { - return executor.multiversXClient.WasSigned(ctx, executor.actionID) +// WasActionSignedOnKC returns true if the current relayer already signed the action +func (executor *bridgeExecutor) WasActionSignedOnKC(ctx context.Context) (bool, error) { + return executor.kcClient.WasSigned(ctx, executor.actionID) } -// SignActionOnMultiversX calls the MultiversX client to generate and send the signature -func (executor *bridgeExecutor) SignActionOnMultiversX(ctx context.Context) error { - hash, err := executor.multiversXClient.Sign(ctx, executor.actionID) +// SignActionOnKC calls the KC client to generate and send the signature +func (executor *bridgeExecutor) SignActionOnKC(ctx context.Context) error { + hash, err := executor.kcClient.Sign(ctx, executor.actionID) if err != nil { return err } @@ -331,9 +331,9 @@ func (executor *bridgeExecutor) SignActionOnMultiversX(ctx context.Context) erro return nil } -// ProcessQuorumReachedOnMultiversX returns true if the proposed transfer reached the set quorum -func (executor *bridgeExecutor) ProcessQuorumReachedOnMultiversX(ctx context.Context) (bool, error) { - return executor.multiversXClient.QuorumReached(ctx, executor.actionID) +// ProcessQuorumReachedOnKC returns true if the proposed transfer reached the set quorum +func (executor *bridgeExecutor) ProcessQuorumReachedOnKC(ctx context.Context) (bool, error) { + return executor.kcClient.QuorumReached(ctx, executor.actionID) } // WaitForTransferConfirmation waits for the confirmation of a transfer @@ -397,18 +397,18 @@ func (executor *bridgeExecutor) GetBatchStatusesFromEthereum(ctx context.Context return statuses, nil } -// WasActionPerformedOnMultiversX returns true if the action was already performed -func (executor *bridgeExecutor) WasActionPerformedOnMultiversX(ctx context.Context) (bool, error) { - return executor.multiversXClient.WasExecuted(ctx, executor.actionID) +// WasActionPerformedOnKC returns true if the action was already performed +func (executor *bridgeExecutor) WasActionPerformedOnKC(ctx context.Context) (bool, error) { + return executor.kcClient.WasExecuted(ctx, executor.actionID) } -// PerformActionOnMultiversX sends the perform-action transaction on the MultiversX chain -func (executor *bridgeExecutor) PerformActionOnMultiversX(ctx context.Context) error { +// PerformActionOnKC sends the perform-action transaction on the Klever Blockchain chain +func (executor *bridgeExecutor) PerformActionOnKC(ctx context.Context) error { if executor.batch == nil { return ErrNilBatch } - hash, err := executor.multiversXClient.PerformAction(ctx, executor.actionID, executor.batch) + hash, err := executor.kcClient.PerformAction(ctx, executor.actionID, executor.batch) if err != nil { return err } @@ -424,19 +424,19 @@ func (executor *bridgeExecutor) ResolveNewDepositsStatuses(numDeposits uint64) { executor.batch.ResolveNewDeposits(int(numDeposits)) } -// ProcessMaxQuorumRetriesOnMultiversX checks if the retries on MultiversX were reached and increments the counter -func (executor *bridgeExecutor) ProcessMaxQuorumRetriesOnMultiversX() bool { - if executor.quorumRetriesOnMultiversX < executor.maxQuorumRetriesOnMultiversX { - executor.quorumRetriesOnMultiversX++ +// ProcessMaxQuorumRetriesOnKC checks if the retries on Klever Blockchain were reached and increments the counter +func (executor *bridgeExecutor) ProcessMaxQuorumRetriesOnKC() bool { + if executor.quorumRetriesOnKC < executor.maxQuorumRetriesOnKC { + executor.quorumRetriesOnKC++ return false } return true } -// ResetRetriesCountOnMultiversX resets the number of retries on MultiversX -func (executor *bridgeExecutor) ResetRetriesCountOnMultiversX() { - executor.quorumRetriesOnMultiversX = 0 +// ResetRetriesCountOnKC resets the number of retries on KC +func (executor *bridgeExecutor) ResetRetriesCountOnKC() { + executor.quorumRetriesOnKC = 0 } // GetAndStoreBatchFromEthereum fetches and stores the batch from the ethereum client @@ -531,7 +531,7 @@ func (executor *bridgeExecutor) SignTransferOnEthereum() error { return ErrNilBatch } - argLists := batchProcessor.ExtractListMvxToEth(executor.batch) + argLists := batchProcessor.ExtractListKlvToEth(executor.batch) hash, err := executor.ethereumClient.GenerateMessageHash(argLists, executor.batch.ID) if err != nil { return err @@ -558,7 +558,7 @@ func (executor *bridgeExecutor) PerformTransferOnEthereum(ctx context.Context) e executor.log.Debug("fetched quorum size", "quorum", quorumSize.Int64()) - argLists := batchProcessor.ExtractListMvxToEth(executor.batch) + argLists := batchProcessor.ExtractListKlvToEth(executor.batch) executor.log.Info("executing transfer " + executor.batch.String()) @@ -573,9 +573,9 @@ func (executor *bridgeExecutor) PerformTransferOnEthereum(ctx context.Context) e return nil } -func (executor *bridgeExecutor) checkCumulatedTransfers(ctx context.Context, ethTokens []common.Address, mvxTokens [][]byte, amounts []*big.Int, direction batchProcessor.Direction) error { +func (executor *bridgeExecutor) checkCumulatedTransfers(ctx context.Context, ethTokens []common.Address, kdaTokens [][]byte, amounts []*big.Int, direction batchProcessor.Direction) error { for i, ethToken := range ethTokens { - err := executor.balanceValidator.CheckToken(ctx, ethToken, mvxTokens[i], amounts[i], direction) + err := executor.balanceValidator.CheckToken(ctx, ethToken, kdaTokens[i], amounts[i], direction) if err != nil { return err } @@ -584,13 +584,13 @@ func (executor *bridgeExecutor) checkCumulatedTransfers(ctx context.Context, eth } // CheckAvailableTokens checks the available balances -func (executor *bridgeExecutor) CheckAvailableTokens(ctx context.Context, ethTokens []common.Address, mvxTokens [][]byte, amounts []*big.Int, direction batchProcessor.Direction) error { - ethTokens, mvxTokens, amounts = executor.getCumulatedTransfers(ethTokens, mvxTokens, amounts) +func (executor *bridgeExecutor) CheckAvailableTokens(ctx context.Context, ethTokens []common.Address, kdaTokens [][]byte, amounts []*big.Int, direction batchProcessor.Direction) error { + ethTokens, kdaTokens, amounts = executor.getCumulatedTransfers(ethTokens, kdaTokens, amounts) - return executor.checkCumulatedTransfers(ctx, ethTokens, mvxTokens, amounts, direction) + return executor.checkCumulatedTransfers(ctx, ethTokens, kdaTokens, amounts, direction) } -func (executor *bridgeExecutor) getCumulatedTransfers(ethTokens []common.Address, mvxTokens [][]byte, amounts []*big.Int) ([]common.Address, [][]byte, []*big.Int) { +func (executor *bridgeExecutor) getCumulatedTransfers(ethTokens []common.Address, kdaTokens [][]byte, amounts []*big.Int) ([]common.Address, [][]byte, []*big.Int) { cumulatedAmounts := make(map[common.Address]*big.Int) uniqueTokens := make([]common.Address, 0) uniqueConvertedTokens := make([][]byte, 0) @@ -604,7 +604,7 @@ func (executor *bridgeExecutor) getCumulatedTransfers(ethTokens []common.Address cumulatedAmounts[token] = big.NewInt(0).Set(amounts[i]) // work on a new pointer uniqueTokens = append(uniqueTokens, token) - uniqueConvertedTokens = append(uniqueConvertedTokens, mvxTokens[i]) + uniqueConvertedTokens = append(uniqueConvertedTokens, kdaTokens[i]) } finalAmounts := make([]*big.Int, len(uniqueTokens)) @@ -641,9 +641,9 @@ func (executor *bridgeExecutor) ClearStoredP2PSignaturesForEthereum() { executor.log.Info("cleared stored P2P signatures") } -// CheckMultiversXClientAvailability trigger a self availability check for the MultiversX client -func (executor *bridgeExecutor) CheckMultiversXClientAvailability(ctx context.Context) error { - return executor.multiversXClient.CheckClientAvailability(ctx) +// CheckKCClientAvailability trigger a self availability check for the Klever Blockchain client +func (executor *bridgeExecutor) CheckKCClientAvailability(ctx context.Context) error { + return executor.kcClient.CheckClientAvailability(ctx) } // CheckEthereumClientAvailability trigger a self availability check for the Ethereum client diff --git a/bridges/ethMultiversX/bridgeExecutor_test.go b/bridges/ethKC/bridgeExecutor_test.go similarity index 85% rename from bridges/ethMultiversX/bridgeExecutor_test.go rename to bridges/ethKC/bridgeExecutor_test.go index 036e77c5..a6a71c40 100644 --- a/bridges/ethMultiversX/bridgeExecutor_test.go +++ b/bridges/ethKC/bridgeExecutor_test.go @@ -1,4 +1,4 @@ -package ethmultiversx +package ethKC import ( "context" @@ -27,17 +27,17 @@ var expectedMaxRetries = uint64(3) func createMockExecutorArgs() ArgsBridgeExecutor { return ArgsBridgeExecutor{ - Log: logger.GetOrCreate("test"), - MultiversXClient: &bridgeTests.MultiversXClientStub{}, - EthereumClient: &bridgeTests.EthereumClientStub{}, - TopologyProvider: &bridgeTests.TopologyProviderStub{}, - StatusHandler: testsCommon.NewStatusHandlerMock("test"), - TimeForWaitOnEthereum: time.Second, - SignaturesHolder: &testsCommon.SignaturesHolderStub{}, - BalanceValidator: &testsCommon.BalanceValidatorStub{}, - MaxQuorumRetriesOnEthereum: minRetries, - MaxQuorumRetriesOnMultiversX: minRetries, - MaxRestriesOnWasProposed: minRetries, + Log: logger.GetOrCreate("test"), + KCClient: &bridgeTests.KCClientStub{}, + EthereumClient: &bridgeTests.EthereumClientStub{}, + TopologyProvider: &bridgeTests.TopologyProviderStub{}, + StatusHandler: testsCommon.NewStatusHandlerMock("test"), + TimeForWaitOnEthereum: time.Second, + SignaturesHolder: &testsCommon.SignaturesHolderStub{}, + BalanceValidator: &testsCommon.BalanceValidatorStub{}, + MaxQuorumRetriesOnEthereum: minRetries, + MaxQuorumRetriesOnKC: minRetries, + MaxRetriesOnWasProposed: minRetries, } } @@ -54,15 +54,15 @@ func TestNewBridgeExecutor(t *testing.T) { assert.True(t, check.IfNil(executor)) assert.Equal(t, ErrNilLogger, err) }) - t.Run("nil multiversx client should error", func(t *testing.T) { + t.Run("nil klever blockchain client should error", func(t *testing.T) { t.Parallel() args := createMockExecutorArgs() - args.MultiversXClient = nil + args.KCClient = nil executor, err := NewBridgeExecutor(args) assert.True(t, check.IfNil(executor)) - assert.Equal(t, ErrNilMultiversXClient, err) + assert.Equal(t, ErrNilKCClient, err) }) t.Run("nil ethereum client should error", func(t *testing.T) { t.Parallel() @@ -135,27 +135,27 @@ func TestNewBridgeExecutor(t *testing.T) { assert.True(t, errors.Is(err, clients.ErrInvalidValue)) assert.True(t, strings.Contains(err.Error(), "for args.MaxQuorumRetriesOnEthereum")) }) - t.Run("invalid MaxQuorumRetriesOnMultiversX value", func(t *testing.T) { + t.Run("invalid MaxQuorumRetriesOnKC value", func(t *testing.T) { t.Parallel() args := createMockExecutorArgs() - args.MaxQuorumRetriesOnMultiversX = 0 + args.MaxQuorumRetriesOnKC = 0 executor, err := NewBridgeExecutor(args) assert.True(t, check.IfNil(executor)) assert.True(t, errors.Is(err, clients.ErrInvalidValue)) - assert.True(t, strings.Contains(err.Error(), "for args.MaxQuorumRetriesOnMultiversX")) + assert.True(t, strings.Contains(err.Error(), "for args.MaxQuorumRetriesOnKC")) }) - t.Run("invalid MaxRestriesOnWasProposed value", func(t *testing.T) { + t.Run("invalid MaxRetriesOnWasProposed value", func(t *testing.T) { t.Parallel() args := createMockExecutorArgs() - args.MaxRestriesOnWasProposed = 0 + args.MaxRetriesOnWasProposed = 0 executor, err := NewBridgeExecutor(args) assert.True(t, check.IfNil(executor)) assert.True(t, errors.Is(err, clients.ErrInvalidValue)) - assert.True(t, strings.Contains(err.Error(), "for args.MaxRestriesOnWasProposed")) + assert.True(t, strings.Contains(err.Error(), "for args.MaxRetriesOnWasProposed")) }) t.Run("should work", func(t *testing.T) { t.Parallel() @@ -168,7 +168,7 @@ func TestNewBridgeExecutor(t *testing.T) { }) } -func TestEthToMultiversXBridgeExecutor_PrintInfo(t *testing.T) { +func TestEthToKCBridgeExecutor_PrintInfo(t *testing.T) { t.Parallel() logLevels := []logger.LogLevel{logger.LogTrace, logger.LogDebug, logger.LogInfo, logger.LogWarning, logger.LogError, logger.LogNone} @@ -205,7 +205,7 @@ func testPrintInfo(t *testing.T, logLevel logger.LogLevel, shouldOutputToStatusH } } -func TestEthToMultiversXBridgeExecutor_MyTurnAsLeader(t *testing.T) { +func TestEthToKCBridgeExecutor_MyTurnAsLeader(t *testing.T) { t.Parallel() args := createMockExecutorArgs() @@ -222,7 +222,7 @@ func TestEthToMultiversXBridgeExecutor_MyTurnAsLeader(t *testing.T) { assert.True(t, wasCalled) } -func TestEthToMultiversXBridgeExecutor_GetAndStoreActionIDForProposeTransferOnMultiversX(t *testing.T) { +func TestEthToKCBridgeExecutor_GetAndStoreActionIDForProposeTransferOnKC(t *testing.T) { t.Parallel() t.Run("nil batch should error", func(t *testing.T) { @@ -231,15 +231,15 @@ func TestEthToMultiversXBridgeExecutor_GetAndStoreActionIDForProposeTransferOnMu args := createMockExecutorArgs() executor, _ := NewBridgeExecutor(args) - actionID, err := executor.GetAndStoreActionIDForProposeTransferOnMultiversX(context.Background()) + actionID, err := executor.GetAndStoreActionIDForProposeTransferOnKC(context.Background()) assert.Zero(t, actionID) assert.Equal(t, ErrNilBatch, err) }) - t.Run("multiversx client errors", func(t *testing.T) { + t.Run("klever blockchain client errors", func(t *testing.T) { t.Parallel() args := createMockExecutorArgs() - args.MultiversXClient = &bridgeTests.MultiversXClientStub{ + args.KCClient = &bridgeTests.KCClientStub{ GetActionIDForProposeTransferCalled: func(ctx context.Context, batch *bridgeCore.TransferBatch) (uint64, error) { assert.True(t, providedBatch == batch) return 0, expectedErr @@ -248,7 +248,7 @@ func TestEthToMultiversXBridgeExecutor_GetAndStoreActionIDForProposeTransferOnMu executor, _ := NewBridgeExecutor(args) executor.batch = providedBatch - actionID, err := executor.GetAndStoreActionIDForProposeTransferOnMultiversX(context.Background()) + actionID, err := executor.GetAndStoreActionIDForProposeTransferOnKC(context.Background()) assert.Zero(t, actionID) assert.Equal(t, expectedErr, err) }) @@ -258,7 +258,7 @@ func TestEthToMultiversXBridgeExecutor_GetAndStoreActionIDForProposeTransferOnMu args := createMockExecutorArgs() providedActionID := uint64(48939) - args.MultiversXClient = &bridgeTests.MultiversXClientStub{ + args.KCClient = &bridgeTests.KCClientStub{ GetActionIDForProposeTransferCalled: func(ctx context.Context, batch *bridgeCore.TransferBatch) (uint64, error) { assert.True(t, providedBatch == batch) return providedActionID, nil @@ -269,7 +269,7 @@ func TestEthToMultiversXBridgeExecutor_GetAndStoreActionIDForProposeTransferOnMu assert.NotEqual(t, providedActionID, executor.actionID) - actionID, err := executor.GetAndStoreActionIDForProposeTransferOnMultiversX(context.Background()) + actionID, err := executor.GetAndStoreActionIDForProposeTransferOnKC(context.Background()) assert.Equal(t, providedActionID, actionID) assert.Nil(t, err) assert.Equal(t, providedActionID, executor.GetStoredActionID()) @@ -277,7 +277,7 @@ func TestEthToMultiversXBridgeExecutor_GetAndStoreActionIDForProposeTransferOnMu }) } -func TestEthToMultiversXBridgeExecutor_GetAndStoreBatchFromEthereum(t *testing.T) { +func TestEthToKCBridgeExecutor_GetAndStoreBatchFromEthereum(t *testing.T) { t.Parallel() t.Run("ethereum client errors", func(t *testing.T) { @@ -533,12 +533,12 @@ func TestEthToMultiversXBridgeExecutor_GetAndStoreBatchFromEthereum(t *testing.T }) } -func TestEthToMultiversXBridgeExecutor_GetLastExecutedEthBatchIDFromMultiversX(t *testing.T) { +func TestEthToKCBridgeExecutor_GetLastExecutedEthBatchIDFromKC(t *testing.T) { t.Parallel() args := createMockExecutorArgs() providedBatchID := uint64(36727) - args.MultiversXClient = &bridgeTests.MultiversXClientStub{ + args.KCClient = &bridgeTests.KCClientStub{ GetLastExecutedEthBatchIDCalled: func(ctx context.Context) (uint64, error) { return providedBatchID, nil }, @@ -553,13 +553,13 @@ func TestEthToMultiversXBridgeExecutor_GetLastExecutedEthBatchIDFromMultiversX(t } executor, _ := NewBridgeExecutor(args) - batchID, err := executor.GetLastExecutedEthBatchIDFromMultiversX(context.Background()) + batchID, err := executor.GetLastExecutedEthBatchIDFromKC(context.Background()) assert.Equal(t, providedBatchID, batchID) assert.Nil(t, err) assert.True(t, setIntCalled) } -func TestEthToMultiversXBridgeExecutor_VerifyLastDepositNonceExecutedOnEthereumBatch(t *testing.T) { +func TestEthToKCBridgeExecutor_VerifyLastDepositNonceExecutedOnEthereumBatch(t *testing.T) { t.Parallel() t.Run("nil batch should error", func(t *testing.T) { @@ -575,7 +575,7 @@ func TestEthToMultiversXBridgeExecutor_VerifyLastDepositNonceExecutedOnEthereumB t.Parallel() args := createMockExecutorArgs() - args.MultiversXClient = &bridgeTests.MultiversXClientStub{ + args.KCClient = &bridgeTests.KCClientStub{ GetLastExecutedEthTxIDCalled: func(ctx context.Context) (uint64, error) { return 0, expectedErr }, @@ -589,7 +589,7 @@ func TestEthToMultiversXBridgeExecutor_VerifyLastDepositNonceExecutedOnEthereumB args := createMockExecutorArgs() txId := uint64(6657) - args.MultiversXClient = &bridgeTests.MultiversXClientStub{ + args.KCClient = &bridgeTests.KCClientStub{ GetLastExecutedEthTxIDCalled: func(ctx context.Context) (uint64, error) { return txId, nil }, @@ -677,7 +677,7 @@ func TestEthToMultiversXBridgeExecutor_VerifyLastDepositNonceExecutedOnEthereumB }) } -func TestEthToMultiversXBridgeExecutor_WasTransferProposedOnMultiversX(t *testing.T) { +func TestEthToKCBridgeExecutor_WasTransferProposedOnKC(t *testing.T) { t.Parallel() t.Run("nil batch should error", func(t *testing.T) { @@ -686,7 +686,7 @@ func TestEthToMultiversXBridgeExecutor_WasTransferProposedOnMultiversX(t *testin args := createMockExecutorArgs() executor, _ := NewBridgeExecutor(args) - wasTransfered, err := executor.WasTransferProposedOnMultiversX(context.Background()) + wasTransfered, err := executor.WasTransferProposedOnKC(context.Background()) assert.False(t, wasTransfered) assert.Equal(t, ErrNilBatch, err) }) @@ -695,7 +695,7 @@ func TestEthToMultiversXBridgeExecutor_WasTransferProposedOnMultiversX(t *testin args := createMockExecutorArgs() wasCalled := false - args.MultiversXClient = &bridgeTests.MultiversXClientStub{ + args.KCClient = &bridgeTests.KCClientStub{ WasProposedTransferCalled: func(ctx context.Context, batch *bridgeCore.TransferBatch) (bool, error) { assert.True(t, providedBatch == batch) wasCalled = true @@ -706,14 +706,14 @@ func TestEthToMultiversXBridgeExecutor_WasTransferProposedOnMultiversX(t *testin executor, _ := NewBridgeExecutor(args) executor.batch = providedBatch - wasProposed, err := executor.WasTransferProposedOnMultiversX(context.Background()) + wasProposed, err := executor.WasTransferProposedOnKC(context.Background()) assert.True(t, wasProposed) assert.Nil(t, err) assert.True(t, wasCalled) }) } -func TestEthToMultiversXBridgeExecutor_ProposeTransferOnMultiversX(t *testing.T) { +func TestEthToKCBridgeExecutor_ProposeTransferOnKC(t *testing.T) { t.Parallel() t.Run("nil batch should error", func(t *testing.T) { @@ -722,14 +722,14 @@ func TestEthToMultiversXBridgeExecutor_ProposeTransferOnMultiversX(t *testing.T) args := createMockExecutorArgs() executor, _ := NewBridgeExecutor(args) - err := executor.ProposeTransferOnMultiversX(context.Background()) + err := executor.ProposeTransferOnKC(context.Background()) assert.Equal(t, ErrNilBatch, err) }) t.Run("propose transfer fails", func(t *testing.T) { t.Parallel() args := createMockExecutorArgs() - args.MultiversXClient = &bridgeTests.MultiversXClientStub{ + args.KCClient = &bridgeTests.KCClientStub{ ProposeTransferCalled: func(ctx context.Context, batch *bridgeCore.TransferBatch) (string, error) { assert.True(t, providedBatch == batch) @@ -739,7 +739,7 @@ func TestEthToMultiversXBridgeExecutor_ProposeTransferOnMultiversX(t *testing.T) executor, _ := NewBridgeExecutor(args) executor.batch = providedBatch - err := executor.ProposeTransferOnMultiversX(context.Background()) + err := executor.ProposeTransferOnKC(context.Background()) assert.Equal(t, expectedErr, err) }) t.Run("should work", func(t *testing.T) { @@ -747,7 +747,7 @@ func TestEthToMultiversXBridgeExecutor_ProposeTransferOnMultiversX(t *testing.T) args := createMockExecutorArgs() wasCalled := false - args.MultiversXClient = &bridgeTests.MultiversXClientStub{ + args.KCClient = &bridgeTests.KCClientStub{ ProposeTransferCalled: func(ctx context.Context, batch *bridgeCore.TransferBatch) (string, error) { assert.True(t, providedBatch == batch) wasCalled = true @@ -758,19 +758,19 @@ func TestEthToMultiversXBridgeExecutor_ProposeTransferOnMultiversX(t *testing.T) executor, _ := NewBridgeExecutor(args) executor.batch = providedBatch - err := executor.ProposeTransferOnMultiversX(context.Background()) + err := executor.ProposeTransferOnKC(context.Background()) assert.Nil(t, err) assert.True(t, wasCalled) }) } -func TestEthToMultiversXBridgeExecutor_WasActionSignedOnMultiversX(t *testing.T) { +func TestEthToKCBridgeExecutor_WasActionSignedOnKC(t *testing.T) { t.Parallel() args := createMockExecutorArgs() providedActionID := uint64(378276) wasCalled := false - args.MultiversXClient = &bridgeTests.MultiversXClientStub{ + args.KCClient = &bridgeTests.KCClientStub{ WasSignedCalled: func(ctx context.Context, actionID uint64) (bool, error) { assert.Equal(t, providedActionID, actionID) wasCalled = true @@ -780,21 +780,21 @@ func TestEthToMultiversXBridgeExecutor_WasActionSignedOnMultiversX(t *testing.T) executor, _ := NewBridgeExecutor(args) executor.actionID = providedActionID - wasSigned, err := executor.WasActionSignedOnMultiversX(context.Background()) + wasSigned, err := executor.WasActionSignedOnKC(context.Background()) assert.True(t, wasSigned) assert.Nil(t, err) assert.True(t, wasCalled) } -func TestEthToMultiversXBridgeExecutor_SignActionOnMultiversX(t *testing.T) { +func TestEthToKCBridgeExecutor_SignActionOnKC(t *testing.T) { t.Parallel() - t.Run("multiversx client errors", func(t *testing.T) { + t.Run("klever blockchain client errors", func(t *testing.T) { t.Parallel() args := createMockExecutorArgs() providedActionID := uint64(378276) - args.MultiversXClient = &bridgeTests.MultiversXClientStub{ + args.KCClient = &bridgeTests.KCClientStub{ SignCalled: func(ctx context.Context, actionID uint64) (string, error) { assert.Equal(t, providedActionID, actionID) return "", expectedErr @@ -804,7 +804,7 @@ func TestEthToMultiversXBridgeExecutor_SignActionOnMultiversX(t *testing.T) { executor, _ := NewBridgeExecutor(args) executor.actionID = providedActionID - err := executor.SignActionOnMultiversX(context.Background()) + err := executor.SignActionOnKC(context.Background()) assert.Equal(t, expectedErr, err) }) t.Run("should work", func(t *testing.T) { @@ -813,7 +813,7 @@ func TestEthToMultiversXBridgeExecutor_SignActionOnMultiversX(t *testing.T) { args := createMockExecutorArgs() providedActionID := uint64(378276) wasCalled := false - args.MultiversXClient = &bridgeTests.MultiversXClientStub{ + args.KCClient = &bridgeTests.KCClientStub{ SignCalled: func(ctx context.Context, actionID uint64) (string, error) { assert.Equal(t, providedActionID, actionID) wasCalled = true @@ -824,19 +824,19 @@ func TestEthToMultiversXBridgeExecutor_SignActionOnMultiversX(t *testing.T) { executor, _ := NewBridgeExecutor(args) executor.actionID = providedActionID - err := executor.SignActionOnMultiversX(context.Background()) + err := executor.SignActionOnKC(context.Background()) assert.Nil(t, err) assert.True(t, wasCalled) }) } -func TestEthToMultiversXBridgeExecutor_IsQuorumReachedOnMultiversX(t *testing.T) { +func TestEthToKCBridgeExecutor_IsQuorumReachedOnKC(t *testing.T) { t.Parallel() args := createMockExecutorArgs() providedActionID := uint64(378276) wasCalled := false - args.MultiversXClient = &bridgeTests.MultiversXClientStub{ + args.KCClient = &bridgeTests.KCClientStub{ QuorumReachedCalled: func(ctx context.Context, actionID uint64) (bool, error) { assert.Equal(t, providedActionID, actionID) wasCalled = true @@ -846,19 +846,19 @@ func TestEthToMultiversXBridgeExecutor_IsQuorumReachedOnMultiversX(t *testing.T) executor, _ := NewBridgeExecutor(args) executor.actionID = providedActionID - isQuorumReached, err := executor.ProcessQuorumReachedOnMultiversX(context.Background()) + isQuorumReached, err := executor.ProcessQuorumReachedOnKC(context.Background()) assert.True(t, isQuorumReached) assert.Nil(t, err) assert.True(t, wasCalled) } -func TestEthToMultiversXBridgeExecutor_WasActionPerformedOnMultiversX(t *testing.T) { +func TestEthToKCBridgeExecutor_WasActionPerformedOnKC(t *testing.T) { t.Parallel() args := createMockExecutorArgs() providedActionID := uint64(378276) wasCalled := false - args.MultiversXClient = &bridgeTests.MultiversXClientStub{ + args.KCClient = &bridgeTests.KCClientStub{ WasExecutedCalled: func(ctx context.Context, actionID uint64) (bool, error) { assert.Equal(t, providedActionID, actionID) wasCalled = true @@ -868,13 +868,13 @@ func TestEthToMultiversXBridgeExecutor_WasActionPerformedOnMultiversX(t *testing executor, _ := NewBridgeExecutor(args) executor.actionID = providedActionID - wasPerformed, err := executor.WasActionPerformedOnMultiversX(context.Background()) + wasPerformed, err := executor.WasActionPerformedOnKC(context.Background()) assert.True(t, wasPerformed) assert.Nil(t, err) assert.True(t, wasCalled) } -func TestEthToMultiversXBridgeExecutor_PerformActionOnMultiversX(t *testing.T) { +func TestEthToKCBridgeExecutor_PerformActionOnKC(t *testing.T) { t.Parallel() t.Run("nil batch", func(t *testing.T) { @@ -883,15 +883,15 @@ func TestEthToMultiversXBridgeExecutor_PerformActionOnMultiversX(t *testing.T) { args := createMockExecutorArgs() executor, _ := NewBridgeExecutor(args) - err := executor.PerformActionOnMultiversX(context.Background()) + err := executor.PerformActionOnKC(context.Background()) assert.Equal(t, ErrNilBatch, err) }) - t.Run("multiversx client errors", func(t *testing.T) { + t.Run("klever blockchain client errors", func(t *testing.T) { t.Parallel() args := createMockExecutorArgs() providedActionID := uint64(7383) - args.MultiversXClient = &bridgeTests.MultiversXClientStub{ + args.KCClient = &bridgeTests.KCClientStub{ PerformActionCalled: func(ctx context.Context, actionID uint64, batch *bridgeCore.TransferBatch) (string, error) { assert.Equal(t, providedActionID, actionID) assert.True(t, providedBatch == batch) @@ -902,7 +902,7 @@ func TestEthToMultiversXBridgeExecutor_PerformActionOnMultiversX(t *testing.T) { executor.batch = providedBatch executor.actionID = providedActionID - err := executor.PerformActionOnMultiversX(context.Background()) + err := executor.PerformActionOnKC(context.Background()) assert.Equal(t, expectedErr, err) }) t.Run("should work", func(t *testing.T) { @@ -911,7 +911,7 @@ func TestEthToMultiversXBridgeExecutor_PerformActionOnMultiversX(t *testing.T) { args := createMockExecutorArgs() wasCalled := false providedActionID := uint64(7383) - args.MultiversXClient = &bridgeTests.MultiversXClientStub{ + args.KCClient = &bridgeTests.KCClientStub{ PerformActionCalled: func(ctx context.Context, actionID uint64, batch *bridgeCore.TransferBatch) (string, error) { assert.Equal(t, providedActionID, actionID) assert.True(t, providedBatch == batch) @@ -923,59 +923,59 @@ func TestEthToMultiversXBridgeExecutor_PerformActionOnMultiversX(t *testing.T) { executor.batch = providedBatch executor.actionID = providedActionID - err := executor.PerformActionOnMultiversX(context.Background()) + err := executor.PerformActionOnKC(context.Background()) assert.Nil(t, err) assert.True(t, wasCalled) }) } -func TestEthToMultiversXBridgeExecutor_RetriesCountOnMultiversX(t *testing.T) { +func TestEthToKCBridgeExecutor_RetriesCountOnKC(t *testing.T) { t.Parallel() args := createMockExecutorArgs() - args.MaxQuorumRetriesOnMultiversX = expectedMaxRetries + args.MaxQuorumRetriesOnKC = expectedMaxRetries executor, _ := NewBridgeExecutor(args) for i := uint64(0); i < expectedMaxRetries; i++ { - assert.False(t, executor.ProcessMaxQuorumRetriesOnMultiversX()) + assert.False(t, executor.ProcessMaxQuorumRetriesOnKC()) } - assert.Equal(t, expectedMaxRetries, executor.quorumRetriesOnMultiversX) - assert.True(t, executor.ProcessMaxQuorumRetriesOnMultiversX()) - executor.ResetRetriesCountOnMultiversX() - assert.Equal(t, uint64(0), executor.quorumRetriesOnMultiversX) + assert.Equal(t, expectedMaxRetries, executor.quorumRetriesOnKC) + assert.True(t, executor.ProcessMaxQuorumRetriesOnKC()) + executor.ResetRetriesCountOnKC() + assert.Equal(t, uint64(0), executor.quorumRetriesOnKC) } -func TestEthToMultiversXBridgeExecutor_RetriesCountOnWasTransferProposedOnMultiversX(t *testing.T) { +func TestEthToKCBridgeExecutor_RetriesCountOnWasTransferProposedOnKC(t *testing.T) { t.Parallel() args := createMockExecutorArgs() - args.MaxRestriesOnWasProposed = expectedMaxRetries + args.MaxRetriesOnWasProposed = expectedMaxRetries executor, _ := NewBridgeExecutor(args) for i := uint64(0); i < expectedMaxRetries; i++ { - assert.False(t, executor.ProcessMaxRetriesOnWasTransferProposedOnMultiversX()) + assert.False(t, executor.ProcessMaxRetriesOnWasTransferProposedOnKC()) } assert.Equal(t, expectedMaxRetries, executor.retriesOnWasProposed) - assert.True(t, executor.ProcessMaxRetriesOnWasTransferProposedOnMultiversX()) - executor.ResetRetriesOnWasTransferProposedOnMultiversX() + assert.True(t, executor.ProcessMaxRetriesOnWasTransferProposedOnKC()) + executor.ResetRetriesOnWasTransferProposedOnKC() assert.Equal(t, uint64(0), executor.retriesOnWasProposed) } -func TestMultiversXToEthBridgeExecutor_GetAndStoreBatchFromMultiversX(t *testing.T) { +func TestKCToEthBridgeExecutor_GetAndStoreBatchFromKC(t *testing.T) { t.Parallel() - t.Run("GetBatchFromMultiversX fails", func(t *testing.T) { + t.Run("GetBatchFromKC fails", func(t *testing.T) { t.Parallel() args := createMockExecutorArgs() - args.MultiversXClient = &bridgeTests.MultiversXClientStub{ + args.KCClient = &bridgeTests.KCClientStub{ GetPendingBatchCalled: func(ctx context.Context) (*bridgeCore.TransferBatch, error) { return nil, expectedErr }, } executor, _ := NewBridgeExecutor(args) - _, err := executor.GetBatchFromMultiversX(context.Background()) + _, err := executor.GetBatchFromKC(context.Background()) assert.Equal(t, expectedErr, err) batch := executor.GetStoredBatch() @@ -985,10 +985,10 @@ func TestMultiversXToEthBridgeExecutor_GetAndStoreBatchFromMultiversX(t *testing t.Parallel() args := createMockExecutorArgs() - args.MultiversXClient = &bridgeTests.MultiversXClientStub{} + args.KCClient = &bridgeTests.KCClientStub{} executor, _ := NewBridgeExecutor(args) - err := executor.StoreBatchFromMultiversX(nil) + err := executor.StoreBatchFromKC(nil) assert.Equal(t, ErrNilBatch, err) }) t.Run("should work", func(t *testing.T) { @@ -996,7 +996,7 @@ func TestMultiversXToEthBridgeExecutor_GetAndStoreBatchFromMultiversX(t *testing wasCalled := false args := createMockExecutorArgs() - args.MultiversXClient = &bridgeTests.MultiversXClientStub{ + args.KCClient = &bridgeTests.KCClientStub{ GetPendingBatchCalled: func(ctx context.Context) (*bridgeCore.TransferBatch, error) { wasCalled = true return providedBatch, nil @@ -1004,18 +1004,18 @@ func TestMultiversXToEthBridgeExecutor_GetAndStoreBatchFromMultiversX(t *testing } executor, _ := NewBridgeExecutor(args) - batch, err := executor.GetBatchFromMultiversX(context.Background()) + batch, err := executor.GetBatchFromKC(context.Background()) assert.True(t, wasCalled) assert.Equal(t, providedBatch, batch) assert.Nil(t, err) - err = executor.StoreBatchFromMultiversX(batch) + err = executor.StoreBatchFromKC(batch) assert.Equal(t, providedBatch, executor.batch) assert.Nil(t, err) }) } -func TestMultiversXToEthBridgeExecutor_GetAndStoreActionIDForProposeSetStatusFromMultiversX(t *testing.T) { +func TestKCToEthBridgeExecutor_GetAndStoreActionIDForProposeSetStatusFromKC(t *testing.T) { t.Parallel() t.Run("nil batch should error", func(t *testing.T) { @@ -1024,15 +1024,15 @@ func TestMultiversXToEthBridgeExecutor_GetAndStoreActionIDForProposeSetStatusFro args := createMockExecutorArgs() executor, _ := NewBridgeExecutor(args) - actionId, err := executor.GetAndStoreActionIDForProposeSetStatusFromMultiversX(context.Background()) + actionId, err := executor.GetAndStoreActionIDForProposeSetStatusFromKC(context.Background()) assert.Equal(t, ErrNilBatch, err) assert.Equal(t, InvalidActionID, actionId) }) - t.Run("GetAndStoreActionIDForProposeSetStatusFromMultiversX fails", func(t *testing.T) { + t.Run("GetAndStoreActionIDForProposeSetStatusFromKC fails", func(t *testing.T) { t.Parallel() args := createMockExecutorArgs() - args.MultiversXClient = &bridgeTests.MultiversXClientStub{ + args.KCClient = &bridgeTests.KCClientStub{ GetActionIDForSetStatusOnPendingTransferCalled: func(ctx context.Context, batch *bridgeCore.TransferBatch) (uint64, error) { return uint64(0), expectedErr }, @@ -1040,7 +1040,7 @@ func TestMultiversXToEthBridgeExecutor_GetAndStoreActionIDForProposeSetStatusFro executor, _ := NewBridgeExecutor(args) executor.batch = providedBatch - _, err := executor.GetAndStoreActionIDForProposeSetStatusFromMultiversX(context.Background()) + _, err := executor.GetAndStoreActionIDForProposeSetStatusFromKC(context.Background()) assert.Equal(t, expectedErr, err) }) t.Run("should work", func(t *testing.T) { @@ -1049,7 +1049,7 @@ func TestMultiversXToEthBridgeExecutor_GetAndStoreActionIDForProposeSetStatusFro wasCalled := false providedActionId := uint64(1123) args := createMockExecutorArgs() - args.MultiversXClient = &bridgeTests.MultiversXClientStub{ + args.KCClient = &bridgeTests.KCClientStub{ GetActionIDForSetStatusOnPendingTransferCalled: func(ctx context.Context, batch *bridgeCore.TransferBatch) (uint64, error) { wasCalled = true return providedActionId, nil @@ -1058,7 +1058,7 @@ func TestMultiversXToEthBridgeExecutor_GetAndStoreActionIDForProposeSetStatusFro executor, _ := NewBridgeExecutor(args) executor.batch = providedBatch - actionId, err := executor.GetAndStoreActionIDForProposeSetStatusFromMultiversX(context.Background()) + actionId, err := executor.GetAndStoreActionIDForProposeSetStatusFromKC(context.Background()) assert.True(t, wasCalled) assert.Equal(t, providedActionId, actionId) assert.Nil(t, err) @@ -1068,7 +1068,7 @@ func TestMultiversXToEthBridgeExecutor_GetAndStoreActionIDForProposeSetStatusFro }) } -func TestMultiversXToEthBridgeExecutor_WasSetStatusProposedOnMultiversX(t *testing.T) { +func TestKCToEthBridgeExecutor_WasSetStatusProposedOnKC(t *testing.T) { t.Parallel() t.Run("nil batch should error", func(t *testing.T) { @@ -1077,15 +1077,15 @@ func TestMultiversXToEthBridgeExecutor_WasSetStatusProposedOnMultiversX(t *testi args := createMockExecutorArgs() executor, _ := NewBridgeExecutor(args) - wasProposed, err := executor.WasSetStatusProposedOnMultiversX(context.Background()) + wasProposed, err := executor.WasSetStatusProposedOnKC(context.Background()) assert.Equal(t, ErrNilBatch, err) assert.False(t, wasProposed) }) - t.Run("WasSetStatusProposedOnMultiversX fails", func(t *testing.T) { + t.Run("WasSetStatusProposedOnKC fails", func(t *testing.T) { t.Parallel() args := createMockExecutorArgs() - args.MultiversXClient = &bridgeTests.MultiversXClientStub{ + args.KCClient = &bridgeTests.KCClientStub{ WasProposedSetStatusCalled: func(ctx context.Context, batch *bridgeCore.TransferBatch) (bool, error) { return false, expectedErr }, @@ -1093,7 +1093,7 @@ func TestMultiversXToEthBridgeExecutor_WasSetStatusProposedOnMultiversX(t *testi executor, _ := NewBridgeExecutor(args) executor.batch = providedBatch - _, err := executor.WasSetStatusProposedOnMultiversX(context.Background()) + _, err := executor.WasSetStatusProposedOnKC(context.Background()) assert.Equal(t, expectedErr, err) }) t.Run("should work", func(t *testing.T) { @@ -1101,7 +1101,7 @@ func TestMultiversXToEthBridgeExecutor_WasSetStatusProposedOnMultiversX(t *testi wasCalled := false args := createMockExecutorArgs() - args.MultiversXClient = &bridgeTests.MultiversXClientStub{ + args.KCClient = &bridgeTests.KCClientStub{ WasProposedSetStatusCalled: func(ctx context.Context, batch *bridgeCore.TransferBatch) (bool, error) { assert.True(t, providedBatch == batch) wasCalled = true @@ -1111,14 +1111,14 @@ func TestMultiversXToEthBridgeExecutor_WasSetStatusProposedOnMultiversX(t *testi executor, _ := NewBridgeExecutor(args) executor.batch = providedBatch - wasProposed, err := executor.WasSetStatusProposedOnMultiversX(context.Background()) + wasProposed, err := executor.WasSetStatusProposedOnKC(context.Background()) assert.True(t, wasCalled) assert.True(t, wasProposed) assert.Nil(t, err) }) } -func TestEthToMultiversXBridgeExecutor_ProposeSetStatusOnMultiversX(t *testing.T) { +func TestEthToKCBridgeExecutor_ProposeSetStatusOnKC(t *testing.T) { t.Parallel() t.Run("nil batch should error", func(t *testing.T) { @@ -1127,14 +1127,14 @@ func TestEthToMultiversXBridgeExecutor_ProposeSetStatusOnMultiversX(t *testing.T args := createMockExecutorArgs() executor, _ := NewBridgeExecutor(args) - err := executor.ProposeSetStatusOnMultiversX(context.Background()) + err := executor.ProposeSetStatusOnKC(context.Background()) assert.Equal(t, ErrNilBatch, err) }) - t.Run("ProposeSetStatusOnMultiversX fails", func(t *testing.T) { + t.Run("ProposeSetStatusOnKC fails", func(t *testing.T) { t.Parallel() args := createMockExecutorArgs() - args.MultiversXClient = &bridgeTests.MultiversXClientStub{ + args.KCClient = &bridgeTests.KCClientStub{ ProposeSetStatusCalled: func(ctx context.Context, batch *bridgeCore.TransferBatch) (string, error) { return "", expectedErr }, @@ -1142,7 +1142,7 @@ func TestEthToMultiversXBridgeExecutor_ProposeSetStatusOnMultiversX(t *testing.T executor, _ := NewBridgeExecutor(args) executor.batch = providedBatch - err := executor.ProposeSetStatusOnMultiversX(context.Background()) + err := executor.ProposeSetStatusOnKC(context.Background()) assert.Equal(t, expectedErr, err) }) t.Run("should work", func(t *testing.T) { @@ -1150,7 +1150,7 @@ func TestEthToMultiversXBridgeExecutor_ProposeSetStatusOnMultiversX(t *testing.T wasCalled := false args := createMockExecutorArgs() - args.MultiversXClient = &bridgeTests.MultiversXClientStub{ + args.KCClient = &bridgeTests.KCClientStub{ ProposeSetStatusCalled: func(ctx context.Context, batch *bridgeCore.TransferBatch) (string, error) { assert.True(t, providedBatch == batch) wasCalled = true @@ -1162,13 +1162,13 @@ func TestEthToMultiversXBridgeExecutor_ProposeSetStatusOnMultiversX(t *testing.T executor, _ := NewBridgeExecutor(args) executor.batch = providedBatch - err := executor.ProposeSetStatusOnMultiversX(context.Background()) + err := executor.ProposeSetStatusOnKC(context.Background()) assert.Nil(t, err) assert.True(t, wasCalled) }) } -func TestMultiversXToEthBridgeExecutor_MyTurnAsLeader(t *testing.T) { +func TestKCToEthBridgeExecutor_MyTurnAsLeader(t *testing.T) { t.Parallel() args := createMockExecutorArgs() @@ -1185,7 +1185,7 @@ func TestMultiversXToEthBridgeExecutor_MyTurnAsLeader(t *testing.T) { assert.True(t, wasCalled) } -func TestMultiversXToEthBridgeExecutor_WasTransferPerformedOnEthereum(t *testing.T) { +func TestKCToEthBridgeExecutor_WasTransferPerformedOnEthereum(t *testing.T) { t.Parallel() t.Run("nil batch should error", func(t *testing.T) { @@ -1236,7 +1236,7 @@ func TestMultiversXToEthBridgeExecutor_WasTransferPerformedOnEthereum(t *testing }) } -func TestMultiversXToEthBridgeExecutor_SignTransferOnEthereum(t *testing.T) { +func TestKCToEthBridgeExecutor_SignTransferOnEthereum(t *testing.T) { t.Parallel() t.Run("nil batch should error", func(t *testing.T) { @@ -1288,7 +1288,7 @@ func TestMultiversXToEthBridgeExecutor_SignTransferOnEthereum(t *testing.T) { }) } -func TestMultiversXToEthBridgeExecutor_PerformTransferOnEthereum(t *testing.T) { +func TestKCToEthBridgeExecutor_PerformTransferOnEthereum(t *testing.T) { t.Parallel() t.Run("nil batch should error", func(t *testing.T) { @@ -1354,7 +1354,7 @@ func TestMultiversXToEthBridgeExecutor_PerformTransferOnEthereum(t *testing.T) { assert.Equal(t, providedBatch.Deposits[i].Nonce, batch.Nonces[i].Uint64()) assert.Equal(t, providedBatch.Deposits[i].ToBytes, batch.Recipients[i].Bytes()) assert.Equal(t, providedBatch.Deposits[i].SourceTokenBytes, batch.EthTokens[i].Bytes()) - assert.Equal(t, providedBatch.Deposits[i].DestinationTokenBytes, batch.MvxTokenBytes[i]) + assert.Equal(t, providedBatch.Deposits[i].DestinationTokenBytes, batch.KdaTokenBytes[i]) } assert.True(t, providedQuorum == quorum) @@ -1373,7 +1373,7 @@ func TestMultiversXToEthBridgeExecutor_PerformTransferOnEthereum(t *testing.T) { }) } -func TestMultiversXToEthBridgeExecutor_IsQuorumReachedOnEthereum(t *testing.T) { +func TestKCToEthBridgeExecutor_IsQuorumReachedOnEthereum(t *testing.T) { t.Parallel() t.Run("ProcessQuorumReachedOnEthereum fails", func(t *testing.T) { @@ -1412,7 +1412,7 @@ func TestMultiversXToEthBridgeExecutor_IsQuorumReachedOnEthereum(t *testing.T) { }) } -func TestMultiversXToEthBridgeExecutor_RetriesCountOnEthereum(t *testing.T) { +func TestKCToEthBridgeExecutor_RetriesCountOnEthereum(t *testing.T) { t.Parallel() args := createMockExecutorArgs() @@ -1735,7 +1735,7 @@ func TestResolveNewDepositsStatuses(t *testing.T) { }) } -func TestEthToMultiversXBridgeExecutor_setExecutionMessageInStatusHandler(t *testing.T) { +func TestEthToKCBridgeExecutor_setExecutionMessageInStatusHandler(t *testing.T) { t.Parallel() expectedString := "DEBUG: message a = 1 b = ff c = str" @@ -1773,19 +1773,19 @@ func TestSignaturesHolder_ClearStoredSignatures(t *testing.T) { assert.True(t, wasCalled) } -func TestBridgeExecutor_CheckMultiversXClientAvailability(t *testing.T) { +func TestBridgeExecutor_CheckKCClientAvailability(t *testing.T) { t.Parallel() checkAvailabilityCalled := false args := createMockExecutorArgs() - args.MultiversXClient = &bridgeTests.MultiversXClientStub{ + args.KCClient = &bridgeTests.KCClientStub{ CheckClientAvailabilityCalled: func(ctx context.Context) error { checkAvailabilityCalled = true return nil }, } executor, _ := NewBridgeExecutor(args) - err := executor.CheckMultiversXClientAvailability(context.Background()) + err := executor.CheckKCClientAvailability(context.Background()) assert.Nil(t, err) assert.True(t, checkAvailabilityCalled) @@ -1818,10 +1818,10 @@ func TestBridgeExecutor_CheckAvailableTokens(t *testing.T) { common.BytesToAddress([]byte("eth token 2")), } - mvxTokens := [][]byte{ - []byte("mvx token 1"), - []byte("mvx token 1"), - []byte("mvx token 2"), + kdaTokens := [][]byte{ + []byte("kda token 1"), + []byte("kda token 1"), + []byte("kda token 2"), } amounts := []*big.Int{ @@ -1830,17 +1830,17 @@ func TestBridgeExecutor_CheckAvailableTokens(t *testing.T) { big.NewInt(39), } - testDirection := batchProcessor.FromMultiversX + testDirection := batchProcessor.FromKC checkedEthTokens := make([]common.Address, 0) - checkedMvxTokens := make([][]byte, 0) + checkedKdaTokens := make([][]byte, 0) checkedAmounts := make([]*big.Int, 0) args := createMockExecutorArgs() var returnedError error args.BalanceValidator = &testsCommon.BalanceValidatorStub{ - CheckTokenCalled: func(ctx context.Context, ethToken common.Address, mvxToken []byte, amount *big.Int, direction batchProcessor.Direction) error { + CheckTokenCalled: func(ctx context.Context, ethToken common.Address, kdaToken []byte, amount *big.Int, direction batchProcessor.Direction) error { checkedEthTokens = append(checkedEthTokens, ethToken) - checkedMvxTokens = append(checkedMvxTokens, mvxToken) + checkedKdaTokens = append(checkedKdaTokens, kdaToken) checkedAmounts = append(checkedAmounts, amount) assert.Equal(t, testDirection, direction) @@ -1854,17 +1854,17 @@ func TestBridgeExecutor_CheckAvailableTokens(t *testing.T) { t.Run("check validator does not error", func(t *testing.T) { returnedError = nil checkedEthTokens = make([]common.Address, 0) - checkedMvxTokens = make([][]byte, 0) + checkedKdaTokens = make([][]byte, 0) checkedAmounts = make([]*big.Int, 0) - err := executor.CheckAvailableTokens(context.Background(), ethTokens, mvxTokens, amounts, testDirection) + err := executor.CheckAvailableTokens(context.Background(), ethTokens, kdaTokens, amounts, testDirection) expectedEthTokens := []common.Address{ common.BytesToAddress([]byte("eth token 1")), common.BytesToAddress([]byte("eth token 2")), } - expectedMvxTokens := [][]byte{ - []byte("mvx token 1"), - []byte("mvx token 2"), + expectedKdaTokens := [][]byte{ + []byte("kda token 1"), + []byte("kda token 2"), } expectedAmounts := []*big.Int{ big.NewInt(75), // 37 + 38 @@ -1873,21 +1873,21 @@ func TestBridgeExecutor_CheckAvailableTokens(t *testing.T) { assert.Nil(t, err) assert.Equal(t, expectedEthTokens, checkedEthTokens) - assert.Equal(t, expectedMvxTokens, checkedMvxTokens) + assert.Equal(t, expectedKdaTokens, checkedKdaTokens) assert.Equal(t, expectedAmounts, checkedAmounts) }) t.Run("check validator returns error", func(t *testing.T) { returnedError = fmt.Errorf("expected error") checkedEthTokens = make([]common.Address, 0) - checkedMvxTokens = make([][]byte, 0) + checkedKdaTokens = make([][]byte, 0) checkedAmounts = make([]*big.Int, 0) - err := executor.CheckAvailableTokens(context.Background(), ethTokens, mvxTokens, amounts, testDirection) + err := executor.CheckAvailableTokens(context.Background(), ethTokens, kdaTokens, amounts, testDirection) expectedEthTokens := []common.Address{ common.BytesToAddress([]byte("eth token 1")), // only the first token is checked } - expectedMvxTokens := [][]byte{ - []byte("mvx token 1"), + expectedKdaTokens := [][]byte{ + []byte("kda token 1"), } expectedAmounts := []*big.Int{ big.NewInt(75), // 37 + 38 @@ -1895,7 +1895,7 @@ func TestBridgeExecutor_CheckAvailableTokens(t *testing.T) { assert.Equal(t, returnedError, err) assert.Equal(t, expectedEthTokens, checkedEthTokens) - assert.Equal(t, expectedMvxTokens, checkedMvxTokens) + assert.Equal(t, expectedKdaTokens, checkedKdaTokens) assert.Equal(t, expectedAmounts, checkedAmounts) }) } diff --git a/bridges/ethKC/constants.go b/bridges/ethKC/constants.go new file mode 100644 index 00000000..03546def --- /dev/null +++ b/bridges/ethKC/constants.go @@ -0,0 +1,10 @@ +package ethKC + +import ( + "time" +) + +// InvalidActionID represents an invalid id for an action on KC +const InvalidActionID = uint64(0) + +const durationLimit = time.Second diff --git a/bridges/ethMultiversX/converters.go b/bridges/ethKC/converters.go similarity index 90% rename from bridges/ethMultiversX/converters.go rename to bridges/ethKC/converters.go index 03b76741..39e19b18 100644 --- a/bridges/ethMultiversX/converters.go +++ b/bridges/ethKC/converters.go @@ -1,4 +1,4 @@ -package ethmultiversx +package ethKC import ( "encoding/hex" diff --git a/bridges/ethMultiversX/disabled/disabledSignaturesHolder.go b/bridges/ethKC/disabled/disabledSignaturesHolder.go similarity index 100% rename from bridges/ethMultiversX/disabled/disabledSignaturesHolder.go rename to bridges/ethKC/disabled/disabledSignaturesHolder.go diff --git a/bridges/ethMultiversX/disabled/disabledSignaturesHolder_test.go b/bridges/ethKC/disabled/disabledSignaturesHolder_test.go similarity index 100% rename from bridges/ethMultiversX/disabled/disabledSignaturesHolder_test.go rename to bridges/ethKC/disabled/disabledSignaturesHolder_test.go diff --git a/bridges/ethMultiversX/errors.go b/bridges/ethKC/errors.go similarity index 90% rename from bridges/ethMultiversX/errors.go rename to bridges/ethKC/errors.go index 6986f858..d1555f25 100644 --- a/bridges/ethMultiversX/errors.go +++ b/bridges/ethKC/errors.go @@ -1,4 +1,4 @@ -package ethmultiversx +package ethKC import "errors" @@ -11,8 +11,8 @@ var ErrInvalidDepositNonce = errors.New("invalid deposit nonce") // ErrNilLogger signals that a nil logger has been provided var ErrNilLogger = errors.New("nil logger") -// ErrNilMultiversXClient signals that a nil MultiversX client has been provided -var ErrNilMultiversXClient = errors.New("nil MultiversX client") +// ErrNilKCClient signals that a nil Klever Blockchain client has been provided +var ErrNilKCClient = errors.New("nil Klever Blockchain client") // ErrNilEthereumClient signals that a nil Ethereum client has been provided var ErrNilEthereumClient = errors.New("nil Ethereum client") diff --git a/bridges/ethMultiversX/interface.go b/bridges/ethKC/interface.go similarity index 93% rename from bridges/ethMultiversX/interface.go rename to bridges/ethKC/interface.go index 352592ce..732aba28 100644 --- a/bridges/ethMultiversX/interface.go +++ b/bridges/ethKC/interface.go @@ -1,4 +1,4 @@ -package ethmultiversx +package ethKC import ( "context" @@ -10,8 +10,8 @@ import ( "github.com/klever-io/klv-bridge-eth-go/core/batchProcessor" ) -// MultiversXClient defines the behavior of the MultiversX client able to communicate with the MultiversX chain -type MultiversXClient interface { +// KCClient defines the behavior of the Klever Blockchain client able to communicate with the Klever Blockchain chain +type KCClient interface { GetPendingBatch(ctx context.Context) (*bridgeCore.TransferBatch, error) GetBatch(ctx context.Context, batchID uint64) (*bridgeCore.TransferBatch, error) GetCurrentBatchAsDataBytes(ctx context.Context) ([][]byte, error) @@ -24,7 +24,7 @@ type MultiversXClient interface { GetActionIDForSetStatusOnPendingTransfer(ctx context.Context, batch *bridgeCore.TransferBatch) (uint64, error) GetLastExecutedEthBatchID(ctx context.Context) (uint64, error) GetLastExecutedEthTxID(ctx context.Context) (uint64, error) - GetLastMvxBatchID(ctx context.Context) (uint64, error) + GetLastKCBatchID(ctx context.Context) (uint64, error) GetCurrentNonce(ctx context.Context) (uint64, error) ProposeSetStatus(ctx context.Context, batch *bridgeCore.TransferBatch) (string, error) @@ -81,6 +81,6 @@ type SignaturesHolder interface { // BalanceValidator defines the operations for a component that can validate the balances on both chains for a provided token type BalanceValidator interface { - CheckToken(ctx context.Context, ethToken common.Address, mvxToken []byte, amount *big.Int, direction batchProcessor.Direction) error + CheckToken(ctx context.Context, ethToken common.Address, kdaToken []byte, amount *big.Int, direction batchProcessor.Direction) error IsInterfaceNil() bool } diff --git a/bridges/ethMultiversX/signaturesHolder.go b/bridges/ethKC/signaturesHolder.go similarity index 98% rename from bridges/ethMultiversX/signaturesHolder.go rename to bridges/ethKC/signaturesHolder.go index c1c17764..6c19c9b9 100644 --- a/bridges/ethMultiversX/signaturesHolder.go +++ b/bridges/ethKC/signaturesHolder.go @@ -1,4 +1,4 @@ -package ethmultiversx +package ethKC import ( "bytes" diff --git a/bridges/ethMultiversX/signaturesHolder_test.go b/bridges/ethKC/signaturesHolder_test.go similarity index 99% rename from bridges/ethMultiversX/signaturesHolder_test.go rename to bridges/ethKC/signaturesHolder_test.go index 9e945d34..e150b672 100644 --- a/bridges/ethMultiversX/signaturesHolder_test.go +++ b/bridges/ethKC/signaturesHolder_test.go @@ -1,4 +1,4 @@ -package ethmultiversx +package ethKC import ( "bytes" diff --git a/bridges/ethMultiversX/steps/ethToMultiversX/constants.go b/bridges/ethKC/steps/ethToKC/constants.go similarity index 56% rename from bridges/ethMultiversX/steps/ethToMultiversX/constants.go rename to bridges/ethKC/steps/ethToKC/constants.go index 32cf2aa5..be09bb96 100644 --- a/bridges/ethMultiversX/steps/ethToMultiversX/constants.go +++ b/bridges/ethKC/steps/ethToKC/constants.go @@ -1,21 +1,21 @@ -package ethtomultiversx +package ethtokc const ( // GettingPendingBatchFromEthereum is the step identifier for fetching the pending batch from the Ethereum chain GettingPendingBatchFromEthereum = "get pending batch from Ethereum" - // ProposingTransferOnMultiversX is the step identifier for proposing transfer on MultiversX - ProposingTransferOnMultiversX = "propose transfer" + // ProposingTransferOnKC is the step identifier for proposing transfer on KC + ProposingTransferOnKC = "propose transfer" - // SigningProposedTransferOnMultiversX is the step identifier for signing proposed transfer - SigningProposedTransferOnMultiversX = "sign proposed transfer" + // SigningProposedTransferOnKC is the step identifier for signing proposed transfer + SigningProposedTransferOnKC = "sign proposed transfer" // WaitingForQuorum is the step identifier for waiting until the quorum is reached WaitingForQuorum = "wait for quorum" - // PerformingActionID is the step identifier for performing the ActionID on MultiversX + // PerformingActionID is the step identifier for performing the ActionID on KC PerformingActionID = "perform action" - // NumSteps indicates how many steps the state machine for Ethereum -> MultiversX flow has + // NumSteps indicates how many steps the state machine for Ethereum -> KC flow has NumSteps = 5 ) diff --git a/bridges/ethMultiversX/steps/ethToMultiversX/semiIntegrated_test.go b/bridges/ethKC/steps/ethToKC/semiIntegrated_test.go similarity index 69% rename from bridges/ethMultiversX/steps/ethToMultiversX/semiIntegrated_test.go rename to bridges/ethKC/steps/ethToKC/semiIntegrated_test.go index afac9df7..9e3bb6dc 100644 --- a/bridges/ethMultiversX/steps/ethToMultiversX/semiIntegrated_test.go +++ b/bridges/ethKC/steps/ethToKC/semiIntegrated_test.go @@ -1,4 +1,4 @@ -package ethtomultiversx +package ethtokc import ( "context" @@ -6,7 +6,7 @@ import ( "fmt" "testing" - "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX/steps" + "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC/steps" bridgeCore "github.com/klever-io/klv-bridge-eth-go/core" bridgeTests "github.com/klever-io/klv-bridge-eth-go/testsCommon/bridge" "github.com/klever-io/klv-bridge-eth-go/testsCommon/stateMachine" @@ -15,19 +15,19 @@ import ( ) const ( - getAndStoreBatchFromEthereum = "GetAndStoreBatchFromEthereum" - getLastExecutedEthBatchIDFromMultiversX = "GetLastExecutedEthBatchIDFromMultiversX" - verifyLastDepositNonceExecutedOnEthereumBatch = "VerifyLastDepositNonceExecutedOnEthereumBatch" - wasTransferProposedOnMultiversX = "WasTransferProposedOnMultiversX" - wasActionSignedOnMultiversX = "WasActionSignedOnMultiversX" - signActionOnMultiversX = "SignActionOnMultiversX" - getAndStoreActionIDForProposeTransferOnMultiversX = "GetAndStoreActionIDForProposeTransferOnMultiversX" - ProcessMaxQuorumRetriesOnMultiversX = "ProcessMaxQuorumRetriesOnMultiversX" - resetRetriesCountOnMultiversX = "ResetRetriesCountOnMultiversX" - processQuorumReachedOnMultiversX = "ProcessQuorumReachedOnMultiversX" - wasActionPerformedOnMultiversX = "WasActionPerformedOnMultiversX" - proposeTransferOnMultiversX = "ProposeTransferOnMultiversX" - performActionOnMultiversX = "PerformActionOnMultiversX" + getAndStoreBatchFromEthereum = "GetAndStoreBatchFromEthereum" + getLastExecutedEthBatchIDFromKC = "GetLastExecutedEthBatchIDFromKC" + verifyLastDepositNonceExecutedOnEthereumBatch = "VerifyLastDepositNonceExecutedOnEthereumBatch" + wasTransferProposedOnKC = "WasTransferProposedOnKC" + wasActionSignedOnKC = "WasActionSignedOnKC" + signActionOnKC = "SignActionOnKC" + getAndStoreActionIDForProposeTransferOnKC = "GetAndStoreActionIDForProposeTransferOnKC" + ProcessMaxQuorumRetriesOnKC = "ProcessMaxQuorumRetriesOnKC" + resetRetriesCountOnKC = "ResetRetriesCountOnKC" + processQuorumReachedOnKC = "ProcessQuorumReachedOnKC" + wasActionPerformedOnKC = "WasActionPerformedOnKC" + proposeTransferOnKC = "ProposeTransferOnKC" + performActionOnKC = "PerformActionOnKC" ) var trueHandler = func() bool { return true } @@ -61,8 +61,8 @@ func createMockBridge(args argsBridgeStub) (*bridgeTests.BridgeExecutorStub, *er stub.MyTurnAsLeaderCalled = func() bool { return args.myTurnHandler() } - stub.GetAndStoreActionIDForProposeTransferOnMultiversXCalled = func(ctx context.Context) (uint64, error) { - if args.failingStep == getAndStoreActionIDForProposeTransferOnMultiversX { + stub.GetAndStoreActionIDForProposeTransferOnKCCalled = func(ctx context.Context) (uint64, error) { + if args.failingStep == getAndStoreActionIDForProposeTransferOnKC { return 0, errHandler.storeAndReturnError(expectedErr) } @@ -81,8 +81,8 @@ func createMockBridge(args argsBridgeStub) (*bridgeTests.BridgeExecutorStub, *er stub.GetStoredBatchCalled = func() *bridgeCore.TransferBatch { return &bridgeCore.TransferBatch{} } - stub.GetLastExecutedEthBatchIDFromMultiversXCalled = func(ctx context.Context) (uint64, error) { - if args.failingStep == getLastExecutedEthBatchIDFromMultiversX { + stub.GetLastExecutedEthBatchIDFromKCCalled = func(ctx context.Context) (uint64, error) { + if args.failingStep == getLastExecutedEthBatchIDFromKC { return 0, errHandler.storeAndReturnError(expectedErr) } @@ -95,56 +95,56 @@ func createMockBridge(args argsBridgeStub) (*bridgeTests.BridgeExecutorStub, *er return errHandler.storeAndReturnError(nil) } - stub.WasTransferProposedOnMultiversXCalled = func(ctx context.Context) (bool, error) { - if args.failingStep == wasTransferProposedOnMultiversX { + stub.WasTransferProposedOnKCCalled = func(ctx context.Context) (bool, error) { + if args.failingStep == wasTransferProposedOnKC { return false, errHandler.storeAndReturnError(expectedErr) } return args.wasTransferProposedHandler(), errHandler.storeAndReturnError(nil) } - stub.ProposeTransferOnMultiversXCalled = func(ctx context.Context) error { - if args.failingStep == proposeTransferOnMultiversX { + stub.ProposeTransferOnKCCalled = func(ctx context.Context) error { + if args.failingStep == proposeTransferOnKC { return errHandler.storeAndReturnError(expectedErr) } return errHandler.storeAndReturnError(nil) } - stub.WasActionSignedOnMultiversXCalled = func(ctx context.Context) (bool, error) { - if args.failingStep == wasActionSignedOnMultiversX { + stub.WasActionSignedOnKCCalled = func(ctx context.Context) (bool, error) { + if args.failingStep == wasActionSignedOnKC { return false, errHandler.storeAndReturnError(expectedErr) } return args.wasActionSigned(), errHandler.storeAndReturnError(nil) } - stub.SignActionOnMultiversXCalled = func(ctx context.Context) error { - if args.failingStep == signActionOnMultiversX { + stub.SignActionOnKCCalled = func(ctx context.Context) error { + if args.failingStep == signActionOnKC { return errHandler.storeAndReturnError(expectedErr) } return errHandler.storeAndReturnError(nil) } - stub.ProcessQuorumReachedOnMultiversXCalled = func(ctx context.Context) (bool, error) { - if args.failingStep == processQuorumReachedOnMultiversX { + stub.ProcessQuorumReachedOnKCCalled = func(ctx context.Context) (bool, error) { + if args.failingStep == processQuorumReachedOnKC { return false, errHandler.storeAndReturnError(expectedErr) } return args.isQuorumReachedHandler(), errHandler.storeAndReturnError(nil) } - stub.WasActionPerformedOnMultiversXCalled = func(ctx context.Context) (bool, error) { - if args.failingStep == wasActionPerformedOnMultiversX { + stub.WasActionPerformedOnKCCalled = func(ctx context.Context) (bool, error) { + if args.failingStep == wasActionPerformedOnKC { return false, errHandler.storeAndReturnError(expectedErr) } return args.wasActionIDPerformedHandler(), errHandler.storeAndReturnError(nil) } - stub.PerformActionOnMultiversXCalled = func(ctx context.Context) error { - if args.failingStep == performActionOnMultiversX { + stub.PerformActionOnKCCalled = func(ctx context.Context) error { + if args.failingStep == performActionOnKC { return errHandler.storeAndReturnError(expectedErr) } return errHandler.storeAndReturnError(nil) } - stub.ProcessMaxQuorumRetriesOnMultiversXCalled = func() bool { + stub.ProcessMaxQuorumRetriesOnKCCalled = func() bool { return args.maxRetriesReachedHandler() } @@ -183,23 +183,23 @@ func TestHappyCaseWhenLeader(t *testing.T) { require.Nil(t, err) } - assert.Equal(t, 4, executor.GetFunctionCounter(resetRetriesCountOnMultiversX)) - assert.Equal(t, 4, executor.GetFunctionCounter(getLastExecutedEthBatchIDFromMultiversX)) + assert.Equal(t, 4, executor.GetFunctionCounter(resetRetriesCountOnKC)) + assert.Equal(t, 4, executor.GetFunctionCounter(getLastExecutedEthBatchIDFromKC)) assert.Equal(t, 4, executor.GetFunctionCounter(getAndStoreBatchFromEthereum)) assert.Equal(t, 4, executor.GetFunctionCounter(verifyLastDepositNonceExecutedOnEthereumBatch)) - assert.Equal(t, 4, executor.GetFunctionCounter(wasTransferProposedOnMultiversX)) - assert.Equal(t, 4, executor.GetFunctionCounter(proposeTransferOnMultiversX)) + assert.Equal(t, 4, executor.GetFunctionCounter(wasTransferProposedOnKC)) + assert.Equal(t, 4, executor.GetFunctionCounter(proposeTransferOnKC)) - assert.Equal(t, 4, executor.GetFunctionCounter(getAndStoreActionIDForProposeTransferOnMultiversX)) - assert.Equal(t, 4, executor.GetFunctionCounter(wasActionSignedOnMultiversX)) - assert.Equal(t, 4, executor.GetFunctionCounter(signActionOnMultiversX)) + assert.Equal(t, 4, executor.GetFunctionCounter(getAndStoreActionIDForProposeTransferOnKC)) + assert.Equal(t, 4, executor.GetFunctionCounter(wasActionSignedOnKC)) + assert.Equal(t, 4, executor.GetFunctionCounter(signActionOnKC)) - assert.Equal(t, 4, executor.GetFunctionCounter(ProcessMaxQuorumRetriesOnMultiversX)) - assert.Equal(t, 4, executor.GetFunctionCounter(processQuorumReachedOnMultiversX)) + assert.Equal(t, 4, executor.GetFunctionCounter(ProcessMaxQuorumRetriesOnKC)) + assert.Equal(t, 4, executor.GetFunctionCounter(processQuorumReachedOnKC)) - assert.Equal(t, 4, executor.GetFunctionCounter(wasActionPerformedOnMultiversX)) - assert.Equal(t, 0, executor.GetFunctionCounter(performActionOnMultiversX)) + assert.Equal(t, 4, executor.GetFunctionCounter(wasActionPerformedOnKC)) + assert.Equal(t, 0, executor.GetFunctionCounter(performActionOnKC)) assert.Nil(t, eh.lastError) } @@ -229,40 +229,40 @@ func TestHappyCaseWhenLeaderAndActionIdNotPerformed(t *testing.T) { require.Nil(t, err) } - assert.Equal(t, 4, executor.GetFunctionCounter(resetRetriesCountOnMultiversX)) - assert.Equal(t, 4, executor.GetFunctionCounter(getLastExecutedEthBatchIDFromMultiversX)) + assert.Equal(t, 4, executor.GetFunctionCounter(resetRetriesCountOnKC)) + assert.Equal(t, 4, executor.GetFunctionCounter(getLastExecutedEthBatchIDFromKC)) assert.Equal(t, 4, executor.GetFunctionCounter(getAndStoreBatchFromEthereum)) assert.Equal(t, 4, executor.GetFunctionCounter(verifyLastDepositNonceExecutedOnEthereumBatch)) - assert.Equal(t, 4, executor.GetFunctionCounter(wasTransferProposedOnMultiversX)) - assert.Equal(t, 4, executor.GetFunctionCounter(proposeTransferOnMultiversX)) + assert.Equal(t, 4, executor.GetFunctionCounter(wasTransferProposedOnKC)) + assert.Equal(t, 4, executor.GetFunctionCounter(proposeTransferOnKC)) - assert.Equal(t, 4, executor.GetFunctionCounter(getAndStoreActionIDForProposeTransferOnMultiversX)) - assert.Equal(t, 4, executor.GetFunctionCounter(wasActionSignedOnMultiversX)) - assert.Equal(t, 4, executor.GetFunctionCounter(signActionOnMultiversX)) + assert.Equal(t, 4, executor.GetFunctionCounter(getAndStoreActionIDForProposeTransferOnKC)) + assert.Equal(t, 4, executor.GetFunctionCounter(wasActionSignedOnKC)) + assert.Equal(t, 4, executor.GetFunctionCounter(signActionOnKC)) - assert.Equal(t, 4, executor.GetFunctionCounter(ProcessMaxQuorumRetriesOnMultiversX)) - assert.Equal(t, 4, executor.GetFunctionCounter(processQuorumReachedOnMultiversX)) + assert.Equal(t, 4, executor.GetFunctionCounter(ProcessMaxQuorumRetriesOnKC)) + assert.Equal(t, 4, executor.GetFunctionCounter(processQuorumReachedOnKC)) - assert.Equal(t, 4, executor.GetFunctionCounter(wasActionPerformedOnMultiversX)) - assert.Equal(t, 1, executor.GetFunctionCounter(performActionOnMultiversX)) + assert.Equal(t, 4, executor.GetFunctionCounter(wasActionPerformedOnKC)) + assert.Equal(t, 1, executor.GetFunctionCounter(performActionOnKC)) assert.Nil(t, eh.lastError) } func TestOneStepErrors_ShouldReturnToPendingBatch(t *testing.T) { stepsThatCanError := []bridgeCore.StepIdentifier{ - getAndStoreActionIDForProposeTransferOnMultiversX, + getAndStoreActionIDForProposeTransferOnKC, getAndStoreBatchFromEthereum, - getLastExecutedEthBatchIDFromMultiversX, + getLastExecutedEthBatchIDFromKC, verifyLastDepositNonceExecutedOnEthereumBatch, - wasTransferProposedOnMultiversX, - proposeTransferOnMultiversX, - wasTransferProposedOnMultiversX, - signActionOnMultiversX, - processQuorumReachedOnMultiversX, - wasActionPerformedOnMultiversX, - performActionOnMultiversX, + wasTransferProposedOnKC, + proposeTransferOnKC, + wasTransferProposedOnKC, + signActionOnKC, + processQuorumReachedOnKC, + wasActionPerformedOnKC, + performActionOnKC, } for _, stepThatError := range stepsThatCanError { diff --git a/bridges/ethMultiversX/steps/ethToMultiversX/step01GetPending.go b/bridges/ethKC/steps/ethToKC/step01GetPending.go similarity index 79% rename from bridges/ethMultiversX/steps/ethToMultiversX/step01GetPending.go rename to bridges/ethKC/steps/ethToKC/step01GetPending.go index ae85757e..9f1a653a 100644 --- a/bridges/ethMultiversX/steps/ethToMultiversX/step01GetPending.go +++ b/bridges/ethKC/steps/ethToKC/step01GetPending.go @@ -1,9 +1,9 @@ -package ethtomultiversx +package ethtokc import ( "context" - "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX/steps" + "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC/steps" "github.com/klever-io/klv-bridge-eth-go/core" "github.com/klever-io/klv-bridge-eth-go/core/batchProcessor" logger "github.com/multiversx/mx-chain-logger-go" @@ -15,16 +15,16 @@ type getPendingStep struct { // Execute will execute this step returning the next step to be executed func (step *getPendingStep) Execute(ctx context.Context) core.StepIdentifier { - err := step.bridge.CheckMultiversXClientAvailability(ctx) + err := step.bridge.CheckKCClientAvailability(ctx) if err != nil { - step.bridge.PrintInfo(logger.LogDebug, "MultiversX client unavailable", "message", err) + step.bridge.PrintInfo(logger.LogDebug, "Klever Blockchain client unavailable", "message", err) } err = step.bridge.CheckEthereumClientAvailability(ctx) if err != nil { step.bridge.PrintInfo(logger.LogDebug, "Ethereum client unavailable", "message", err) } - step.bridge.ResetRetriesCountOnMultiversX() - lastEthBatchExecuted, err := step.bridge.GetLastExecutedEthBatchIDFromMultiversX(ctx) + step.bridge.ResetRetriesCountOnKC() + lastEthBatchExecuted, err := step.bridge.GetLastExecutedEthBatchIDFromKC(ctx) if err != nil { step.bridge.PrintInfo(logger.LogError, "error fetching last executed eth batch ID", "error", err) return step.Identifier() @@ -38,7 +38,7 @@ func (step *getPendingStep) Execute(ctx context.Context) core.StepIdentifier { batch := step.bridge.GetStoredBatch() if batch == nil { - step.bridge.PrintInfo(logger.LogDebug, "no new batch found on eth", "last executed on MultiversX", lastEthBatchExecuted) + step.bridge.PrintInfo(logger.LogDebug, "no new batch found on eth", "last executed on KC", lastEthBatchExecuted) return step.Identifier() } @@ -50,14 +50,14 @@ func (step *getPendingStep) Execute(ctx context.Context) core.StepIdentifier { return step.Identifier() } - argLists := batchProcessor.ExtractListEthToMvx(batch) - err = step.bridge.CheckAvailableTokens(ctx, argLists.EthTokens, argLists.MvxTokenBytes, argLists.Amounts, argLists.Direction) + argLists := batchProcessor.ExtractListEthToKlv(batch) + err = step.bridge.CheckAvailableTokens(ctx, argLists.EthTokens, argLists.KdaTokenBytes, argLists.Amounts, argLists.Direction) if err != nil { step.bridge.PrintInfo(logger.LogError, "error checking available tokens", "error", err, "batch", batch.String()) return step.Identifier() } - return ProposingTransferOnMultiversX + return ProposingTransferOnKC } // Identifier returns the step's identifier diff --git a/bridges/ethMultiversX/steps/ethToMultiversX/step01GetPending_test.go b/bridges/ethKC/steps/ethToKC/step01GetPending_test.go similarity index 84% rename from bridges/ethMultiversX/steps/ethToMultiversX/step01GetPending_test.go rename to bridges/ethKC/steps/ethToKC/step01GetPending_test.go index bcdfd6bb..bcbf003e 100644 --- a/bridges/ethMultiversX/steps/ethToMultiversX/step01GetPending_test.go +++ b/bridges/ethKC/steps/ethToKC/step01GetPending_test.go @@ -1,4 +1,4 @@ -package ethtomultiversx +package ethtokc import ( "context" @@ -33,10 +33,10 @@ var testBatch = &bridgeCore.TransferBatch{ func TestExecuteGetPending(t *testing.T) { t.Parallel() - t.Run("error on GetLastExecutedEthBatchIDFromMultiversX", func(t *testing.T) { + t.Run("error on GetLastExecutedEthBatchIDFromKC", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutor() - bridgeStub.GetLastExecutedEthBatchIDFromMultiversXCalled = func(ctx context.Context) (uint64, error) { + bridgeStub.GetLastExecutedEthBatchIDFromKCCalled = func(ctx context.Context) (uint64, error) { return 1122, expectedError } @@ -51,7 +51,7 @@ func TestExecuteGetPending(t *testing.T) { t.Run("error on GetAndStoreBatchFromEthereum", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutor() - bridgeStub.GetLastExecutedEthBatchIDFromMultiversXCalled = func(ctx context.Context) (uint64, error) { + bridgeStub.GetLastExecutedEthBatchIDFromKCCalled = func(ctx context.Context) (uint64, error) { return 1122, nil } bridgeStub.GetAndStoreBatchFromEthereumCalled = func(ctx context.Context, nonce uint64) error { @@ -68,7 +68,7 @@ func TestExecuteGetPending(t *testing.T) { }) t.Run("nil on GetStoredBatch", func(t *testing.T) { bridgeStub := createStubExecutor() - bridgeStub.GetLastExecutedEthBatchIDFromMultiversXCalled = func(ctx context.Context) (uint64, error) { + bridgeStub.GetLastExecutedEthBatchIDFromKCCalled = func(ctx context.Context) (uint64, error) { return 1122, nil } bridgeStub.GetAndStoreBatchFromEthereumCalled = func(ctx context.Context, nonce uint64) error { @@ -89,7 +89,7 @@ func TestExecuteGetPending(t *testing.T) { t.Run("error on VerifyLastDepositNonceExecutedOnEthereumBatch", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutor() - bridgeStub.GetLastExecutedEthBatchIDFromMultiversXCalled = func(ctx context.Context) (uint64, error) { + bridgeStub.GetLastExecutedEthBatchIDFromKCCalled = func(ctx context.Context) (uint64, error) { return 1122, nil } bridgeStub.GetAndStoreBatchFromEthereumCalled = func(ctx context.Context, nonce uint64) error { @@ -113,10 +113,10 @@ func TestExecuteGetPending(t *testing.T) { t.Run("error on CheckAvailableTokens", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutor() - bridgeStub.CheckAvailableTokensCalled = func(ctx context.Context, ethTokens []common.Address, mvxTokens [][]byte, amounts []*big.Int, direction batchProcessor.Direction) error { + bridgeStub.CheckAvailableTokensCalled = func(ctx context.Context, ethTokens []common.Address, kdaTokens [][]byte, amounts []*big.Int, direction batchProcessor.Direction) error { return expectedError } - bridgeStub.GetLastExecutedEthBatchIDFromMultiversXCalled = func(ctx context.Context) (uint64, error) { + bridgeStub.GetLastExecutedEthBatchIDFromKCCalled = func(ctx context.Context) (uint64, error) { return 1122, nil } bridgeStub.GetAndStoreBatchFromEthereumCalled = func(ctx context.Context, nonce uint64) error { @@ -140,7 +140,7 @@ func TestExecuteGetPending(t *testing.T) { t.Run("should work", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutor() - bridgeStub.GetLastExecutedEthBatchIDFromMultiversXCalled = func(ctx context.Context) (uint64, error) { + bridgeStub.GetLastExecutedEthBatchIDFromKCCalled = func(ctx context.Context) (uint64, error) { return 1122, nil } bridgeStub.GetAndStoreBatchFromEthereumCalled = func(ctx context.Context, nonce uint64) error { @@ -153,7 +153,7 @@ func TestExecuteGetPending(t *testing.T) { return nil } checkAvailableTokensCalled := false - bridgeStub.CheckAvailableTokensCalled = func(ctx context.Context, ethTokens []common.Address, mvxTokens [][]byte, amounts []*big.Int, direction batchProcessor.Direction) error { + bridgeStub.CheckAvailableTokensCalled = func(ctx context.Context, ethTokens []common.Address, kdaTokens [][]byte, amounts []*big.Int, direction batchProcessor.Direction) error { checkAvailableTokensCalled = true return nil } @@ -168,7 +168,7 @@ func TestExecuteGetPending(t *testing.T) { assert.False(t, step.IsInterfaceNil()) // Test next step - expectedStepIdentifier = ProposingTransferOnMultiversX + expectedStepIdentifier = ProposingTransferOnKC stepIdentifier := step.Execute(context.Background()) assert.Equal(t, expectedStepIdentifier, stepIdentifier) assert.Equal(t, testBatch, step.bridge.GetStoredBatch()) diff --git a/bridges/ethMultiversX/steps/ethToMultiversX/step02ProposeTransfer.go b/bridges/ethKC/steps/ethToKC/step02ProposeTransfer.go similarity index 75% rename from bridges/ethMultiversX/steps/ethToMultiversX/step02ProposeTransfer.go rename to bridges/ethKC/steps/ethToKC/step02ProposeTransfer.go index a5e076e2..7f5e8e5a 100644 --- a/bridges/ethMultiversX/steps/ethToMultiversX/step02ProposeTransfer.go +++ b/bridges/ethKC/steps/ethToKC/step02ProposeTransfer.go @@ -1,9 +1,9 @@ -package ethtomultiversx +package ethtokc import ( "context" - "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX/steps" + "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC/steps" "github.com/klever-io/klv-bridge-eth-go/core" logger "github.com/multiversx/mx-chain-logger-go" ) @@ -20,15 +20,15 @@ func (step *proposeTransferStep) Execute(ctx context.Context) core.StepIdentifie return GettingPendingBatchFromEthereum } - wasTransferProposed, err := step.bridge.WasTransferProposedOnMultiversX(ctx) + wasTransferProposed, err := step.bridge.WasTransferProposedOnKC(ctx) if err != nil { - step.bridge.PrintInfo(logger.LogError, "error determining if the batch was proposed or not on MultiversX", + step.bridge.PrintInfo(logger.LogError, "error determining if the batch was proposed or not on KC", "batch ID", batch.ID, "error", err) return GettingPendingBatchFromEthereum } if wasTransferProposed { - return SigningProposedTransferOnMultiversX + return SigningProposedTransferOnKC } if !step.bridge.MyTurnAsLeader() { @@ -36,19 +36,19 @@ func (step *proposeTransferStep) Execute(ctx context.Context) core.StepIdentifie return step.Identifier() } - err = step.bridge.ProposeTransferOnMultiversX(ctx) + err = step.bridge.ProposeTransferOnKC(ctx) if err != nil { - step.bridge.PrintInfo(logger.LogError, "error proposing transfer on MultiversX", + step.bridge.PrintInfo(logger.LogError, "error proposing transfer on KC", "batch ID", batch.ID, "error", err) return GettingPendingBatchFromEthereum } - return SigningProposedTransferOnMultiversX + return SigningProposedTransferOnKC } // Identifier returns the step's identifier func (step *proposeTransferStep) Identifier() core.StepIdentifier { - return ProposingTransferOnMultiversX + return ProposingTransferOnKC } // IsInterfaceNil returns true if there is no value under the interface diff --git a/bridges/ethMultiversX/steps/ethToMultiversX/step02ProposeTransfer_test.go b/bridges/ethKC/steps/ethToKC/step02ProposeTransfer_test.go similarity index 78% rename from bridges/ethMultiversX/steps/ethToMultiversX/step02ProposeTransfer_test.go rename to bridges/ethKC/steps/ethToKC/step02ProposeTransfer_test.go index 9e47835c..fdd283b9 100644 --- a/bridges/ethMultiversX/steps/ethToMultiversX/step02ProposeTransfer_test.go +++ b/bridges/ethKC/steps/ethToKC/step02ProposeTransfer_test.go @@ -1,4 +1,4 @@ -package ethtomultiversx +package ethtokc import ( "context" @@ -27,13 +27,13 @@ func TestExecuteProposeTransfer(t *testing.T) { assert.Equal(t, expectedStepIdentifier, stepIdentifier) }) - t.Run("error on WasTransferProposedOnMultiversX", func(t *testing.T) { + t.Run("error on WasTransferProposedOnKC", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutor() bridgeStub.GetStoredBatchCalled = func() *bridgeCore.TransferBatch { return testBatch } - bridgeStub.WasTransferProposedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + bridgeStub.WasTransferProposedOnKCCalled = func(ctx context.Context) (bool, error) { return false, expectedError } @@ -52,7 +52,7 @@ func TestExecuteProposeTransfer(t *testing.T) { bridgeStub.GetStoredBatchCalled = func() *bridgeCore.TransferBatch { return testBatch } - bridgeStub.WasTransferProposedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + bridgeStub.WasTransferProposedOnKCCalled = func(ctx context.Context) (bool, error) { return false, nil } bridgeStub.MyTurnAsLeaderCalled = func() bool { @@ -68,19 +68,19 @@ func TestExecuteProposeTransfer(t *testing.T) { assert.Equal(t, expectedStepIdentifier, stepIdentifier) }) - t.Run("error on ProposeTransferOnMultiversX", func(t *testing.T) { + t.Run("error on ProposeTransferOnKC", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutor() bridgeStub.GetStoredBatchCalled = func() *bridgeCore.TransferBatch { return testBatch } - bridgeStub.WasTransferProposedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + bridgeStub.WasTransferProposedOnKCCalled = func(ctx context.Context) (bool, error) { return false, nil } bridgeStub.MyTurnAsLeaderCalled = func() bool { return true } - bridgeStub.ProposeTransferOnMultiversXCalled = func(ctx context.Context) error { + bridgeStub.ProposeTransferOnKCCalled = func(ctx context.Context) error { return expectedError } @@ -99,7 +99,7 @@ func TestExecuteProposeTransfer(t *testing.T) { bridgeStub.GetStoredBatchCalled = func() *bridgeCore.TransferBatch { return testBatch } - bridgeStub.WasTransferProposedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + bridgeStub.WasTransferProposedOnKCCalled = func(ctx context.Context) (bool, error) { return true, nil } @@ -107,7 +107,7 @@ func TestExecuteProposeTransfer(t *testing.T) { bridge: bridgeStub, } - expectedStepIdentifier := bridgeCore.StepIdentifier(SigningProposedTransferOnMultiversX) + expectedStepIdentifier := bridgeCore.StepIdentifier(SigningProposedTransferOnKC) stepIdentifier := step.Execute(context.Background()) assert.Equal(t, expectedStepIdentifier, stepIdentifier) }) @@ -118,13 +118,13 @@ func TestExecuteProposeTransfer(t *testing.T) { bridgeStub.GetStoredBatchCalled = func() *bridgeCore.TransferBatch { return testBatch } - bridgeStub.WasTransferProposedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + bridgeStub.WasTransferProposedOnKCCalled = func(ctx context.Context) (bool, error) { return false, nil } bridgeStub.MyTurnAsLeaderCalled = func() bool { return true } - bridgeStub.ProposeTransferOnMultiversXCalled = func(ctx context.Context) error { + bridgeStub.ProposeTransferOnKCCalled = func(ctx context.Context) error { return nil } @@ -134,7 +134,7 @@ func TestExecuteProposeTransfer(t *testing.T) { // Test IsInterfaceNil assert.NotNil(t, step.IsInterfaceNil()) - expectedStepIdentifier := bridgeCore.StepIdentifier(SigningProposedTransferOnMultiversX) + expectedStepIdentifier := bridgeCore.StepIdentifier(SigningProposedTransferOnKC) stepIdentifier := step.Execute(context.Background()) assert.Equal(t, expectedStepIdentifier, stepIdentifier) }) diff --git a/bridges/ethMultiversX/steps/ethToMultiversX/step03SignProposedTransfer.go b/bridges/ethKC/steps/ethToKC/step03SignProposedTransfer.go similarity index 81% rename from bridges/ethMultiversX/steps/ethToMultiversX/step03SignProposedTransfer.go rename to bridges/ethKC/steps/ethToKC/step03SignProposedTransfer.go index c7c03804..3dd0fb44 100644 --- a/bridges/ethMultiversX/steps/ethToMultiversX/step03SignProposedTransfer.go +++ b/bridges/ethKC/steps/ethToKC/step03SignProposedTransfer.go @@ -1,10 +1,10 @@ -package ethtomultiversx +package ethtokc import ( "context" - ethmultiversx "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX" - "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX/steps" + ethKC "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC" + "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC/steps" "github.com/klever-io/klv-bridge-eth-go/core" logger "github.com/multiversx/mx-chain-logger-go" ) @@ -21,12 +21,12 @@ func (step *signProposedTransferStep) Execute(ctx context.Context) core.StepIden return GettingPendingBatchFromEthereum } - actionID, err := step.bridge.GetAndStoreActionIDForProposeTransferOnMultiversX(ctx) + actionID, err := step.bridge.GetAndStoreActionIDForProposeTransferOnKC(ctx) if err != nil { step.bridge.PrintInfo(logger.LogError, "error fetching action ID", "batch ID", batch.ID, "error", err) return GettingPendingBatchFromEthereum } - if actionID == ethmultiversx.InvalidActionID { + if actionID == ethKC.InvalidActionID { step.bridge.PrintInfo(logger.LogError, "contract error, got invalid action ID", "batch ID", batch.ID, "error", err, "action ID", actionID) return GettingPendingBatchFromEthereum @@ -34,7 +34,7 @@ func (step *signProposedTransferStep) Execute(ctx context.Context) core.StepIden step.bridge.PrintInfo(logger.LogInfo, "fetched action ID", "action ID", actionID, "batch ID", batch.ID) - wasSigned, err := step.bridge.WasActionSignedOnMultiversX(ctx) + wasSigned, err := step.bridge.WasActionSignedOnKC(ctx) if err != nil { step.bridge.PrintInfo(logger.LogError, "error determining if the proposed transfer was signed or not", "batch ID", batch.ID, "error", err) @@ -45,7 +45,7 @@ func (step *signProposedTransferStep) Execute(ctx context.Context) core.StepIden return WaitingForQuorum } - err = step.bridge.SignActionOnMultiversX(ctx) + err = step.bridge.SignActionOnKC(ctx) if err != nil { step.bridge.PrintInfo(logger.LogError, "error signing the proposed transfer", "batch ID", batch.ID, "error", err) @@ -57,7 +57,7 @@ func (step *signProposedTransferStep) Execute(ctx context.Context) core.StepIden // Identifier returns the step's identifier func (step *signProposedTransferStep) Identifier() core.StepIdentifier { - return SigningProposedTransferOnMultiversX + return SigningProposedTransferOnKC } // IsInterfaceNil returns true if there is no value under the interface diff --git a/bridges/ethMultiversX/steps/ethToMultiversX/step03SignProposedTransfer_test.go b/bridges/ethKC/steps/ethToKC/step03SignProposedTransfer_test.go similarity index 72% rename from bridges/ethMultiversX/steps/ethToMultiversX/step03SignProposedTransfer_test.go rename to bridges/ethKC/steps/ethToKC/step03SignProposedTransfer_test.go index 4c0edbce..ccee9603 100644 --- a/bridges/ethMultiversX/steps/ethToMultiversX/step03SignProposedTransfer_test.go +++ b/bridges/ethKC/steps/ethToKC/step03SignProposedTransfer_test.go @@ -1,11 +1,11 @@ -package ethtomultiversx +package ethtokc import ( "context" "errors" "testing" - ethmultiversx "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX" + ethKC "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC" "github.com/klever-io/klv-bridge-eth-go/core" bridgeCore "github.com/klever-io/klv-bridge-eth-go/core" "github.com/stretchr/testify/assert" @@ -36,7 +36,7 @@ func TestExecuteSignProposedTransferStep(t *testing.T) { bridgeStub.GetStoredBatchCalled = func() *bridgeCore.TransferBatch { return testBatch } - bridgeStub.WasActionSignedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + bridgeStub.WasActionSignedOnKCCalled = func(ctx context.Context) (bool, error) { return false, expectedError } @@ -55,10 +55,10 @@ func TestExecuteSignProposedTransferStep(t *testing.T) { bridgeStub.GetStoredBatchCalled = func() *bridgeCore.TransferBatch { return testBatch } - bridgeStub.WasActionSignedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + bridgeStub.WasActionSignedOnKCCalled = func(ctx context.Context) (bool, error) { return false, nil } - bridgeStub.SignActionOnMultiversXCalled = func(ctx context.Context) error { + bridgeStub.SignActionOnKCCalled = func(ctx context.Context) error { return expectedError } @@ -78,10 +78,10 @@ func TestExecuteSignProposedTransferStep(t *testing.T) { bridgeStub.GetStoredBatchCalled = func() *bridgeCore.TransferBatch { return testBatch } - bridgeStub.WasActionSignedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + bridgeStub.WasActionSignedOnKCCalled = func(ctx context.Context) (bool, error) { return true, nil } - bridgeStub.GetAndStoreActionIDForProposeTransferOnMultiversXCalled = func(ctx context.Context) (uint64, error) { + bridgeStub.GetAndStoreActionIDForProposeTransferOnKCCalled = func(ctx context.Context) (uint64, error) { return 0, expectedErr } @@ -100,11 +100,11 @@ func TestExecuteSignProposedTransferStep(t *testing.T) { bridgeStub.GetStoredBatchCalled = func() *bridgeCore.TransferBatch { return testBatch } - bridgeStub.WasActionSignedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + bridgeStub.WasActionSignedOnKCCalled = func(ctx context.Context) (bool, error) { return true, nil } - bridgeStub.GetAndStoreActionIDForProposeTransferOnMultiversXCalled = func(ctx context.Context) (uint64, error) { - return ethmultiversx.InvalidActionID, nil + bridgeStub.GetAndStoreActionIDForProposeTransferOnKCCalled = func(ctx context.Context) (uint64, error) { + return ethKC.InvalidActionID, nil } step := signProposedTransferStep{ @@ -116,17 +116,17 @@ func TestExecuteSignProposedTransferStep(t *testing.T) { assert.Equal(t, expectedStepIdentifier, stepIdentifier) }) - t.Run("error on WasActionSignedOnMultiversX", func(t *testing.T) { + t.Run("error on WasActionSignedOnKC", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutor() bridgeStub.GetStoredBatchCalled = func() *bridgeCore.TransferBatch { return testBatch } - bridgeStub.WasActionSignedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + bridgeStub.WasActionSignedOnKCCalled = func(ctx context.Context) (bool, error) { return false, expectedError } - bridgeStub.GetAndStoreActionIDForProposeTransferOnMultiversXCalled = func(ctx context.Context) (uint64, error) { - return ethmultiversx.InvalidActionID, nil + bridgeStub.GetAndStoreActionIDForProposeTransferOnKCCalled = func(ctx context.Context) (uint64, error) { + return ethKC.InvalidActionID, nil } step := signProposedTransferStep{ @@ -144,10 +144,10 @@ func TestExecuteSignProposedTransferStep(t *testing.T) { bridgeStub.GetStoredBatchCalled = func() *bridgeCore.TransferBatch { return testBatch } - bridgeStub.WasActionSignedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + bridgeStub.WasActionSignedOnKCCalled = func(ctx context.Context) (bool, error) { return true, nil } - bridgeStub.GetAndStoreActionIDForProposeTransferOnMultiversXCalled = func(ctx context.Context) (uint64, error) { + bridgeStub.GetAndStoreActionIDForProposeTransferOnKCCalled = func(ctx context.Context) (uint64, error) { return 2, nil } @@ -166,13 +166,13 @@ func TestExecuteSignProposedTransferStep(t *testing.T) { bridgeStub.GetStoredBatchCalled = func() *bridgeCore.TransferBatch { return testBatch } - bridgeStub.WasActionSignedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + bridgeStub.WasActionSignedOnKCCalled = func(ctx context.Context) (bool, error) { return false, nil } - bridgeStub.SignActionOnMultiversXCalled = func(ctx context.Context) error { + bridgeStub.SignActionOnKCCalled = func(ctx context.Context) error { return nil } - bridgeStub.GetAndStoreActionIDForProposeTransferOnMultiversXCalled = func(ctx context.Context) (uint64, error) { + bridgeStub.GetAndStoreActionIDForProposeTransferOnKCCalled = func(ctx context.Context) (uint64, error) { return 2, nil } @@ -180,10 +180,10 @@ func TestExecuteSignProposedTransferStep(t *testing.T) { bridge: bridgeStub, } // Test Identifier() - expectedStepIdentifier := core.StepIdentifier(SigningProposedTransferOnMultiversX) + expectedStepIdentifier := core.StepIdentifier(SigningProposedTransferOnKC) assert.Equal(t, expectedStepIdentifier, step.Identifier()) // Test IsInterfaceNil - assert.NotNil(t, step.IsInterfaceNil()) + assert.False(t, step.IsInterfaceNil()) expectedStepIdentifier = WaitingForQuorum stepIdentifier := step.Execute(context.Background()) diff --git a/bridges/ethMultiversX/steps/ethToMultiversX/step04WaitForQuorum.go b/bridges/ethKC/steps/ethToKC/step04WaitForQuorum.go similarity index 82% rename from bridges/ethMultiversX/steps/ethToMultiversX/step04WaitForQuorum.go rename to bridges/ethKC/steps/ethToKC/step04WaitForQuorum.go index 3394cde9..0e7d78e5 100644 --- a/bridges/ethMultiversX/steps/ethToMultiversX/step04WaitForQuorum.go +++ b/bridges/ethKC/steps/ethToKC/step04WaitForQuorum.go @@ -1,9 +1,9 @@ -package ethtomultiversx +package ethtokc import ( "context" - "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX/steps" + "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC/steps" "github.com/klever-io/klv-bridge-eth-go/core" logger "github.com/multiversx/mx-chain-logger-go" ) @@ -14,12 +14,12 @@ type waitForQuorumStep struct { // Execute will execute this step returning the next step to be executed func (step *waitForQuorumStep) Execute(ctx context.Context) core.StepIdentifier { - if step.bridge.ProcessMaxQuorumRetriesOnMultiversX() { + if step.bridge.ProcessMaxQuorumRetriesOnKC() { step.bridge.PrintInfo(logger.LogDebug, "max number of retries reached, resetting counter") return GettingPendingBatchFromEthereum } - isQuorumReached, err := step.bridge.ProcessQuorumReachedOnMultiversX(ctx) + isQuorumReached, err := step.bridge.ProcessQuorumReachedOnKC(ctx) if err != nil { step.bridge.PrintInfo(logger.LogError, "error while checking the quorum", "error", err) return GettingPendingBatchFromEthereum diff --git a/bridges/ethMultiversX/steps/ethToMultiversX/step04WaitForQuorum_test.go b/bridges/ethKC/steps/ethToKC/step04WaitForQuorum_test.go similarity index 83% rename from bridges/ethMultiversX/steps/ethToMultiversX/step04WaitForQuorum_test.go rename to bridges/ethKC/steps/ethToKC/step04WaitForQuorum_test.go index 14388c77..d43948fc 100644 --- a/bridges/ethMultiversX/steps/ethToMultiversX/step04WaitForQuorum_test.go +++ b/bridges/ethKC/steps/ethToKC/step04WaitForQuorum_test.go @@ -1,4 +1,4 @@ -package ethtomultiversx +package ethtokc import ( "context" @@ -14,7 +14,7 @@ func TestExecuteWaitForQuorumStep(t *testing.T) { t.Run("error on IsQuorumReached", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutor() - bridgeStub.ProcessQuorumReachedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + bridgeStub.ProcessQuorumReachedOnKCCalled = func(ctx context.Context) (bool, error) { return false, expectedError } @@ -30,7 +30,7 @@ func TestExecuteWaitForQuorumStep(t *testing.T) { t.Run("should work - quorum not reached", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutor() - bridgeStub.ProcessQuorumReachedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + bridgeStub.ProcessQuorumReachedOnKCCalled = func(ctx context.Context) (bool, error) { return false, nil } @@ -46,7 +46,7 @@ func TestExecuteWaitForQuorumStep(t *testing.T) { t.Run("should work", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutor() - bridgeStub.ProcessQuorumReachedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + bridgeStub.ProcessQuorumReachedOnKCCalled = func(ctx context.Context) (bool, error) { return true, nil } @@ -67,7 +67,7 @@ func TestExecuteWaitForQuorumStep(t *testing.T) { t.Run("max retries reached", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutor() - bridgeStub.ProcessMaxQuorumRetriesOnMultiversXCalled = func() bool { + bridgeStub.ProcessMaxQuorumRetriesOnKCCalled = func() bool { return true } diff --git a/bridges/ethMultiversX/steps/ethToMultiversX/step05PerformActionID.go b/bridges/ethKC/steps/ethToKC/step05PerformActionID.go similarity index 86% rename from bridges/ethMultiversX/steps/ethToMultiversX/step05PerformActionID.go rename to bridges/ethKC/steps/ethToKC/step05PerformActionID.go index b42762f3..9a71f328 100644 --- a/bridges/ethMultiversX/steps/ethToMultiversX/step05PerformActionID.go +++ b/bridges/ethKC/steps/ethToKC/step05PerformActionID.go @@ -1,9 +1,9 @@ -package ethtomultiversx +package ethtokc import ( "context" - "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX/steps" + "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC/steps" "github.com/klever-io/klv-bridge-eth-go/core" logger "github.com/multiversx/mx-chain-logger-go" ) @@ -14,7 +14,7 @@ type performActionIDStep struct { // Execute will execute this step returning the next step to be executed func (step *performActionIDStep) Execute(ctx context.Context) core.StepIdentifier { - wasPerformed, err := step.bridge.WasActionPerformedOnMultiversX(ctx) + wasPerformed, err := step.bridge.WasActionPerformedOnKC(ctx) if err != nil { step.bridge.PrintInfo(logger.LogError, "error determining if the action ID was proposed or not", "action ID", step.bridge.GetStoredActionID(), "error", err) @@ -32,7 +32,7 @@ func (step *performActionIDStep) Execute(ctx context.Context) core.StepIdentifie return step.Identifier() } - err = step.bridge.PerformActionOnMultiversX(ctx) + err = step.bridge.PerformActionOnKC(ctx) if err != nil { step.bridge.PrintInfo(logger.LogError, "error performing action ID", "action ID", step.bridge.GetStoredActionID(), "error", err) diff --git a/bridges/ethMultiversX/steps/ethToMultiversX/step05PerformActionID_test.go b/bridges/ethKC/steps/ethToKC/step05PerformActionID_test.go similarity index 79% rename from bridges/ethMultiversX/steps/ethToMultiversX/step05PerformActionID_test.go rename to bridges/ethKC/steps/ethToKC/step05PerformActionID_test.go index 673adb4e..4d2356b7 100644 --- a/bridges/ethMultiversX/steps/ethToMultiversX/step05PerformActionID_test.go +++ b/bridges/ethKC/steps/ethToKC/step05PerformActionID_test.go @@ -1,4 +1,4 @@ -package ethtomultiversx +package ethtokc import ( "context" @@ -14,7 +14,7 @@ func TestExecutePerformActionIDStep(t *testing.T) { t.Run("error on WasActionIDPerformed", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutor() - bridgeStub.WasActionPerformedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + bridgeStub.WasActionPerformedOnKCCalled = func(ctx context.Context) (bool, error) { return false, expectedError } @@ -30,7 +30,7 @@ func TestExecutePerformActionIDStep(t *testing.T) { t.Run("should work - actionID already performed", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutor() - bridgeStub.WasActionPerformedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + bridgeStub.WasActionPerformedOnKCCalled = func(ctx context.Context) (bool, error) { return true, nil } @@ -46,7 +46,7 @@ func TestExecutePerformActionIDStep(t *testing.T) { t.Run("should work - not leader", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutor() - bridgeStub.WasActionPerformedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + bridgeStub.WasActionPerformedOnKCCalled = func(ctx context.Context) (bool, error) { return false, nil } bridgeStub.MyTurnAsLeaderCalled = func() bool { @@ -65,13 +65,13 @@ func TestExecutePerformActionIDStep(t *testing.T) { t.Run("error on PerformActionID", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutor() - bridgeStub.WasActionPerformedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + bridgeStub.WasActionPerformedOnKCCalled = func(ctx context.Context) (bool, error) { return false, nil } bridgeStub.MyTurnAsLeaderCalled = func() bool { return true } - bridgeStub.PerformActionOnMultiversXCalled = func(ctx context.Context) error { + bridgeStub.PerformActionOnKCCalled = func(ctx context.Context) error { return expectedError } @@ -87,13 +87,13 @@ func TestExecutePerformActionIDStep(t *testing.T) { t.Run("should work", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutor() - bridgeStub.WasActionPerformedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + bridgeStub.WasActionPerformedOnKCCalled = func(ctx context.Context) (bool, error) { return false, nil } bridgeStub.MyTurnAsLeaderCalled = func() bool { return true } - bridgeStub.PerformActionOnMultiversXCalled = func(ctx context.Context) error { + bridgeStub.PerformActionOnKCCalled = func(ctx context.Context) error { return nil } diff --git a/bridges/ethMultiversX/steps/ethToMultiversX/stepsFactory.go b/bridges/ethKC/steps/ethToKC/stepsFactory.go similarity index 73% rename from bridges/ethMultiversX/steps/ethToMultiversX/stepsFactory.go rename to bridges/ethKC/steps/ethToKC/stepsFactory.go index 5dc4f670..55364815 100644 --- a/bridges/ethMultiversX/steps/ethToMultiversX/stepsFactory.go +++ b/bridges/ethKC/steps/ethToKC/stepsFactory.go @@ -1,10 +1,10 @@ -package ethtomultiversx +package ethtokc import ( "fmt" - ethmultiversx "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX" - "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX/steps" + ethKC "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC" + "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC/steps" "github.com/klever-io/klv-bridge-eth-go/core" "github.com/multiversx/mx-chain-core-go/core/check" ) @@ -12,7 +12,7 @@ import ( // CreateSteps creates all machine states providing the bridge executor func CreateSteps(executor steps.Executor) (core.MachineStates, error) { if check.IfNil(executor) { - return nil, ethmultiversx.ErrNilExecutor + return nil, ethKC.ErrNilExecutor } return createMachineStates(executor) @@ -42,7 +42,7 @@ func createMachineStates(executor steps.Executor) (core.MachineStates, error) { for _, s := range stepsSlice { _, found := machineStates[s.Identifier()] if found { - return nil, fmt.Errorf("%w for identifier '%s'", ethmultiversx.ErrDuplicatedStepIdentifier, s.Identifier()) + return nil, fmt.Errorf("%w for identifier '%s'", ethKC.ErrDuplicatedStepIdentifier, s.Identifier()) } machineStates[s.Identifier()] = s diff --git a/bridges/ethMultiversX/steps/ethToMultiversX/stepsFactory_test.go b/bridges/ethKC/steps/ethToKC/stepsFactory_test.go similarity index 76% rename from bridges/ethMultiversX/steps/ethToMultiversX/stepsFactory_test.go rename to bridges/ethKC/steps/ethToKC/stepsFactory_test.go index eadc3461..d14da760 100644 --- a/bridges/ethMultiversX/steps/ethToMultiversX/stepsFactory_test.go +++ b/bridges/ethKC/steps/ethToKC/stepsFactory_test.go @@ -1,9 +1,9 @@ -package ethtomultiversx +package ethtokc import ( "testing" - ethmultiversx "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX" + ethKC "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC" bridgeTests "github.com/klever-io/klv-bridge-eth-go/testsCommon/bridge" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" @@ -15,7 +15,7 @@ func TestCreateSteps_Errors(t *testing.T) { steps, err := CreateSteps(nil) assert.Nil(t, steps) - assert.Equal(t, ethmultiversx.ErrNilExecutor, err) + assert.Equal(t, ethKC.ErrNilExecutor, err) } func TestCreateSteps_ShouldWork(t *testing.T) { diff --git a/bridges/ethMultiversX/steps/interface.go b/bridges/ethKC/steps/interface.go similarity index 53% rename from bridges/ethMultiversX/steps/interface.go rename to bridges/ethKC/steps/interface.go index c87a7a59..f44e9628 100644 --- a/bridges/ethMultiversX/steps/interface.go +++ b/bridges/ethKC/steps/interface.go @@ -15,35 +15,35 @@ type Executor interface { PrintInfo(logLevel logger.LogLevel, message string, extras ...interface{}) MyTurnAsLeader() bool - GetBatchFromMultiversX(ctx context.Context) (*bridgeCore.TransferBatch, error) - StoreBatchFromMultiversX(batch *bridgeCore.TransferBatch) error + GetBatchFromKC(ctx context.Context) (*bridgeCore.TransferBatch, error) + StoreBatchFromKC(batch *bridgeCore.TransferBatch) error GetStoredBatch() *bridgeCore.TransferBatch - GetLastExecutedEthBatchIDFromMultiversX(ctx context.Context) (uint64, error) + GetLastExecutedEthBatchIDFromKC(ctx context.Context) (uint64, error) VerifyLastDepositNonceExecutedOnEthereumBatch(ctx context.Context) error - GetAndStoreActionIDForProposeTransferOnMultiversX(ctx context.Context) (uint64, error) - GetAndStoreActionIDForProposeSetStatusFromMultiversX(ctx context.Context) (uint64, error) + GetAndStoreActionIDForProposeTransferOnKC(ctx context.Context) (uint64, error) + GetAndStoreActionIDForProposeSetStatusFromKC(ctx context.Context) (uint64, error) GetStoredActionID() uint64 - WasTransferProposedOnMultiversX(ctx context.Context) (bool, error) - ProposeTransferOnMultiversX(ctx context.Context) error - ProcessMaxRetriesOnWasTransferProposedOnMultiversX() bool - ResetRetriesOnWasTransferProposedOnMultiversX() + WasTransferProposedOnKC(ctx context.Context) (bool, error) + ProposeTransferOnKC(ctx context.Context) error + ProcessMaxRetriesOnWasTransferProposedOnKC() bool + ResetRetriesOnWasTransferProposedOnKC() - WasSetStatusProposedOnMultiversX(ctx context.Context) (bool, error) - ProposeSetStatusOnMultiversX(ctx context.Context) error + WasSetStatusProposedOnKC(ctx context.Context) (bool, error) + ProposeSetStatusOnKC(ctx context.Context) error - WasActionSignedOnMultiversX(ctx context.Context) (bool, error) - SignActionOnMultiversX(ctx context.Context) error + WasActionSignedOnKC(ctx context.Context) (bool, error) + SignActionOnKC(ctx context.Context) error - ProcessQuorumReachedOnMultiversX(ctx context.Context) (bool, error) - WasActionPerformedOnMultiversX(ctx context.Context) (bool, error) - PerformActionOnMultiversX(ctx context.Context) error + ProcessQuorumReachedOnKC(ctx context.Context) (bool, error) + WasActionPerformedOnKC(ctx context.Context) (bool, error) + PerformActionOnKC(ctx context.Context) error ResolveNewDepositsStatuses(numDeposits uint64) - ProcessMaxQuorumRetriesOnMultiversX() bool - ResetRetriesCountOnMultiversX() + ProcessMaxQuorumRetriesOnKC() bool + ResetRetriesCountOnKC() GetAndStoreBatchFromEthereum(ctx context.Context, nonce uint64) error WasTransferPerformedOnEthereum(ctx context.Context) (bool, error) @@ -58,9 +58,9 @@ type Executor interface { ResetRetriesCountOnEthereum() ClearStoredP2PSignaturesForEthereum() - CheckMultiversXClientAvailability(ctx context.Context) error + CheckKCClientAvailability(ctx context.Context) error CheckEthereumClientAvailability(ctx context.Context) error - CheckAvailableTokens(ctx context.Context, ethTokens []common.Address, mvxTokens [][]byte, amounts []*big.Int, direction batchProcessor.Direction) error + CheckAvailableTokens(ctx context.Context, ethTokens []common.Address, kdaTokens [][]byte, amounts []*big.Int, direction batchProcessor.Direction) error IsInterfaceNil() bool } diff --git a/bridges/ethMultiversX/steps/multiversxToEth/constants.go b/bridges/ethKC/steps/kcToEth/constants.go similarity index 52% rename from bridges/ethMultiversX/steps/multiversxToEth/constants.go rename to bridges/ethKC/steps/kcToEth/constants.go index fead2461..4889acbb 100644 --- a/bridges/ethMultiversX/steps/multiversxToEth/constants.go +++ b/bridges/ethKC/steps/kcToEth/constants.go @@ -1,8 +1,8 @@ -package multiversxtoeth +package kctoeth const ( - // GettingPendingBatchFromMultiversX is the step identifier for fetching the pending batch from the MultiversX chain - GettingPendingBatchFromMultiversX = "get pending batch from MultiversX" + // GettingPendingBatchFromKC is the step identifier for fetching the pending batch from the KC + GettingPendingBatchFromKC = "get pending batch from KC" // SigningProposedTransferOnEthereum is the step identifier for signing proposed transfer SigningProposedTransferOnEthereum = "sign proposed transfer" @@ -16,21 +16,21 @@ const ( // WaitingTransferConfirmation is the step identifier for waiting the transfer confirmation on Ethereum WaitingTransferConfirmation = "wait transfer confirmating" - // ResolvingSetStatusOnMultiversX is the step identifier for resolving set status on MultiversX - ResolvingSetStatusOnMultiversX = "resolve set status" + // ResolvingSetStatusOnKC is the step identifier for resolving set status on KC + ResolvingSetStatusOnKC = "resolve set status" - // ProposingSetStatusOnMultiversX is the step idetifier for proposing set status action on MultiversX - ProposingSetStatusOnMultiversX = "propose set status" + // ProposingSetStatusOnKC is the step idetifier for proposing set status action on KC + ProposingSetStatusOnKC = "propose set status" - // SigningProposedSetStatusOnMultiversX is the step identifier for signing proposed set status action - SigningProposedSetStatusOnMultiversX = "sign proposed set status" + // SigningProposedSetStatusOnKC is the step identifier for signing proposed set status action + SigningProposedSetStatusOnKC = "sign proposed set status" // WaitingForQuorumOnSetStatus is the step identifier for waiting until the quorum is reached WaitingForQuorumOnSetStatus = "wait for quorum on set status" - // PerformingSetStatus is the step identifier for performing the set status action on MultiversX + // PerformingSetStatus is the step identifier for performing the set status action on KC PerformingSetStatus = "perform set status" - // NumSteps indicates how many steps the state machine for MultiversX -> Ethereum flow has + // NumSteps indicates how many steps the state machine for Klever Blockchain -> Ethereum flow has NumSteps = 10 ) diff --git a/bridges/ethMultiversX/steps/multiversxToEth/semiIntegrated_test.go b/bridges/ethKC/steps/kcToEth/semiIntegrated_test.go similarity index 51% rename from bridges/ethMultiversX/steps/multiversxToEth/semiIntegrated_test.go rename to bridges/ethKC/steps/kcToEth/semiIntegrated_test.go index e9d7bb6c..000c980c 100644 --- a/bridges/ethMultiversX/steps/multiversxToEth/semiIntegrated_test.go +++ b/bridges/ethKC/steps/kcToEth/semiIntegrated_test.go @@ -1,4 +1,4 @@ -package multiversxtoeth +package kctoeth import ( "context" @@ -6,7 +6,7 @@ import ( "fmt" "testing" - "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX/steps" + "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC/steps" bridgeCore "github.com/klever-io/klv-bridge-eth-go/core" bridgeTests "github.com/klever-io/klv-bridge-eth-go/testsCommon/bridge" "github.com/klever-io/klv-bridge-eth-go/testsCommon/stateMachine" @@ -15,44 +15,44 @@ import ( ) const ( - getBatchFromMultiversX = "GetBatchFromMultiversX" - storeBatchFromMultiversX = "StoreBatchFromMultiversX" - wasTransferPerformedOnEthereum = "WasTransferPerformedOnEthereum" - signTransferOnEthereum = "SignTransferOnEthereum" - ProcessMaxQuorumRetriesOnEthereum = "ProcessMaxQuorumRetriesOnEthereum" - processQuorumReachedOnEthereum = "ProcessQuorumReachedOnEthereum" - performTransferOnEthereum = "PerformTransferOnEthereum" - getBatchStatusesFromEthereum = "GetBatchStatusesFromEthereum" - wasSetStatusProposedOnMultiversX = "WasSetStatusProposedOnMultiversX" - proposeSetStatusOnMultiversX = "ProposeSetStatusOnMultiversX" - getAndStoreActionIDForProposeSetStatusFromMultiversX = "GetAndStoreActionIDForProposeSetStatusFromMultiversX" - wasActionSignedOnMultiversX = "WasActionSignedOnMultiversX" - signActionOnMultiversX = "SignActionOnMultiversX" - ProcessMaxQuorumRetriesOnMultiversX = "ProcessMaxQuorumRetriesOnMultiversX" - processQuorumReachedOnMultiversX = "ProcessQuorumReachedOnMultiversX" - wasActionPerformedOnMultiversX = "WasActionPerformedOnMultiversX" - performActionOnMultiversX = "PerformActionOnMultiversX" - resetRetriesCountOnEthereum = "ResetRetriesCountOnEthereum" - resetRetriesCountOnMultiversX = "ResetRetriesCountOnMultiversX" - getStoredBatch = "GetStoredBatch" - myTurnAsLeader = "MyTurnAsLeader" - waitForTransferConfirmation = "WaitForTransferConfirmation" - WaitAndReturnFinalBatchStatuses = "WaitAndReturnFinalBatchStatuses" - resolveNewDepositsStatuses = "ResolveNewDepositsStatuses" - getStoredActionID = "GetStoredActionID" + getBatchFromKC = "GetBatchFromKC" + storeBatchFromKC = "StoreBatchFromKC" + wasTransferPerformedOnEthereum = "WasTransferPerformedOnEthereum" + signTransferOnEthereum = "SignTransferOnEthereum" + ProcessMaxQuorumRetriesOnEthereum = "ProcessMaxQuorumRetriesOnEthereum" + processQuorumReachedOnEthereum = "ProcessQuorumReachedOnEthereum" + performTransferOnEthereum = "PerformTransferOnEthereum" + getBatchStatusesFromEthereum = "GetBatchStatusesFromEthereum" + wasSetStatusProposedOnKC = "WasSetStatusProposedOnKC" + proposeSetStatusOnKC = "ProposeSetStatusOnKC" + getAndStoreActionIDForProposeSetStatusFromKC = "GetAndStoreActionIDForProposeSetStatusFromKC" + wasActionSignedOnKC = "WasActionSignedOnKC" + signActionOnKC = "SignActionOnKC" + ProcessMaxQuorumRetriesOnKC = "ProcessMaxQuorumRetriesOnKC" + processQuorumReachedOnKC = "ProcessQuorumReachedOnKC" + wasActionPerformedOnKC = "WasActionPerformedOnKC" + performActionOnKC = "PerformActionOnKC" + resetRetriesCountOnEthereum = "ResetRetriesCountOnEthereum" + resetRetriesCountOnKC = "ResetRetriesCountOnKC" + getStoredBatch = "GetStoredBatch" + myTurnAsLeader = "MyTurnAsLeader" + waitForTransferConfirmation = "WaitForTransferConfirmation" + WaitAndReturnFinalBatchStatuses = "WaitAndReturnFinalBatchStatuses" + resolveNewDepositsStatuses = "ResolveNewDepositsStatuses" + getStoredActionID = "GetStoredActionID" ) type argsBridgeStub struct { - failingStep string - wasTransferPerformedOnEthereumHandler func() bool - processQuorumReachedOnEthereumHandler func() bool - processQuorumReachedOnMultiversXHandler func() bool - myTurnHandler func() bool - wasSetStatusProposedOnMultiversXHandler func() bool - wasActionSignedOnMultiversXHandler func() bool - wasActionPerformedOnMultiversXHandler func() bool - maxRetriesReachedEthereumHandler func() bool - maxRetriesReachedMultiversXHandler func() bool + failingStep string + wasTransferPerformedOnEthereumHandler func() bool + processQuorumReachedOnEthereumHandler func() bool + processQuorumReachedOnKCHandler func() bool + myTurnHandler func() bool + wasSetStatusProposedOnKCHandler func() bool + wasActionSignedOnKCHandler func() bool + wasActionPerformedOnKCHandler func() bool + maxRetriesReachedEthereumHandler func() bool + maxRetriesReachedKCHandler func() bool } var trueHandler = func() bool { return true } @@ -85,8 +85,8 @@ func createMockBridge(args argsBridgeStub) (*bridgeTests.BridgeExecutorStub, *er stub.MyTurnAsLeaderCalled = func() bool { return args.myTurnHandler() } - stub.GetAndStoreActionIDForProposeSetStatusFromMultiversXCalled = func(ctx context.Context) (uint64, error) { - if args.failingStep == getAndStoreActionIDForProposeSetStatusFromMultiversX { + stub.GetAndStoreActionIDForProposeSetStatusFromKCCalled = func(ctx context.Context) (uint64, error) { + if args.failingStep == getAndStoreActionIDForProposeSetStatusFromKC { return 0, errHandler.storeAndReturnError(expectedErr) } @@ -95,13 +95,13 @@ func createMockBridge(args argsBridgeStub) (*bridgeTests.BridgeExecutorStub, *er stub.GetStoredActionIDCalled = func() uint64 { return 2 } - stub.GetBatchFromMultiversXCalled = func(ctx context.Context) (*bridgeCore.TransferBatch, error) { - if args.failingStep == getBatchFromMultiversX { + stub.GetBatchFromKCCalled = func(ctx context.Context) (*bridgeCore.TransferBatch, error) { + if args.failingStep == getBatchFromKC { return &bridgeCore.TransferBatch{}, errHandler.storeAndReturnError(expectedErr) } return &bridgeCore.TransferBatch{}, errHandler.storeAndReturnError(nil) } - stub.StoreBatchFromMultiversXCalled = func(batch *bridgeCore.TransferBatch) error { + stub.StoreBatchFromKCCalled = func(batch *bridgeCore.TransferBatch) error { return nil } stub.GetStoredBatchCalled = func() *bridgeCore.TransferBatch { @@ -154,59 +154,59 @@ func createMockBridge(args argsBridgeStub) (*bridgeTests.BridgeExecutorStub, *er stub.ResolveNewDepositsStatusesCalled = func(numDeposits uint64) { } - stub.WasSetStatusProposedOnMultiversXCalled = func(ctx context.Context) (bool, error) { - if args.failingStep == wasSetStatusProposedOnMultiversX { + stub.WasSetStatusProposedOnKCCalled = func(ctx context.Context) (bool, error) { + if args.failingStep == wasSetStatusProposedOnKC { return false, errHandler.storeAndReturnError(expectedErr) } - return args.wasSetStatusProposedOnMultiversXHandler(), errHandler.storeAndReturnError(nil) + return args.wasSetStatusProposedOnKCHandler(), errHandler.storeAndReturnError(nil) } - stub.ProposeSetStatusOnMultiversXCalled = func(ctx context.Context) error { - if args.failingStep == proposeSetStatusOnMultiversX { + stub.ProposeSetStatusOnKCCalled = func(ctx context.Context) error { + if args.failingStep == proposeSetStatusOnKC { return errHandler.storeAndReturnError(expectedErr) } return errHandler.storeAndReturnError(nil) } - stub.WasActionSignedOnMultiversXCalled = func(ctx context.Context) (bool, error) { - if args.failingStep == wasActionSignedOnMultiversX { + stub.WasActionSignedOnKCCalled = func(ctx context.Context) (bool, error) { + if args.failingStep == wasActionSignedOnKC { return false, errHandler.storeAndReturnError(expectedErr) } - return args.wasActionSignedOnMultiversXHandler(), errHandler.storeAndReturnError(nil) + return args.wasActionSignedOnKCHandler(), errHandler.storeAndReturnError(nil) } - stub.SignActionOnMultiversXCalled = func(ctx context.Context) error { - if args.failingStep == signActionOnMultiversX { + stub.SignActionOnKCCalled = func(ctx context.Context) error { + if args.failingStep == signActionOnKC { return errHandler.storeAndReturnError(expectedErr) } return errHandler.storeAndReturnError(nil) } - stub.ProcessQuorumReachedOnMultiversXCalled = func(ctx context.Context) (bool, error) { - if args.failingStep == processQuorumReachedOnMultiversX { + stub.ProcessQuorumReachedOnKCCalled = func(ctx context.Context) (bool, error) { + if args.failingStep == processQuorumReachedOnKC { return false, errHandler.storeAndReturnError(expectedErr) } - return args.processQuorumReachedOnMultiversXHandler(), errHandler.storeAndReturnError(nil) + return args.processQuorumReachedOnKCHandler(), errHandler.storeAndReturnError(nil) } - stub.WasActionPerformedOnMultiversXCalled = func(ctx context.Context) (bool, error) { - if args.failingStep == wasActionPerformedOnMultiversX { + stub.WasActionPerformedOnKCCalled = func(ctx context.Context) (bool, error) { + if args.failingStep == wasActionPerformedOnKC { return false, errHandler.storeAndReturnError(expectedErr) } - return args.wasActionPerformedOnMultiversXHandler(), errHandler.storeAndReturnError(nil) + return args.wasActionPerformedOnKCHandler(), errHandler.storeAndReturnError(nil) } - stub.PerformActionOnMultiversXCalled = func(ctx context.Context) error { - if args.failingStep == performActionOnMultiversX { + stub.PerformActionOnKCCalled = func(ctx context.Context) error { + if args.failingStep == performActionOnKC { return errHandler.storeAndReturnError(expectedErr) } return errHandler.storeAndReturnError(nil) } - stub.ProcessMaxQuorumRetriesOnMultiversXCalled = func() bool { - return args.maxRetriesReachedEthereumHandler() + stub.ProcessMaxQuorumRetriesOnKCCalled = func() bool { + return args.maxRetriesReachedKCHandler() } stub.ProcessMaxQuorumRetriesOnEthereumCalled = func() bool { - return args.maxRetriesReachedMultiversXHandler() + return args.maxRetriesReachedEthereumHandler() } return stub, errHandler @@ -217,21 +217,21 @@ func TestHappyCaseWhenLeaderSetStatusAlreadySigned(t *testing.T) { numCalled := 0 args := argsBridgeStub{ - myTurnHandler: trueHandler, - processQuorumReachedOnEthereumHandler: trueHandler, - processQuorumReachedOnMultiversXHandler: trueHandler, - wasActionSignedOnMultiversXHandler: trueHandler, - wasActionPerformedOnMultiversXHandler: func() bool { + myTurnHandler: trueHandler, + processQuorumReachedOnEthereumHandler: trueHandler, + processQuorumReachedOnKCHandler: trueHandler, + wasActionSignedOnKCHandler: trueHandler, + wasActionPerformedOnKCHandler: func() bool { numCalled++ return numCalled > 1 }, - wasTransferPerformedOnEthereumHandler: falseHandler, - maxRetriesReachedEthereumHandler: falseHandler, - maxRetriesReachedMultiversXHandler: falseHandler, - wasSetStatusProposedOnMultiversXHandler: falseHandler, + wasTransferPerformedOnEthereumHandler: falseHandler, + maxRetriesReachedEthereumHandler: falseHandler, + maxRetriesReachedKCHandler: falseHandler, + wasSetStatusProposedOnKCHandler: falseHandler, } executor, eh := createMockBridge(args) - sm := createStateMachine(t, executor, GettingPendingBatchFromMultiversX) + sm := createStateMachine(t, executor, GettingPendingBatchFromKC) numSteps := 12 for i := 0; i < numSteps; i++ { err := sm.Execute(context.Background()) @@ -239,9 +239,9 @@ func TestHappyCaseWhenLeaderSetStatusAlreadySigned(t *testing.T) { } assert.Equal(t, 1, executor.GetFunctionCounter(resetRetriesCountOnEthereum)) - assert.Equal(t, 1, executor.GetFunctionCounter(resetRetriesCountOnMultiversX)) - assert.Equal(t, 2, executor.GetFunctionCounter(getBatchFromMultiversX)) - assert.Equal(t, 1, executor.GetFunctionCounter(storeBatchFromMultiversX)) + assert.Equal(t, 1, executor.GetFunctionCounter(resetRetriesCountOnKC)) + assert.Equal(t, 2, executor.GetFunctionCounter(getBatchFromKC)) + assert.Equal(t, 1, executor.GetFunctionCounter(storeBatchFromKC)) assert.Equal(t, 3, executor.GetFunctionCounter(wasTransferPerformedOnEthereum)) assert.Equal(t, 4, executor.GetFunctionCounter(getStoredBatch)) assert.Equal(t, 1, executor.GetFunctionCounter(signTransferOnEthereum)) @@ -249,19 +249,19 @@ func TestHappyCaseWhenLeaderSetStatusAlreadySigned(t *testing.T) { assert.Equal(t, 1, executor.GetFunctionCounter(ProcessMaxQuorumRetriesOnEthereum)) assert.Equal(t, 1, executor.GetFunctionCounter(processQuorumReachedOnEthereum)) assert.Equal(t, 3, executor.GetFunctionCounter(myTurnAsLeader)) - assert.Equal(t, 1, executor.GetFunctionCounter(ProcessMaxQuorumRetriesOnMultiversX)) - assert.Equal(t, 1, executor.GetFunctionCounter(processQuorumReachedOnMultiversX)) + assert.Equal(t, 1, executor.GetFunctionCounter(ProcessMaxQuorumRetriesOnKC)) + assert.Equal(t, 1, executor.GetFunctionCounter(processQuorumReachedOnKC)) assert.Equal(t, 1, executor.GetFunctionCounter(waitForTransferConfirmation)) assert.Equal(t, 1, executor.GetFunctionCounter(resolveNewDepositsStatuses)) - assert.Equal(t, 1, executor.GetFunctionCounter(wasSetStatusProposedOnMultiversX)) + assert.Equal(t, 1, executor.GetFunctionCounter(wasSetStatusProposedOnKC)) assert.Equal(t, 1, executor.GetFunctionCounter(performTransferOnEthereum)) assert.Equal(t, 1, executor.GetFunctionCounter(WaitAndReturnFinalBatchStatuses)) - assert.Equal(t, 1, executor.GetFunctionCounter(proposeSetStatusOnMultiversX)) - assert.Equal(t, 1, executor.GetFunctionCounter(getAndStoreActionIDForProposeSetStatusFromMultiversX)) - assert.Equal(t, 2, executor.GetFunctionCounter(wasActionPerformedOnMultiversX)) - assert.Equal(t, 1, executor.GetFunctionCounter(performActionOnMultiversX)) + assert.Equal(t, 1, executor.GetFunctionCounter(proposeSetStatusOnKC)) + assert.Equal(t, 1, executor.GetFunctionCounter(getAndStoreActionIDForProposeSetStatusFromKC)) + assert.Equal(t, 2, executor.GetFunctionCounter(wasActionPerformedOnKC)) + assert.Equal(t, 1, executor.GetFunctionCounter(performActionOnKC)) - assert.Equal(t, 1, executor.GetFunctionCounter(wasActionSignedOnMultiversX)) + assert.Equal(t, 1, executor.GetFunctionCounter(wasActionSignedOnKC)) assert.Equal(t, 1, executor.GetFunctionCounter(getStoredActionID)) assert.Nil(t, eh.lastError) @@ -269,19 +269,19 @@ func TestHappyCaseWhenLeaderSetStatusAlreadySigned(t *testing.T) { func TestOneStepErrors_ShouldReturnToPendingBatch(t *testing.T) { stepsThatCanError := []bridgeCore.StepIdentifier{ - getBatchFromMultiversX, + getBatchFromKC, wasTransferPerformedOnEthereum, signTransferOnEthereum, processQuorumReachedOnEthereum, performTransferOnEthereum, - wasSetStatusProposedOnMultiversX, - proposeSetStatusOnMultiversX, - getAndStoreActionIDForProposeSetStatusFromMultiversX, - wasActionSignedOnMultiversX, - processQuorumReachedOnMultiversX, - wasActionPerformedOnMultiversX, - performActionOnMultiversX, - signActionOnMultiversX, + wasSetStatusProposedOnKC, + proposeSetStatusOnKC, + getAndStoreActionIDForProposeSetStatusFromKC, + wasActionSignedOnKC, + processQuorumReachedOnKC, + wasActionPerformedOnKC, + performActionOnKC, + signActionOnKC, } for _, stepThatError := range stepsThatCanError { @@ -293,27 +293,27 @@ func testErrorFlow(t *testing.T, stepThatErrors bridgeCore.StepIdentifier) { t.Logf("\n\n\nnew test for stepThatError: %s", stepThatErrors) numCalled := 0 args := argsBridgeStub{ - failingStep: string(stepThatErrors), - myTurnHandler: trueHandler, - processQuorumReachedOnEthereumHandler: trueHandler, - processQuorumReachedOnMultiversXHandler: trueHandler, - wasActionSignedOnMultiversXHandler: trueHandler, - wasActionPerformedOnMultiversXHandler: func() bool { + failingStep: string(stepThatErrors), + myTurnHandler: trueHandler, + processQuorumReachedOnEthereumHandler: trueHandler, + processQuorumReachedOnKCHandler: trueHandler, + wasActionSignedOnKCHandler: trueHandler, + wasActionPerformedOnKCHandler: func() bool { numCalled++ return numCalled > 1 }, - wasTransferPerformedOnEthereumHandler: falseHandler, - maxRetriesReachedEthereumHandler: falseHandler, - maxRetriesReachedMultiversXHandler: falseHandler, - wasSetStatusProposedOnMultiversXHandler: falseHandler, + wasTransferPerformedOnEthereumHandler: falseHandler, + maxRetriesReachedEthereumHandler: falseHandler, + maxRetriesReachedKCHandler: falseHandler, + wasSetStatusProposedOnKCHandler: falseHandler, } - if stepThatErrors == "SignActionOnMultiversX" { - args.wasActionSignedOnMultiversXHandler = falseHandler + if stepThatErrors == "SignActionOnKC" { + args.wasActionSignedOnKCHandler = falseHandler } executor, eh := createMockBridge(args) - sm := createStateMachine(t, executor, GettingPendingBatchFromMultiversX) + sm := createStateMachine(t, executor, GettingPendingBatchFromKC) maxNumSteps := 12 for i := 0; i < maxNumSteps; i++ { @@ -321,7 +321,7 @@ func testErrorFlow(t *testing.T, stepThatErrors bridgeCore.StepIdentifier) { assert.Nil(t, err) if eh.lastError != nil { - if sm.CurrentStep.Identifier() == GettingPendingBatchFromMultiversX { + if sm.CurrentStep.Identifier() == GettingPendingBatchFromKC { return } diff --git a/bridges/ethMultiversX/steps/multiversxToEth/step01GetPending.go b/bridges/ethKC/steps/kcToEth/step01GetPending.go similarity index 61% rename from bridges/ethMultiversX/steps/multiversxToEth/step01GetPending.go rename to bridges/ethKC/steps/kcToEth/step01GetPending.go index 03528fbf..2ccce6ca 100644 --- a/bridges/ethMultiversX/steps/multiversxToEth/step01GetPending.go +++ b/bridges/ethKC/steps/kcToEth/step01GetPending.go @@ -1,9 +1,9 @@ -package multiversxtoeth +package kctoeth import ( "context" - "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX/steps" + "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC/steps" "github.com/klever-io/klv-bridge-eth-go/core" "github.com/klever-io/klv-bridge-eth-go/core/batchProcessor" logger "github.com/multiversx/mx-chain-logger-go" @@ -15,34 +15,34 @@ type getPendingStep struct { // Execute will execute this step returning the next step to be executed func (step *getPendingStep) Execute(ctx context.Context) core.StepIdentifier { - err := step.bridge.CheckMultiversXClientAvailability(ctx) + err := step.bridge.CheckKCClientAvailability(ctx) if err != nil { - step.bridge.PrintInfo(logger.LogDebug, "MultiversX client unavailable", "message", err) + step.bridge.PrintInfo(logger.LogDebug, "Klever Blockchain client unavailable", "message", err) } err = step.bridge.CheckEthereumClientAvailability(ctx) if err != nil { step.bridge.PrintInfo(logger.LogDebug, "Ethereum client unavailable", "message", err) } step.bridge.ResetRetriesCountOnEthereum() - step.resetCountersOnMultiversX() + step.resetCountersOnKC() - batch, err := step.bridge.GetBatchFromMultiversX(ctx) + batch, err := step.bridge.GetBatchFromKC(ctx) if err != nil { - step.bridge.PrintInfo(logger.LogDebug, "cannot fetch MultiversX batch", "message", err) + step.bridge.PrintInfo(logger.LogDebug, "cannot fetch Klever Blockchain batch", "message", err) return step.Identifier() } if batch == nil { - step.bridge.PrintInfo(logger.LogDebug, "no new batch found on MultiversX") + step.bridge.PrintInfo(logger.LogDebug, "no new batch found on KC") return step.Identifier() } - err = step.bridge.StoreBatchFromMultiversX(batch) + err = step.bridge.StoreBatchFromKC(batch) if err != nil { - step.bridge.PrintInfo(logger.LogError, "error storing MultiversX batch", "error", err) + step.bridge.PrintInfo(logger.LogError, "error storing Klever Blockchain batch", "error", err) return step.Identifier() } - step.bridge.PrintInfo(logger.LogInfo, "fetched new batch from MultiversX "+batch.String()) + step.bridge.PrintInfo(logger.LogInfo, "fetched new batch from Klever Blockchain "+batch.String()) wasPerformed, err := step.bridge.WasTransferPerformedOnEthereum(ctx) if err != nil { @@ -51,11 +51,11 @@ func (step *getPendingStep) Execute(ctx context.Context) core.StepIdentifier { } if wasPerformed { step.bridge.PrintInfo(logger.LogInfo, "transfer performed") - return ResolvingSetStatusOnMultiversX + return ResolvingSetStatusOnKC } - argLists := batchProcessor.ExtractListMvxToEth(batch) - err = step.bridge.CheckAvailableTokens(ctx, argLists.EthTokens, argLists.MvxTokenBytes, argLists.Amounts, argLists.Direction) + argLists := batchProcessor.ExtractListKlvToEth(batch) + err = step.bridge.CheckAvailableTokens(ctx, argLists.EthTokens, argLists.KdaTokenBytes, argLists.Amounts, argLists.Direction) if err != nil { step.bridge.PrintInfo(logger.LogError, "error checking available tokens", "error", err, "batch", batch.String()) return step.Identifier() @@ -66,7 +66,7 @@ func (step *getPendingStep) Execute(ctx context.Context) core.StepIdentifier { // Identifier returns the step's identifier func (step *getPendingStep) Identifier() core.StepIdentifier { - return GettingPendingBatchFromMultiversX + return GettingPendingBatchFromKC } // IsInterfaceNil returns true if there is no value under the interface @@ -74,7 +74,7 @@ func (step *getPendingStep) IsInterfaceNil() bool { return step == nil } -func (step *getPendingStep) resetCountersOnMultiversX() { - step.bridge.ResetRetriesCountOnMultiversX() - step.bridge.ResetRetriesOnWasTransferProposedOnMultiversX() +func (step *getPendingStep) resetCountersOnKC() { + step.bridge.ResetRetriesCountOnKC() + step.bridge.ResetRetriesOnWasTransferProposedOnKC() } diff --git a/bridges/ethMultiversX/steps/multiversxToEth/step01GetPending_test.go b/bridges/ethKC/steps/kcToEth/step01GetPending_test.go similarity index 81% rename from bridges/ethMultiversX/steps/multiversxToEth/step01GetPending_test.go rename to bridges/ethKC/steps/kcToEth/step01GetPending_test.go index 5f08f644..095feec2 100644 --- a/bridges/ethMultiversX/steps/multiversxToEth/step01GetPending_test.go +++ b/bridges/ethKC/steps/kcToEth/step01GetPending_test.go @@ -1,4 +1,4 @@ -package multiversxtoeth +package kctoeth import ( "context" @@ -23,10 +23,10 @@ var testBatch = &bridgeCore.TransferBatch{ func TestExecute_GetPending(t *testing.T) { t.Parallel() - t.Run("error on GetBatchFromMultiversX", func(t *testing.T) { + t.Run("error on GetBatchFromKC", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutorGetPending() - bridgeStub.GetBatchFromMultiversXCalled = func(ctx context.Context) (*bridgeCore.TransferBatch, error) { + bridgeStub.GetBatchFromKCCalled = func(ctx context.Context) (*bridgeCore.TransferBatch, error) { return nil, expectedError } @@ -38,10 +38,10 @@ func TestExecute_GetPending(t *testing.T) { stepIdentifier := step.Execute(context.Background()) assert.Equal(t, expectedStepIdentifier, stepIdentifier) }) - t.Run("nil batch on GetBatchFromMultiversX", func(t *testing.T) { + t.Run("nil batch on GetBatchFromKC", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutorGetPending() - bridgeStub.GetBatchFromMultiversXCalled = func(ctx context.Context) (*bridgeCore.TransferBatch, error) { + bridgeStub.GetBatchFromKCCalled = func(ctx context.Context) (*bridgeCore.TransferBatch, error) { return nil, nil } @@ -53,10 +53,10 @@ func TestExecute_GetPending(t *testing.T) { stepIdentifier := step.Execute(context.Background()) assert.Equal(t, expectedStepIdentifier, stepIdentifier) }) - t.Run("error on StoreBatchFromMultiversX", func(t *testing.T) { + t.Run("error on StoreBatchFromKC", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutorGetPending() - bridgeStub.StoreBatchFromMultiversXCalled = func(batch *bridgeCore.TransferBatch) error { + bridgeStub.StoreBatchFromKCCalled = func(batch *bridgeCore.TransferBatch) error { return expectedError } @@ -89,7 +89,7 @@ func TestExecute_GetPending(t *testing.T) { bridgeStub.WasTransferPerformedOnEthereumCalled = func(ctx context.Context) (bool, error) { return false, nil } - bridgeStub.CheckAvailableTokensCalled = func(ctx context.Context, ethTokens []common.Address, mvxTokens [][]byte, amounts []*big.Int, direction batchProcessor.Direction) error { + bridgeStub.CheckAvailableTokensCalled = func(ctx context.Context, ethTokens []common.Address, kdaTokens [][]byte, amounts []*big.Int, direction batchProcessor.Direction) error { return expectedError } @@ -103,14 +103,14 @@ func TestExecute_GetPending(t *testing.T) { }) t.Run("should work", func(t *testing.T) { t.Parallel() - t.Run("if transfer already performed next step should be ResolvingSetStatusOnMultiversX", func(t *testing.T) { + t.Run("if transfer already performed next step should be ResolvingSetStatusOnKC", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutorGetPending() bridgeStub.WasTransferPerformedOnEthereumCalled = func(ctx context.Context) (bool, error) { return true, nil } checkAvailableTokensCalled := false - bridgeStub.CheckAvailableTokensCalled = func(ctx context.Context, ethTokens []common.Address, mvxTokens [][]byte, amounts []*big.Int, direction batchProcessor.Direction) error { + bridgeStub.CheckAvailableTokensCalled = func(ctx context.Context, ethTokens []common.Address, kdaTokens [][]byte, amounts []*big.Int, direction batchProcessor.Direction) error { checkAvailableTokensCalled = true return nil } @@ -121,7 +121,7 @@ func TestExecute_GetPending(t *testing.T) { assert.False(t, step.IsInterfaceNil()) - expectedStepIdentifier := bridgeCore.StepIdentifier(ResolvingSetStatusOnMultiversX) + expectedStepIdentifier := bridgeCore.StepIdentifier(ResolvingSetStatusOnKC) stepIdentifier := step.Execute(context.Background()) assert.Equal(t, expectedStepIdentifier, stepIdentifier) assert.False(t, checkAvailableTokensCalled) @@ -133,7 +133,7 @@ func TestExecute_GetPending(t *testing.T) { return false, nil } checkAvailableTokensCalled := false - bridgeStub.CheckAvailableTokensCalled = func(ctx context.Context, ethTokens []common.Address, mvxTokens [][]byte, amounts []*big.Int, direction batchProcessor.Direction) error { + bridgeStub.CheckAvailableTokensCalled = func(ctx context.Context, ethTokens []common.Address, kdaTokens [][]byte, amounts []*big.Int, direction batchProcessor.Direction) error { checkAvailableTokensCalled = true return nil } @@ -152,10 +152,10 @@ func TestExecute_GetPending(t *testing.T) { func createStubExecutorGetPending() *bridgeTests.BridgeExecutorStub { stub := bridgeTests.NewBridgeExecutorStub() - stub.GetBatchFromMultiversXCalled = func(ctx context.Context) (*bridgeCore.TransferBatch, error) { + stub.GetBatchFromKCCalled = func(ctx context.Context) (*bridgeCore.TransferBatch, error) { return testBatch, nil } - stub.StoreBatchFromMultiversXCalled = func(batch *bridgeCore.TransferBatch) error { + stub.StoreBatchFromKCCalled = func(batch *bridgeCore.TransferBatch) error { return nil } return stub diff --git a/bridges/ethMultiversX/steps/multiversxToEth/step02SignProposedTransfer.go b/bridges/ethKC/steps/kcToEth/step02SignProposedTransfer.go similarity index 84% rename from bridges/ethMultiversX/steps/multiversxToEth/step02SignProposedTransfer.go rename to bridges/ethKC/steps/kcToEth/step02SignProposedTransfer.go index 307ce0d0..0bb8ea3d 100644 --- a/bridges/ethMultiversX/steps/multiversxToEth/step02SignProposedTransfer.go +++ b/bridges/ethKC/steps/kcToEth/step02SignProposedTransfer.go @@ -1,9 +1,9 @@ -package multiversxtoeth +package kctoeth import ( "context" - "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX/steps" + "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC/steps" "github.com/klever-io/klv-bridge-eth-go/core" logger "github.com/multiversx/mx-chain-logger-go" ) @@ -17,13 +17,13 @@ func (step *signProposedTransferStep) Execute(_ context.Context) core.StepIdenti storedBatch := step.bridge.GetStoredBatch() if storedBatch == nil { step.bridge.PrintInfo(logger.LogDebug, "nil batch stored") - return GettingPendingBatchFromMultiversX + return GettingPendingBatchFromKC } err := step.bridge.SignTransferOnEthereum() if err != nil { step.bridge.PrintInfo(logger.LogError, "error signing", "batch ID", storedBatch.ID, "error", err) - return GettingPendingBatchFromMultiversX + return GettingPendingBatchFromKC } return WaitingForQuorumOnTransfer diff --git a/bridges/ethMultiversX/steps/multiversxToEth/step02SignProposedTransfer_test.go b/bridges/ethKC/steps/kcToEth/step02SignProposedTransfer_test.go similarity index 97% rename from bridges/ethMultiversX/steps/multiversxToEth/step02SignProposedTransfer_test.go rename to bridges/ethKC/steps/kcToEth/step02SignProposedTransfer_test.go index 3967126f..324854cd 100644 --- a/bridges/ethMultiversX/steps/multiversxToEth/step02SignProposedTransfer_test.go +++ b/bridges/ethKC/steps/kcToEth/step02SignProposedTransfer_test.go @@ -1,4 +1,4 @@ -package multiversxtoeth +package kctoeth import ( "context" @@ -9,7 +9,7 @@ import ( "github.com/stretchr/testify/assert" ) -var initialStep = bridgeCore.StepIdentifier(GettingPendingBatchFromMultiversX) +var initialStep = bridgeCore.StepIdentifier(GettingPendingBatchFromKC) func TestExecute_SignProposedTransfer(t *testing.T) { t.Parallel() diff --git a/bridges/ethMultiversX/steps/multiversxToEth/step03WaitForQuorumOnTransfer.go b/bridges/ethKC/steps/kcToEth/step03WaitForQuorumOnTransfer.go similarity index 86% rename from bridges/ethMultiversX/steps/multiversxToEth/step03WaitForQuorumOnTransfer.go rename to bridges/ethKC/steps/kcToEth/step03WaitForQuorumOnTransfer.go index 3aaae36a..8ebfe5c3 100644 --- a/bridges/ethMultiversX/steps/multiversxToEth/step03WaitForQuorumOnTransfer.go +++ b/bridges/ethKC/steps/kcToEth/step03WaitForQuorumOnTransfer.go @@ -1,9 +1,9 @@ -package multiversxtoeth +package kctoeth import ( "context" - "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX/steps" + "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC/steps" "github.com/klever-io/klv-bridge-eth-go/core" logger "github.com/multiversx/mx-chain-logger-go" ) @@ -16,13 +16,13 @@ type waitForQuorumOnTransferStep struct { func (step *waitForQuorumOnTransferStep) Execute(ctx context.Context) core.StepIdentifier { if step.bridge.ProcessMaxQuorumRetriesOnEthereum() { step.bridge.PrintInfo(logger.LogDebug, "max number of retries reached, resetting counter") - return GettingPendingBatchFromMultiversX + return GettingPendingBatchFromKC } isQuorumReached, err := step.bridge.ProcessQuorumReachedOnEthereum(ctx) if err != nil { step.bridge.PrintInfo(logger.LogError, "error while checking the quorum on Ethereum", "error", err) - return GettingPendingBatchFromMultiversX + return GettingPendingBatchFromKC } step.bridge.PrintInfo(logger.LogDebug, "quorum reached check", "is reached", isQuorumReached) diff --git a/bridges/ethMultiversX/steps/multiversxToEth/step03WaitForQuorumOnTransfer_test.go b/bridges/ethKC/steps/kcToEth/step03WaitForQuorumOnTransfer_test.go similarity index 99% rename from bridges/ethMultiversX/steps/multiversxToEth/step03WaitForQuorumOnTransfer_test.go rename to bridges/ethKC/steps/kcToEth/step03WaitForQuorumOnTransfer_test.go index e7af67d2..e5fe2b58 100644 --- a/bridges/ethMultiversX/steps/multiversxToEth/step03WaitForQuorumOnTransfer_test.go +++ b/bridges/ethKC/steps/kcToEth/step03WaitForQuorumOnTransfer_test.go @@ -1,4 +1,4 @@ -package multiversxtoeth +package kctoeth import ( "context" diff --git a/bridges/ethMultiversX/steps/multiversxToEth/step04PerformTransfer.go b/bridges/ethKC/steps/kcToEth/step04PerformTransfer.go similarity index 85% rename from bridges/ethMultiversX/steps/multiversxToEth/step04PerformTransfer.go rename to bridges/ethKC/steps/kcToEth/step04PerformTransfer.go index 2ac51721..50b98295 100644 --- a/bridges/ethMultiversX/steps/multiversxToEth/step04PerformTransfer.go +++ b/bridges/ethKC/steps/kcToEth/step04PerformTransfer.go @@ -1,9 +1,9 @@ -package multiversxtoeth +package kctoeth import ( "context" - "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX/steps" + "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC/steps" "github.com/klever-io/klv-bridge-eth-go/core" logger "github.com/multiversx/mx-chain-logger-go" ) @@ -17,19 +17,19 @@ func (step *performTransferStep) Execute(ctx context.Context) core.StepIdentifie wasPerformed, err := step.bridge.WasTransferPerformedOnEthereum(ctx) if err != nil { step.bridge.PrintInfo(logger.LogError, "error determining if transfer was performed or not", "error", err) - return GettingPendingBatchFromMultiversX + return GettingPendingBatchFromKC } if wasPerformed { step.bridge.PrintInfo(logger.LogInfo, "transfer performed") - return ResolvingSetStatusOnMultiversX + return ResolvingSetStatusOnKC } if step.bridge.MyTurnAsLeader() { err = step.bridge.PerformTransferOnEthereum(ctx) if err != nil { step.bridge.PrintInfo(logger.LogError, "error performing transfer on Ethereum", "error", err) - return GettingPendingBatchFromMultiversX + return GettingPendingBatchFromKC } } else { step.bridge.PrintInfo(logger.LogDebug, "not my turn as leader in this round") diff --git a/bridges/ethMultiversX/steps/multiversxToEth/step04PerformTransfer_test.go b/bridges/ethKC/steps/kcToEth/step04PerformTransfer_test.go similarity index 95% rename from bridges/ethMultiversX/steps/multiversxToEth/step04PerformTransfer_test.go rename to bridges/ethKC/steps/kcToEth/step04PerformTransfer_test.go index 95ddf493..9ddded4b 100644 --- a/bridges/ethMultiversX/steps/multiversxToEth/step04PerformTransfer_test.go +++ b/bridges/ethKC/steps/kcToEth/step04PerformTransfer_test.go @@ -1,4 +1,4 @@ -package multiversxtoeth +package kctoeth import ( "context" @@ -47,7 +47,7 @@ func TestExecute_PerformTransfer(t *testing.T) { t.Run("should work", func(t *testing.T) { t.Parallel() - t.Run("if transfer was performed we should go to ResolvingSetStatusOnMultiversX", func(t *testing.T) { + t.Run("if transfer was performed we should go to ResolvingSetStatusOnKC", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutorPerformTransfer() bridgeStub.WasTransferPerformedOnEthereumCalled = func(ctx context.Context) (bool, error) { @@ -59,7 +59,7 @@ func TestExecute_PerformTransfer(t *testing.T) { } assert.False(t, step.IsInterfaceNil()) - expectedStep := core.StepIdentifier(ResolvingSetStatusOnMultiversX) + expectedStep := core.StepIdentifier(ResolvingSetStatusOnKC) stepIdentifier := step.Execute(context.Background()) assert.Equal(t, expectedStep, stepIdentifier) }) diff --git a/bridges/ethMultiversX/steps/multiversxToEth/step05WaitTransferConfirmation.go b/bridges/ethKC/steps/kcToEth/step05WaitTransferConfirmation.go similarity index 88% rename from bridges/ethMultiversX/steps/multiversxToEth/step05WaitTransferConfirmation.go rename to bridges/ethKC/steps/kcToEth/step05WaitTransferConfirmation.go index bbec4b48..d5e3af57 100644 --- a/bridges/ethMultiversX/steps/multiversxToEth/step05WaitTransferConfirmation.go +++ b/bridges/ethKC/steps/kcToEth/step05WaitTransferConfirmation.go @@ -1,9 +1,9 @@ -package multiversxtoeth +package kctoeth import ( "context" - "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX/steps" + "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC/steps" "github.com/klever-io/klv-bridge-eth-go/core" ) diff --git a/bridges/ethMultiversX/steps/multiversxToEth/step05WaitTransferConfirmation_test.go b/bridges/ethKC/steps/kcToEth/step05WaitTransferConfirmation_test.go similarity index 96% rename from bridges/ethMultiversX/steps/multiversxToEth/step05WaitTransferConfirmation_test.go rename to bridges/ethKC/steps/kcToEth/step05WaitTransferConfirmation_test.go index d10d2c42..3c013075 100644 --- a/bridges/ethMultiversX/steps/multiversxToEth/step05WaitTransferConfirmation_test.go +++ b/bridges/ethKC/steps/kcToEth/step05WaitTransferConfirmation_test.go @@ -1,4 +1,4 @@ -package multiversxtoeth +package kctoeth import ( "context" diff --git a/bridges/ethMultiversX/steps/multiversxToEth/step06ResolveSetStatus.go b/bridges/ethKC/steps/kcToEth/step06ResolveSetStatus.go similarity index 71% rename from bridges/ethMultiversX/steps/multiversxToEth/step06ResolveSetStatus.go rename to bridges/ethKC/steps/kcToEth/step06ResolveSetStatus.go index 7884b4e7..3f00ce39 100644 --- a/bridges/ethMultiversX/steps/multiversxToEth/step06ResolveSetStatus.go +++ b/bridges/ethKC/steps/kcToEth/step06ResolveSetStatus.go @@ -1,10 +1,10 @@ -package multiversxtoeth +package kctoeth import ( "context" "errors" - "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX/steps" + "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC/steps" "github.com/klever-io/klv-bridge-eth-go/clients" "github.com/klever-io/klv-bridge-eth-go/core" logger "github.com/multiversx/mx-chain-logger-go" @@ -20,38 +20,43 @@ func (step *resolveSetStatusStep) Execute(ctx context.Context) core.StepIdentifi storedBatch := step.bridge.GetStoredBatch() if storedBatch == nil { step.bridge.PrintInfo(logger.LogDebug, "nil batch stored") - return GettingPendingBatchFromMultiversX + return GettingPendingBatchFromKC } - batch, err := step.bridge.GetBatchFromMultiversX(ctx) + batch, err := step.GetBatchFromKC(ctx) isEmptyBatch := batch == nil || (err != nil && errors.Is(err, clients.ErrNoPendingBatchAvailable)) if isEmptyBatch { step.bridge.PrintInfo(logger.LogDebug, "nil/empty batch fetched") - return GettingPendingBatchFromMultiversX + return GettingPendingBatchFromKC } if err != nil { step.bridge.PrintInfo(logger.LogError, "error while fetching batch", "error", err) - return GettingPendingBatchFromMultiversX + return GettingPendingBatchFromKC } statuses := step.bridge.WaitAndReturnFinalBatchStatuses(ctx) if len(statuses) == 0 { - return GettingPendingBatchFromMultiversX + return GettingPendingBatchFromKC } storedBatch.Statuses = statuses step.bridge.ResolveNewDepositsStatuses(uint64(len(batch.Statuses))) - return ProposingSetStatusOnMultiversX + return ProposingSetStatusOnKC } // Identifier returns the step's identifier func (step *resolveSetStatusStep) Identifier() core.StepIdentifier { - return ResolvingSetStatusOnMultiversX + return ResolvingSetStatusOnKC } // IsInterfaceNil returns true if there is no value under the interface func (step *resolveSetStatusStep) IsInterfaceNil() bool { return step == nil } + +// GetBatchFromKC fetches the batch from the Klever Blockchain +func (step *resolveSetStatusStep) GetBatchFromKC(ctx context.Context) (*core.TransferBatch, error) { + return step.bridge.GetBatchFromKC(ctx) +} diff --git a/bridges/ethMultiversX/steps/multiversxToEth/step06ResolveSetStatus_test.go b/bridges/ethKC/steps/kcToEth/step06ResolveSetStatus_test.go similarity index 85% rename from bridges/ethMultiversX/steps/multiversxToEth/step06ResolveSetStatus_test.go rename to bridges/ethKC/steps/kcToEth/step06ResolveSetStatus_test.go index 21a21b38..549890b6 100644 --- a/bridges/ethMultiversX/steps/multiversxToEth/step06ResolveSetStatus_test.go +++ b/bridges/ethKC/steps/kcToEth/step06ResolveSetStatus_test.go @@ -1,4 +1,4 @@ -package multiversxtoeth +package kctoeth import ( "context" @@ -34,7 +34,7 @@ func TestExecute_ResolveSetStatus(t *testing.T) { t.Run("error on GetStoredBatch", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutorResolveSetStatus() - bridgeStub.GetBatchFromMultiversXCalled = func(ctx context.Context) (*bridgeCore.TransferBatch, error) { + bridgeStub.GetBatchFromKCCalled = func(ctx context.Context) (*bridgeCore.TransferBatch, error) { return nil, expectedError } clearWasCalled := false @@ -50,10 +50,10 @@ func TestExecute_ResolveSetStatus(t *testing.T) { assert.Equal(t, initialStep, stepIdentifier) assert.True(t, clearWasCalled) }) - t.Run("nil batch on GetBatchFromMultiversX", func(t *testing.T) { + t.Run("nil batch on GetBatchFromKC", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutorResolveSetStatus() - bridgeStub.GetBatchFromMultiversXCalled = func(ctx context.Context) (*bridgeCore.TransferBatch, error) { + bridgeStub.GetBatchFromKCCalled = func(ctx context.Context) (*bridgeCore.TransferBatch, error) { return nil, nil } clearWasCalled := false @@ -69,7 +69,7 @@ func TestExecute_ResolveSetStatus(t *testing.T) { assert.Equal(t, initialStep, stepIdentifier) assert.True(t, clearWasCalled) }) - t.Run("WaitAndReturnFinalBatchStatusesCalled returns nil, should go to GettingPendingBatchFromMultiversX", func(t *testing.T) { + t.Run("WaitAndReturnFinalBatchStatusesCalled returns nil, should go to GettingPendingBatchFromKC", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutorResolveSetStatus() @@ -81,7 +81,7 @@ func TestExecute_ResolveSetStatus(t *testing.T) { stepIdentifier := step.Execute(context.Background()) assert.Equal(t, initialStep, stepIdentifier) }) - t.Run("WaitAndReturnFinalBatchStatusesCalled returns empty slice, should go to GettingPendingBatchFromMultiversX", func(t *testing.T) { + t.Run("WaitAndReturnFinalBatchStatusesCalled returns empty slice, should go to GettingPendingBatchFromKC", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutorResolveSetStatus() @@ -96,7 +96,7 @@ func TestExecute_ResolveSetStatus(t *testing.T) { stepIdentifier := step.Execute(context.Background()) assert.Equal(t, initialStep, stepIdentifier) }) - t.Run("WaitAndReturnFinalBatchStatusesCalled should finish with success and go to ProposingSetStatusOnMultiversX", func(t *testing.T) { + t.Run("WaitAndReturnFinalBatchStatusesCalled should finish with success and go to ProposingSetStatusOnKC", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutorResolveSetStatus() bridgeStub.WaitAndReturnFinalBatchStatusesCalled = func(ctx context.Context) []byte { @@ -118,7 +118,7 @@ func TestExecute_ResolveSetStatus(t *testing.T) { assert.False(t, step.IsInterfaceNil()) - expectedStep := bridgeCore.StepIdentifier(ProposingSetStatusOnMultiversX) + expectedStep := bridgeCore.StepIdentifier(ProposingSetStatusOnKC) stepIdentifier := step.Execute(context.Background()) assert.True(t, wasCalled) assert.NotEqual(t, step.Identifier(), stepIdentifier) @@ -132,7 +132,7 @@ func createStubExecutorResolveSetStatus() *bridgeTests.BridgeExecutorStub { stub.GetStoredBatchCalled = func() *bridgeCore.TransferBatch { return testBatch } - stub.GetBatchFromMultiversXCalled = func(ctx context.Context) (*bridgeCore.TransferBatch, error) { + stub.GetBatchFromKCCalled = func(ctx context.Context) (*bridgeCore.TransferBatch, error) { return testBatch, nil } return stub diff --git a/bridges/ethMultiversX/steps/multiversxToEth/step07ProposeSetStatus.go b/bridges/ethKC/steps/kcToEth/step07ProposeSetStatus.go similarity index 68% rename from bridges/ethMultiversX/steps/multiversxToEth/step07ProposeSetStatus.go rename to bridges/ethKC/steps/kcToEth/step07ProposeSetStatus.go index d5190dac..f5f4c9d6 100644 --- a/bridges/ethMultiversX/steps/multiversxToEth/step07ProposeSetStatus.go +++ b/bridges/ethKC/steps/kcToEth/step07ProposeSetStatus.go @@ -1,9 +1,9 @@ -package multiversxtoeth +package kctoeth import ( "context" - "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX/steps" + "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC/steps" "github.com/klever-io/klv-bridge-eth-go/core" logger "github.com/multiversx/mx-chain-logger-go" ) @@ -17,23 +17,23 @@ func (step *proposeSetStatusStep) Execute(ctx context.Context) core.StepIdentifi batch := step.bridge.GetStoredBatch() if batch == nil { step.bridge.PrintInfo(logger.LogDebug, "nil batch stored") - return GettingPendingBatchFromMultiversX + return GettingPendingBatchFromKC } - if step.bridge.ProcessMaxRetriesOnWasTransferProposedOnMultiversX() { + if step.bridge.ProcessMaxRetriesOnWasTransferProposedOnKC() { step.bridge.PrintInfo(logger.LogDebug, "max number of retries reached, resetting counter") - return GettingPendingBatchFromMultiversX + return GettingPendingBatchFromKC } - wasSetStatusProposed, err := step.bridge.WasSetStatusProposedOnMultiversX(ctx) + wasSetStatusProposed, err := step.bridge.WasSetStatusProposedOnKC(ctx) if err != nil { - step.bridge.PrintInfo(logger.LogError, "error determining if the set status action was proposed or not on MultiversX", + step.bridge.PrintInfo(logger.LogError, "error determining if the set status action was proposed or not on KC", "batch ID", batch.ID, "error", err) - return GettingPendingBatchFromMultiversX + return GettingPendingBatchFromKC } if wasSetStatusProposed { - return SigningProposedSetStatusOnMultiversX + return SigningProposedSetStatusOnKC } if !step.bridge.MyTurnAsLeader() { @@ -41,19 +41,19 @@ func (step *proposeSetStatusStep) Execute(ctx context.Context) core.StepIdentifi return step.Identifier() } - err = step.bridge.ProposeSetStatusOnMultiversX(ctx) + err = step.bridge.ProposeSetStatusOnKC(ctx) if err != nil { - step.bridge.PrintInfo(logger.LogError, "error proposing transfer on MultiversX", + step.bridge.PrintInfo(logger.LogError, "error proposing transfer on KC", "batch ID", batch.ID, "error", err) - return GettingPendingBatchFromMultiversX + return GettingPendingBatchFromKC } - return SigningProposedSetStatusOnMultiversX + return SigningProposedSetStatusOnKC } // Identifier returns the step's identifier func (step *proposeSetStatusStep) Identifier() core.StepIdentifier { - return ProposingSetStatusOnMultiversX + return ProposingSetStatusOnKC } // IsInterfaceNil returns true if there is no value under the interface diff --git a/bridges/ethMultiversX/steps/multiversxToEth/step07ProposeSetStatus_test.go b/bridges/ethKC/steps/kcToEth/step07ProposeSetStatus_test.go similarity index 78% rename from bridges/ethMultiversX/steps/multiversxToEth/step07ProposeSetStatus_test.go rename to bridges/ethKC/steps/kcToEth/step07ProposeSetStatus_test.go index f6ec5408..d5a84d0d 100644 --- a/bridges/ethMultiversX/steps/multiversxToEth/step07ProposeSetStatus_test.go +++ b/bridges/ethKC/steps/kcToEth/step07ProposeSetStatus_test.go @@ -1,4 +1,4 @@ -package multiversxtoeth +package kctoeth import ( "context" @@ -29,7 +29,7 @@ func TestExecute_ProposeSetStatus(t *testing.T) { t.Run("max retries reached", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutorProposeSetStatus() - bridgeStub.ProcessMaxRetriesOnWasTransferProposedOnMultiversXCalled = func() bool { + bridgeStub.ProcessMaxRetriesOnWasTransferProposedOnKCCalled = func() bool { return true } @@ -41,10 +41,10 @@ func TestExecute_ProposeSetStatus(t *testing.T) { assert.Equal(t, initialStep, stepIdentifier) }) - t.Run("error on WasSetStatusProposedOnMultiversX", func(t *testing.T) { + t.Run("error on WasSetStatusProposedOnKC", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutorProposeSetStatus() - bridgeStub.WasSetStatusProposedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + bridgeStub.WasSetStatusProposedOnKCCalled = func(ctx context.Context) (bool, error) { return false, expectedError } @@ -56,10 +56,10 @@ func TestExecute_ProposeSetStatus(t *testing.T) { assert.Equal(t, initialStep, stepIdentifier) }) - t.Run("error on ProposeSetStatusOnMultiversX", func(t *testing.T) { + t.Run("error on ProposeSetStatusOnKC", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutorProposeSetStatus() - bridgeStub.ProposeSetStatusOnMultiversXCalled = func(ctx context.Context) error { + bridgeStub.ProposeSetStatusOnKCCalled = func(ctx context.Context) error { return expectedError } @@ -73,10 +73,10 @@ func TestExecute_ProposeSetStatus(t *testing.T) { t.Run("should work", func(t *testing.T) { t.Parallel() - t.Run("if SetStatus was proposed it should go to SigningProposedSetStatusOnMultiversX", func(t *testing.T) { + t.Run("if SetStatus was proposed it should go to SigningProposedSetStatusOnKC", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutorProposeSetStatus() - bridgeStub.WasSetStatusProposedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + bridgeStub.WasSetStatusProposedOnKCCalled = func(ctx context.Context) (bool, error) { return true, nil } @@ -85,7 +85,7 @@ func TestExecute_ProposeSetStatus(t *testing.T) { } assert.False(t, step.IsInterfaceNil()) - expectedStep := bridgeCore.StepIdentifier(SigningProposedSetStatusOnMultiversX) + expectedStep := bridgeCore.StepIdentifier(SigningProposedSetStatusOnKC) stepIdentifier := step.Execute(context.Background()) assert.Equal(t, expectedStep, stepIdentifier) @@ -106,7 +106,7 @@ func TestExecute_ProposeSetStatus(t *testing.T) { assert.Equal(t, step.Identifier(), stepIdentifier) }) - t.Run("if leader, should go to SigningProposedTransferOnMultiversX", func(t *testing.T) { + t.Run("if leader, should go to SigningProposedTransferOnKC", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutorProposeSetStatus() @@ -114,7 +114,7 @@ func TestExecute_ProposeSetStatus(t *testing.T) { bridge: bridgeStub, } - expectedStep := bridgeCore.StepIdentifier(SigningProposedSetStatusOnMultiversX) + expectedStep := bridgeCore.StepIdentifier(SigningProposedSetStatusOnKC) stepIdentifier := step.Execute(context.Background()) assert.Equal(t, expectedStep, stepIdentifier) @@ -129,13 +129,13 @@ func createStubExecutorProposeSetStatus() *bridgeTests.BridgeExecutorStub { stub.GetStoredBatchCalled = func() *bridgeCore.TransferBatch { return testBatch } - stub.WasSetStatusProposedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + stub.WasSetStatusProposedOnKCCalled = func(ctx context.Context) (bool, error) { return false, nil } stub.MyTurnAsLeaderCalled = func() bool { return true } - stub.ProposeSetStatusOnMultiversXCalled = func(ctx context.Context) error { + stub.ProposeSetStatusOnKCCalled = func(ctx context.Context) error { return nil } return stub diff --git a/bridges/ethMultiversX/steps/multiversxToEth/step08SignProposedSetStatus.go b/bridges/ethKC/steps/kcToEth/step08SignProposedSetStatus.go similarity index 69% rename from bridges/ethMultiversX/steps/multiversxToEth/step08SignProposedSetStatus.go rename to bridges/ethKC/steps/kcToEth/step08SignProposedSetStatus.go index d7ecae8f..c06e72b2 100644 --- a/bridges/ethMultiversX/steps/multiversxToEth/step08SignProposedSetStatus.go +++ b/bridges/ethKC/steps/kcToEth/step08SignProposedSetStatus.go @@ -1,10 +1,10 @@ -package multiversxtoeth +package kctoeth import ( "context" - ethmultiversx "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX" - "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX/steps" + ethKC "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC" + "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC/steps" "github.com/klever-io/klv-bridge-eth-go/core" logger "github.com/multiversx/mx-chain-logger-go" ) @@ -18,38 +18,38 @@ func (step *signProposedSetStatusStep) Execute(ctx context.Context) core.StepIde storedBatch := step.bridge.GetStoredBatch() if storedBatch == nil { step.bridge.PrintInfo(logger.LogDebug, "nil stored batch") - return GettingPendingBatchFromMultiversX + return GettingPendingBatchFromKC } - actionID, err := step.bridge.GetAndStoreActionIDForProposeSetStatusFromMultiversX(ctx) + actionID, err := step.bridge.GetAndStoreActionIDForProposeSetStatusFromKC(ctx) if err != nil { step.bridge.PrintInfo(logger.LogError, "error fetching action ID", "batch ID", storedBatch.ID, "error", err) - return GettingPendingBatchFromMultiversX + return GettingPendingBatchFromKC } - if actionID == ethmultiversx.InvalidActionID { + if actionID == ethKC.InvalidActionID { step.bridge.PrintInfo(logger.LogError, "contract error, got invalid action ID", - "batch ID", storedBatch.ID, "error", err, "action ID", actionID) - return GettingPendingBatchFromMultiversX + "batch ID", storedBatch.ID, "action ID", actionID) + return GettingPendingBatchFromKC } step.bridge.PrintInfo(logger.LogInfo, "fetched action ID", "action ID", actionID, "batch ID", storedBatch.ID) - wasSigned, err := step.bridge.WasActionSignedOnMultiversX(ctx) + wasSigned, err := step.bridge.WasActionSignedOnKC(ctx) if err != nil { step.bridge.PrintInfo(logger.LogError, "error determining if the proposed transfer was signed or not", "batch ID", storedBatch.ID, "error", err) - return GettingPendingBatchFromMultiversX + return GettingPendingBatchFromKC } if wasSigned { return WaitingForQuorumOnSetStatus } - err = step.bridge.SignActionOnMultiversX(ctx) + err = step.bridge.SignActionOnKC(ctx) if err != nil { step.bridge.PrintInfo(logger.LogError, "error signing the proposed set status", "batch ID", storedBatch.ID, "error", err) - return GettingPendingBatchFromMultiversX + return GettingPendingBatchFromKC } return WaitingForQuorumOnSetStatus @@ -57,7 +57,7 @@ func (step *signProposedSetStatusStep) Execute(ctx context.Context) core.StepIde // Identifier returns the step's identifier func (step *signProposedSetStatusStep) Identifier() core.StepIdentifier { - return SigningProposedSetStatusOnMultiversX + return SigningProposedSetStatusOnKC } // IsInterfaceNil returns true if there is no value under the interface diff --git a/bridges/ethMultiversX/steps/multiversxToEth/step08SignProposedSetStatus_test.go b/bridges/ethKC/steps/kcToEth/step08SignProposedSetStatus_test.go similarity index 71% rename from bridges/ethMultiversX/steps/multiversxToEth/step08SignProposedSetStatus_test.go rename to bridges/ethKC/steps/kcToEth/step08SignProposedSetStatus_test.go index 114efc07..3d50aaf7 100644 --- a/bridges/ethMultiversX/steps/multiversxToEth/step08SignProposedSetStatus_test.go +++ b/bridges/ethKC/steps/kcToEth/step08SignProposedSetStatus_test.go @@ -1,10 +1,10 @@ -package multiversxtoeth +package kctoeth import ( "context" "testing" - ethmultiversx "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX" + ethKC "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC" bridgeCore "github.com/klever-io/klv-bridge-eth-go/core" bridgeTests "github.com/klever-io/klv-bridge-eth-go/testsCommon/bridge" "github.com/stretchr/testify/assert" @@ -28,11 +28,11 @@ func TestExecute_SignProposedSetStatus(t *testing.T) { stepIdentifier := step.Execute(context.Background()) assert.Equal(t, initialStep, stepIdentifier) }) - t.Run("error on GetAndStoreActionIDForProposeSetStatusFromMultiversX", func(t *testing.T) { + t.Run("error on GetAndStoreActionIDForProposeSetStatusFromKC", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutorSignProposedSetStatus() - bridgeStub.GetAndStoreActionIDForProposeSetStatusFromMultiversXCalled = func(ctx context.Context) (uint64, error) { - return ethmultiversx.InvalidActionID, expectedError + bridgeStub.GetAndStoreActionIDForProposeSetStatusFromKCCalled = func(ctx context.Context) (uint64, error) { + return ethKC.InvalidActionID, expectedError } step := signProposedSetStatusStep{ @@ -42,11 +42,11 @@ func TestExecute_SignProposedSetStatus(t *testing.T) { stepIdentifier := step.Execute(context.Background()) assert.Equal(t, initialStep, stepIdentifier) }) - t.Run("invalid actionID on GetAndStoreActionIDForProposeSetStatusFromMultiversX", func(t *testing.T) { + t.Run("invalid actionID on GetAndStoreActionIDForProposeSetStatusFromKC", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutorSignProposedSetStatus() - bridgeStub.GetAndStoreActionIDForProposeSetStatusFromMultiversXCalled = func(ctx context.Context) (uint64, error) { - return ethmultiversx.InvalidActionID, nil + bridgeStub.GetAndStoreActionIDForProposeSetStatusFromKCCalled = func(ctx context.Context) (uint64, error) { + return ethKC.InvalidActionID, nil } step := signProposedSetStatusStep{ @@ -56,10 +56,10 @@ func TestExecute_SignProposedSetStatus(t *testing.T) { stepIdentifier := step.Execute(context.Background()) assert.Equal(t, initialStep, stepIdentifier) }) - t.Run("error on WasActionSignedOnMultiversX", func(t *testing.T) { + t.Run("error on WasActionSignedOnKC", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutorSignProposedSetStatus() - bridgeStub.WasActionSignedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + bridgeStub.WasActionSignedOnKCCalled = func(ctx context.Context) (bool, error) { return false, expectedError } @@ -70,10 +70,10 @@ func TestExecute_SignProposedSetStatus(t *testing.T) { stepIdentifier := step.Execute(context.Background()) assert.Equal(t, initialStep, stepIdentifier) }) - t.Run("error on SignActionOnMultiversX", func(t *testing.T) { + t.Run("error on SignActionOnKC", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutorSignProposedSetStatus() - bridgeStub.SignActionOnMultiversXCalled = func(ctx context.Context) error { + bridgeStub.SignActionOnKCCalled = func(ctx context.Context) error { return expectedError } @@ -89,12 +89,12 @@ func TestExecute_SignProposedSetStatus(t *testing.T) { t.Run("if proposed set status was signed, go to WaitingForQuorumOnSetStatus", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutorSignProposedSetStatus() - bridgeStub.WasActionSignedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + bridgeStub.WasActionSignedOnKCCalled = func(ctx context.Context) (bool, error) { return true, nil } wasCalled := false - bridgeStub.SignActionOnMultiversXCalled = func(ctx context.Context) error { + bridgeStub.SignActionOnKCCalled = func(ctx context.Context) error { wasCalled = true return nil } @@ -112,7 +112,7 @@ func TestExecute_SignProposedSetStatus(t *testing.T) { t.Parallel() bridgeStub := createStubExecutorSignProposedSetStatus() wasCalled := false - bridgeStub.SignActionOnMultiversXCalled = func(ctx context.Context) error { + bridgeStub.SignActionOnKCCalled = func(ctx context.Context) error { wasCalled = true return nil } @@ -137,13 +137,13 @@ func createStubExecutorSignProposedSetStatus() *bridgeTests.BridgeExecutorStub { stub.GetStoredBatchCalled = func() *bridgeCore.TransferBatch { return testBatch } - stub.GetAndStoreActionIDForProposeSetStatusFromMultiversXCalled = func(ctx context.Context) (uint64, error) { + stub.GetAndStoreActionIDForProposeSetStatusFromKCCalled = func(ctx context.Context) (uint64, error) { return actionID, nil } - stub.WasActionSignedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + stub.WasActionSignedOnKCCalled = func(ctx context.Context) (bool, error) { return false, nil } - stub.SignActionOnMultiversXCalled = func(ctx context.Context) error { + stub.SignActionOnKCCalled = func(ctx context.Context) error { return nil } return stub diff --git a/bridges/ethMultiversX/steps/multiversxToEth/step09WaitForQuorumOnSetStatus.go b/bridges/ethKC/steps/kcToEth/step09WaitForQuorumOnSetStatus.go similarity index 77% rename from bridges/ethMultiversX/steps/multiversxToEth/step09WaitForQuorumOnSetStatus.go rename to bridges/ethKC/steps/kcToEth/step09WaitForQuorumOnSetStatus.go index c6e60996..6bd97bf7 100644 --- a/bridges/ethMultiversX/steps/multiversxToEth/step09WaitForQuorumOnSetStatus.go +++ b/bridges/ethKC/steps/kcToEth/step09WaitForQuorumOnSetStatus.go @@ -1,9 +1,9 @@ -package multiversxtoeth +package kctoeth import ( "context" - "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX/steps" + "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC/steps" "github.com/klever-io/klv-bridge-eth-go/core" logger "github.com/multiversx/mx-chain-logger-go" ) @@ -14,15 +14,15 @@ type waitForQuorumOnSetStatusStep struct { // Execute will execute this step returning the next step to be executed func (step *waitForQuorumOnSetStatusStep) Execute(ctx context.Context) core.StepIdentifier { - if step.bridge.ProcessMaxQuorumRetriesOnMultiversX() { + if step.bridge.ProcessMaxQuorumRetriesOnKC() { step.bridge.PrintInfo(logger.LogDebug, "max number of retries reached, resetting counter") - return GettingPendingBatchFromMultiversX + return GettingPendingBatchFromKC } - isQuorumReached, err := step.bridge.ProcessQuorumReachedOnMultiversX(ctx) + isQuorumReached, err := step.bridge.ProcessQuorumReachedOnKC(ctx) if err != nil { step.bridge.PrintInfo(logger.LogError, "error while checking the quorum", "error", err) - return GettingPendingBatchFromMultiversX + return GettingPendingBatchFromKC } step.bridge.PrintInfo(logger.LogDebug, "quorum reached check", "is reached", isQuorumReached) diff --git a/bridges/ethMultiversX/steps/multiversxToEth/step09WaitForQuorumOnSetStatus_test.go b/bridges/ethKC/steps/kcToEth/step09WaitForQuorumOnSetStatus_test.go similarity index 78% rename from bridges/ethMultiversX/steps/multiversxToEth/step09WaitForQuorumOnSetStatus_test.go rename to bridges/ethKC/steps/kcToEth/step09WaitForQuorumOnSetStatus_test.go index ad7ed60b..9b1eb557 100644 --- a/bridges/ethMultiversX/steps/multiversxToEth/step09WaitForQuorumOnSetStatus_test.go +++ b/bridges/ethKC/steps/kcToEth/step09WaitForQuorumOnSetStatus_test.go @@ -1,4 +1,4 @@ -package multiversxtoeth +package kctoeth import ( "context" @@ -12,10 +12,10 @@ import ( func TestExecute_WaitForQuorumOnSetStatus(t *testing.T) { t.Parallel() - t.Run("error on ProcessQuorumReachedOnMultiversX", func(t *testing.T) { + t.Run("error on ProcessQuorumReachedOnKC", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutorWaitForQuorumOnSetStatus() - bridgeStub.ProcessQuorumReachedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + bridgeStub.ProcessQuorumReachedOnKCCalled = func(ctx context.Context) (bool, error) { return false, expectedError } @@ -30,7 +30,7 @@ func TestExecute_WaitForQuorumOnSetStatus(t *testing.T) { t.Run("max retries reached", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutorWaitForQuorumOnSetStatus() - bridgeStub.ProcessMaxQuorumRetriesOnMultiversXCalled = func() bool { + bridgeStub.ProcessMaxQuorumRetriesOnKCCalled = func() bool { return true } @@ -45,7 +45,7 @@ func TestExecute_WaitForQuorumOnSetStatus(t *testing.T) { t.Run("quorum not reached", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutorWaitForQuorumOnSetStatus() - bridgeStub.ProcessQuorumReachedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + bridgeStub.ProcessQuorumReachedOnKCCalled = func(ctx context.Context) (bool, error) { return false, nil } @@ -63,7 +63,7 @@ func TestExecute_WaitForQuorumOnSetStatus(t *testing.T) { t.Run("quorum reached", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutorWaitForQuorumOnSetStatus() - bridgeStub.ProcessQuorumReachedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + bridgeStub.ProcessQuorumReachedOnKCCalled = func(ctx context.Context) (bool, error) { return true, nil } @@ -81,7 +81,7 @@ func TestExecute_WaitForQuorumOnSetStatus(t *testing.T) { func createStubExecutorWaitForQuorumOnSetStatus() *bridgeTests.BridgeExecutorStub { stub := bridgeTests.NewBridgeExecutorStub() - stub.ProcessMaxQuorumRetriesOnMultiversXCalled = func() bool { + stub.ProcessMaxQuorumRetriesOnKCCalled = func() bool { return false } return stub diff --git a/bridges/ethMultiversX/steps/multiversxToEth/step10PerformSetStatus.go b/bridges/ethKC/steps/kcToEth/step10PerformSetStatus.go similarity index 78% rename from bridges/ethMultiversX/steps/multiversxToEth/step10PerformSetStatus.go rename to bridges/ethKC/steps/kcToEth/step10PerformSetStatus.go index 6293e83c..acc74ee8 100644 --- a/bridges/ethMultiversX/steps/multiversxToEth/step10PerformSetStatus.go +++ b/bridges/ethKC/steps/kcToEth/step10PerformSetStatus.go @@ -1,9 +1,9 @@ -package multiversxtoeth +package kctoeth import ( "context" - "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX/steps" + "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC/steps" "github.com/klever-io/klv-bridge-eth-go/core" logger "github.com/multiversx/mx-chain-logger-go" ) @@ -14,17 +14,17 @@ type performSetStatusStep struct { // Execute will execute this step returning the next step to be executed func (step *performSetStatusStep) Execute(ctx context.Context) core.StepIdentifier { - wasPerformed, err := step.bridge.WasActionPerformedOnMultiversX(ctx) + wasPerformed, err := step.bridge.WasActionPerformedOnKC(ctx) if err != nil { step.bridge.PrintInfo(logger.LogError, "error determining if the set status was proposed or not", "action ID", step.bridge.GetStoredActionID(), "error", err) - return GettingPendingBatchFromMultiversX + return GettingPendingBatchFromKC } if wasPerformed { step.bridge.PrintInfo(logger.LogInfo, "action ID performed", "action ID", step.bridge.GetStoredActionID()) - return GettingPendingBatchFromMultiversX + return GettingPendingBatchFromKC } if !step.bridge.MyTurnAsLeader() { @@ -32,11 +32,11 @@ func (step *performSetStatusStep) Execute(ctx context.Context) core.StepIdentifi return step.Identifier() } - err = step.bridge.PerformActionOnMultiversX(ctx) + err = step.bridge.PerformActionOnKC(ctx) if err != nil { step.bridge.PrintInfo(logger.LogError, "error performing action ID", "action ID", step.bridge.GetStoredActionID(), "error", err) - return GettingPendingBatchFromMultiversX + return GettingPendingBatchFromKC } return step.Identifier() diff --git a/bridges/ethMultiversX/steps/multiversxToEth/step10PerformSetStatus_test.go b/bridges/ethKC/steps/kcToEth/step10PerformSetStatus_test.go similarity index 76% rename from bridges/ethMultiversX/steps/multiversxToEth/step10PerformSetStatus_test.go rename to bridges/ethKC/steps/kcToEth/step10PerformSetStatus_test.go index 3e9ffd22..3efa0459 100644 --- a/bridges/ethMultiversX/steps/multiversxToEth/step10PerformSetStatus_test.go +++ b/bridges/ethKC/steps/kcToEth/step10PerformSetStatus_test.go @@ -1,4 +1,4 @@ -package multiversxtoeth +package kctoeth import ( "context" @@ -11,10 +11,10 @@ import ( func TestExecute_PerformSetStatus(t *testing.T) { t.Parallel() - t.Run("error on WasActionPerformedOnMultiversXCalled", func(t *testing.T) { + t.Run("error on WasActionPerformedOnKCCalled", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutorPerformSetStatus() - bridgeStub.WasActionPerformedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + bridgeStub.WasActionPerformedOnKCCalled = func(ctx context.Context) (bool, error) { return false, expectedError } @@ -26,13 +26,13 @@ func TestExecute_PerformSetStatus(t *testing.T) { assert.Equal(t, initialStep, stepIdentifier) }) - t.Run("error on PerformActionOnMultiversXCalled", func(t *testing.T) { + t.Run("error on PerformActionOnKCCalled", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutorPerformSetStatus() bridgeStub.MyTurnAsLeaderCalled = func() bool { return true } - bridgeStub.PerformActionOnMultiversXCalled = func(ctx context.Context) error { + bridgeStub.PerformActionOnKCCalled = func(ctx context.Context) error { return expectedError } @@ -49,7 +49,7 @@ func TestExecute_PerformSetStatus(t *testing.T) { t.Run("if transfer was performed we should go to initial step", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutorPerformSetStatus() - bridgeStub.WasActionPerformedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + bridgeStub.WasActionPerformedOnKCCalled = func(ctx context.Context) (bool, error) { return true, nil } @@ -65,7 +65,7 @@ func TestExecute_PerformSetStatus(t *testing.T) { t.Parallel() bridgeStub := createStubExecutorPerformSetStatus() wasCalled := false - bridgeStub.PerformActionOnMultiversXCalled = func(ctx context.Context) error { + bridgeStub.PerformActionOnKCCalled = func(ctx context.Context) error { wasCalled = true return nil } @@ -78,14 +78,14 @@ func TestExecute_PerformSetStatus(t *testing.T) { assert.False(t, wasCalled) assert.Equal(t, step.Identifier(), stepIdentifier) }) - t.Run("if leader, first perform Set Status and then check again WasSetStatusPerformedOnMultiversX", func(t *testing.T) { + t.Run("if leader, first perform Set Status and then check again WasSetStatusPerformedOnKC", func(t *testing.T) { t.Parallel() bridgeStub := createStubExecutorPerformSetStatus() bridgeStub.MyTurnAsLeaderCalled = func() bool { return true } wasCalled := false - bridgeStub.PerformActionOnMultiversXCalled = func(ctx context.Context) error { + bridgeStub.PerformActionOnKCCalled = func(ctx context.Context) error { wasCalled = true return nil } @@ -102,7 +102,7 @@ func TestExecute_PerformSetStatus(t *testing.T) { func createStubExecutorPerformSetStatus() *bridgeTests.BridgeExecutorStub { stub := bridgeTests.NewBridgeExecutorStub() - stub.WasActionPerformedOnMultiversXCalled = func(ctx context.Context) (bool, error) { + stub.WasActionPerformedOnKCCalled = func(ctx context.Context) (bool, error) { return false, nil } stub.MyTurnAsLeaderCalled = func() bool { diff --git a/bridges/ethMultiversX/steps/multiversxToEth/stepsFactory.go b/bridges/ethKC/steps/kcToEth/stepsFactory.go similarity index 78% rename from bridges/ethMultiversX/steps/multiversxToEth/stepsFactory.go rename to bridges/ethKC/steps/kcToEth/stepsFactory.go index f63be9fe..194d10af 100644 --- a/bridges/ethMultiversX/steps/multiversxToEth/stepsFactory.go +++ b/bridges/ethKC/steps/kcToEth/stepsFactory.go @@ -1,10 +1,10 @@ -package multiversxtoeth +package kctoeth import ( "fmt" - ethmultiversx "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX" - "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX/steps" + ethKC "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC" + "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC/steps" "github.com/klever-io/klv-bridge-eth-go/core" "github.com/multiversx/mx-chain-core-go/core/check" ) @@ -12,7 +12,7 @@ import ( // CreateSteps creates all machine states providing the bridge executor func CreateSteps(executor steps.Executor) (core.MachineStates, error) { if check.IfNil(executor) { - return nil, ethmultiversx.ErrNilExecutor + return nil, ethKC.ErrNilExecutor } return createMachineStates(executor) @@ -57,7 +57,7 @@ func createMachineStates(executor steps.Executor) (core.MachineStates, error) { for _, s := range stepsSlice { _, found := machineStates[s.Identifier()] if found { - return nil, fmt.Errorf("%w for identifier '%s'", ethmultiversx.ErrDuplicatedStepIdentifier, s.Identifier()) + return nil, fmt.Errorf("%w for identifier '%s'", ethKC.ErrDuplicatedStepIdentifier, s.Identifier()) } machineStates[s.Identifier()] = s diff --git a/bridges/ethMultiversX/steps/multiversxToEth/stepsFactory_test.go b/bridges/ethKC/steps/kcToEth/stepsFactory_test.go similarity index 76% rename from bridges/ethMultiversX/steps/multiversxToEth/stepsFactory_test.go rename to bridges/ethKC/steps/kcToEth/stepsFactory_test.go index c3b2aee1..bdd7c8cf 100644 --- a/bridges/ethMultiversX/steps/multiversxToEth/stepsFactory_test.go +++ b/bridges/ethKC/steps/kcToEth/stepsFactory_test.go @@ -1,9 +1,9 @@ -package multiversxtoeth +package kctoeth import ( "testing" - ethmultiversx "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX" + ethKC "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC" bridgeTests "github.com/klever-io/klv-bridge-eth-go/testsCommon/bridge" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" @@ -15,7 +15,7 @@ func TestCreateSteps_Errors(t *testing.T) { steps, err := CreateSteps(nil) assert.Nil(t, steps) - assert.Equal(t, ethmultiversx.ErrNilExecutor, err) + assert.Equal(t, ethKC.ErrNilExecutor, err) } func TestCreateSteps_ShouldWork(t *testing.T) { diff --git a/bridges/ethMultiversX/topology/errors.go b/bridges/ethKC/topology/errors.go similarity index 100% rename from bridges/ethMultiversX/topology/errors.go rename to bridges/ethKC/topology/errors.go diff --git a/bridges/ethMultiversX/topology/hashRandomSelector.go b/bridges/ethKC/topology/hashRandomSelector.go similarity index 100% rename from bridges/ethMultiversX/topology/hashRandomSelector.go rename to bridges/ethKC/topology/hashRandomSelector.go diff --git a/bridges/ethMultiversX/topology/hashRandomSelector_test.go b/bridges/ethKC/topology/hashRandomSelector_test.go similarity index 100% rename from bridges/ethMultiversX/topology/hashRandomSelector_test.go rename to bridges/ethKC/topology/hashRandomSelector_test.go diff --git a/bridges/ethMultiversX/topology/interface.go b/bridges/ethKC/topology/interface.go similarity index 100% rename from bridges/ethMultiversX/topology/interface.go rename to bridges/ethKC/topology/interface.go diff --git a/bridges/ethMultiversX/topology/topologyHandler.go b/bridges/ethKC/topology/topologyHandler.go similarity index 100% rename from bridges/ethMultiversX/topology/topologyHandler.go rename to bridges/ethKC/topology/topologyHandler.go diff --git a/bridges/ethMultiversX/topology/topologyHandler_test.go b/bridges/ethKC/topology/topologyHandler_test.go similarity index 100% rename from bridges/ethMultiversX/topology/topologyHandler_test.go rename to bridges/ethKC/topology/topologyHandler_test.go diff --git a/bridges/ethMultiversX/constants.go b/bridges/ethMultiversX/constants.go deleted file mode 100644 index f6dfcff9..00000000 --- a/bridges/ethMultiversX/constants.go +++ /dev/null @@ -1,10 +0,0 @@ -package ethmultiversx - -import ( - "time" -) - -// InvalidActionID represents an invalid id for an action on MultiversX -const InvalidActionID = uint64(0) - -const durationLimit = time.Second diff --git a/clients/balanceValidator/balanceValidator.go b/clients/balanceValidator/balanceValidator.go index 4abbb06b..ead0862d 100644 --- a/clients/balanceValidator/balanceValidator.go +++ b/clients/balanceValidator/balanceValidator.go @@ -17,15 +17,15 @@ import ( // ArgsBalanceValidator represents the DTO struct used in the NewBalanceValidator constructor function type ArgsBalanceValidator struct { - Log logger.Logger - MultiversXClient MultiversXClient - EthereumClient EthereumClient + Log logger.Logger + KCClient KCClient + EthereumClient EthereumClient } type balanceValidator struct { - log logger.Logger - multiversXClient MultiversXClient - ethereumClient EthereumClient + log logger.Logger + kcClient KCClient + ethereumClient EthereumClient } // NewBalanceValidator creates a new instance of type balanceValidator @@ -36,9 +36,9 @@ func NewBalanceValidator(args ArgsBalanceValidator) (*balanceValidator, error) { } return &balanceValidator{ - log: args.Log, - multiversXClient: args.MultiversXClient, - ethereumClient: args.EthereumClient, + log: args.Log, + kcClient: args.KCClient, + ethereumClient: args.EthereumClient, }, nil } @@ -46,8 +46,8 @@ func checkArgs(args ArgsBalanceValidator) error { if check.IfNil(args.Log) { return ErrNilLogger } - if check.IfNil(args.MultiversXClient) { - return ErrNilMultiversXClient + if check.IfNil(args.KCClient) { + return ErrNilKCClient } if check.IfNil(args.EthereumClient) { return ErrNilEthereumClient @@ -57,8 +57,8 @@ func checkArgs(args ArgsBalanceValidator) error { } // CheckToken returns error if the bridge can not happen to the provided token due to faulty balance values in the contracts -func (validator *balanceValidator) CheckToken(ctx context.Context, ethToken common.Address, mvxToken []byte, amount *big.Int, direction batchProcessor.Direction) error { - err := validator.checkRequiredBalance(ctx, ethToken, mvxToken, amount, direction) +func (validator *balanceValidator) CheckToken(ctx context.Context, ethToken common.Address, kdaToken []byte, amount *big.Int, direction batchProcessor.Direction) error { + err := validator.checkRequiredBalance(ctx, ethToken, kdaToken, amount, direction) if err != nil { return err } @@ -68,7 +68,7 @@ func (validator *balanceValidator) CheckToken(ctx context.Context, ethToken comm return err } - isMintBurnOnMultiversX, err := validator.isMintBurnOnMultiversX(ctx, mvxToken) + isMintBurnOnKC, err := validator.isMintBurnOnKC(ctx, kdaToken) if err != nil { return err } @@ -78,7 +78,7 @@ func (validator *balanceValidator) CheckToken(ctx context.Context, ethToken comm return err } - isNativeOnMultiversX, err := validator.isNativeOnMultiversX(ctx, mvxToken) + isNativeOnKC, err := validator.isNativeOnKC(ctx, kdaToken) if err != nil { return err } @@ -87,19 +87,19 @@ func (validator *balanceValidator) CheckToken(ctx context.Context, ethToken comm return fmt.Errorf("%w isNativeOnEthereum = %v, isMintBurnOnEthereum = %v", ErrInvalidSetup, isNativeOnEthereum, isMintBurnOnEthereum) } - if !isNativeOnMultiversX && !isMintBurnOnMultiversX { - return fmt.Errorf("%w isNativeOnMultiversX = %v, isMintBurnOnMultiversX = %v", ErrInvalidSetup, isNativeOnMultiversX, isMintBurnOnMultiversX) + if !isNativeOnKC && !isMintBurnOnKC { + return fmt.Errorf("%w isNativeOnKC = %v, isMintBurnOnKC = %v", ErrInvalidSetup, isNativeOnKC, isMintBurnOnKC) } - if isNativeOnEthereum == isNativeOnMultiversX { - return fmt.Errorf("%w isNativeOnEthereum = %v, isNativeOnMultiversX = %v", ErrInvalidSetup, isNativeOnEthereum, isNativeOnMultiversX) + if isNativeOnEthereum == isNativeOnKC { + return fmt.Errorf("%w isNativeOnEthereum = %v, isNativeOnKC = %v", ErrInvalidSetup, isNativeOnEthereum, isNativeOnKC) } ethAmount, err := validator.computeEthAmount(ctx, ethToken, isMintBurnOnEthereum, isNativeOnEthereum) if err != nil { return err } - mvxAmount, err := validator.computeMvxAmount(ctx, mvxToken, isMintBurnOnMultiversX, isNativeOnMultiversX) + kdaAmount, err := validator.computeKdaAmount(ctx, kdaToken, isMintBurnOnKC, isNativeOnKC) if err != nil { return err } @@ -107,24 +107,24 @@ func (validator *balanceValidator) CheckToken(ctx context.Context, ethToken comm validator.log.Debug("balanceValidator.CheckToken", "ERC20 token", ethToken.String(), "ERC20 balance", ethAmount.String(), - "ESDT token", mvxToken, - "ESDT balance", mvxAmount.String(), + "KDA token", kdaToken, + "KDA balance", kdaAmount.String(), "amount", amount.String(), ) - if ethAmount.Cmp(mvxAmount) != 0 { - return fmt.Errorf("%w, balance for ERC20 token %s is %s and the balance for ESDT token %s is %s, direction %s", - ErrBalanceMismatch, ethToken.String(), ethAmount.String(), mvxToken, mvxAmount.String(), direction) + if ethAmount.Cmp(kdaAmount) != 0 { + return fmt.Errorf("%w, balance for ERC20 token %s is %s and the balance for KDA token %s is %s, direction %s", + ErrBalanceMismatch, ethToken.String(), ethAmount.String(), kdaToken, kdaAmount.String(), direction) } return nil } -func (validator *balanceValidator) checkRequiredBalance(ctx context.Context, ethToken common.Address, mvxToken []byte, amount *big.Int, direction batchProcessor.Direction) error { +func (validator *balanceValidator) checkRequiredBalance(ctx context.Context, ethToken common.Address, kdaToken []byte, amount *big.Int, direction batchProcessor.Direction) error { switch direction { - case batchProcessor.FromMultiversX: + case batchProcessor.FromKC: return validator.ethereumClient.CheckRequiredBalance(ctx, ethToken, amount) - case batchProcessor.ToMultiversX: - return validator.multiversXClient.CheckRequiredBalance(ctx, mvxToken, amount) + case batchProcessor.ToKC: + return validator.kcClient.CheckRequiredBalance(ctx, kdaToken, amount) default: return fmt.Errorf("%w, direction: %s", ErrInvalidDirection, direction) } @@ -147,16 +147,16 @@ func (validator *balanceValidator) isNativeOnEthereum(ctx context.Context, erc20 return isNative, nil } -func (validator *balanceValidator) isMintBurnOnMultiversX(ctx context.Context, token []byte) (bool, error) { - isMintBurn, err := validator.multiversXClient.IsMintBurnToken(ctx, token) +func (validator *balanceValidator) isMintBurnOnKC(ctx context.Context, token []byte) (bool, error) { + isMintBurn, err := validator.kcClient.IsMintBurnToken(ctx, token) if err != nil { return false, err } return isMintBurn, nil } -func (validator *balanceValidator) isNativeOnMultiversX(ctx context.Context, token []byte) (bool, error) { - isNative, err := validator.multiversXClient.IsNativeToken(ctx, token) +func (validator *balanceValidator) isNativeOnKC(ctx context.Context, token []byte) (bool, error) { + isNative, err := validator.kcClient.IsNativeToken(ctx, token) if err != nil { return false, err } @@ -176,7 +176,7 @@ func (validator *balanceValidator) computeEthAmount( if !isMintBurn { // we need to subtract all locked balances on the Ethereum side (all pending, un-executed batches) so the balances - // with the minted MultiversX tokens will match + // with the minted Klever Blockchain tokens will match total, errTotal := validator.ethereumClient.TotalBalances(ctx, token) if errTotal != nil { return nil, errTotal @@ -210,51 +210,51 @@ func (validator *balanceValidator) computeEthAmount( return ethAmount, nil } -func (validator *balanceValidator) computeMvxAmount( +func (validator *balanceValidator) computeKdaAmount( ctx context.Context, token []byte, isMintBurn bool, isNative bool, ) (*big.Int, error) { - mvxAmountInPendingBatches, err := validator.getTotalTransferAmountInPendingMvxBatches(ctx, token) + kdaAmountInPendingBatches, err := validator.getTotalTransferAmountInPendingKlvBatches(ctx, token) if err != nil { return nil, err } if !isMintBurn { - // we need to subtract all locked balances on the MultiversX side (all pending, un-executed batches) so the balances + // we need to subtract all locked balances on the Klever Blockchain side (all pending, un-executed batches) so the balances // with the minted Ethereum tokens will match - total, errTotal := validator.multiversXClient.TotalBalances(ctx, token) + total, errTotal := validator.kcClient.TotalBalances(ctx, token) if errTotal != nil { return nil, errTotal } - return total.Sub(total, mvxAmountInPendingBatches), nil + return total.Sub(total, kdaAmountInPendingBatches), nil } - burnBalances, err := validator.multiversXClient.BurnBalances(ctx, token) + burnBalances, err := validator.kcClient.BurnBalances(ctx, token) if err != nil { return nil, err } - mintBalances, err := validator.multiversXClient.MintBalances(ctx, token) + mintBalances, err := validator.kcClient.MintBalances(ctx, token) if err != nil { return nil, err } - var mvxAmount *big.Int + var kdaAmount *big.Int // we need to cancel out what was burned in advance when the deposit was registered in the contract - burnBalances.Sub(burnBalances, mvxAmountInPendingBatches) + burnBalances.Sub(burnBalances, kdaAmountInPendingBatches) if isNative { - mvxAmount = big.NewInt(0).Sub(burnBalances, mintBalances) + kdaAmount = big.NewInt(0).Sub(burnBalances, mintBalances) } else { - mvxAmount = big.NewInt(0).Sub(mintBalances, burnBalances) + kdaAmount = big.NewInt(0).Sub(mintBalances, burnBalances) } - if mvxAmount.Cmp(big.NewInt(0)) < 0 { - return big.NewInt(0), fmt.Errorf("%w, mvxAmount: %s", ErrNegativeAmount, mvxAmount.String()) + if kdaAmount.Cmp(big.NewInt(0)) < 0 { + return big.NewInt(0), fmt.Errorf("%w, kdaAmount: %s", ErrNegativeAmount, kdaAmount.String()) } - return mvxAmount, nil + return kdaAmount, nil } func getTotalAmountFromBatch(batch *bridgeCore.TransferBatch, token []byte) *big.Int { @@ -268,8 +268,8 @@ func getTotalAmountFromBatch(batch *bridgeCore.TransferBatch, token []byte) *big return amount } -func (validator *balanceValidator) getTotalTransferAmountInPendingMvxBatches(ctx context.Context, mvxToken []byte) (*big.Int, error) { - batchID, err := validator.multiversXClient.GetLastMvxBatchID(ctx) +func (validator *balanceValidator) getTotalTransferAmountInPendingKlvBatches(ctx context.Context, kdaToken []byte) (*big.Int, error) { + batchID, err := validator.kcClient.GetLastKCBatchID(ctx) if err != nil { return nil, err } @@ -277,7 +277,7 @@ func (validator *balanceValidator) getTotalTransferAmountInPendingMvxBatches(ctx var batch *bridgeCore.TransferBatch amount := big.NewInt(0) for { - batch, err = validator.multiversXClient.GetBatch(ctx, batchID) + batch, err = validator.kcClient.GetBatch(ctx, batchID) if errors.Is(err, clients.ErrNoBatchAvailable) { return amount, nil } @@ -293,14 +293,14 @@ func (validator *balanceValidator) getTotalTransferAmountInPendingMvxBatches(ctx return amount, nil } - amountFromBatch := getTotalAmountFromBatch(batch, mvxToken) + amountFromBatch := getTotalAmountFromBatch(batch, kdaToken) amount.Add(amount, amountFromBatch) batchID-- // go to the previous batch } } func (validator *balanceValidator) getTotalTransferAmountInPendingEthBatches(ctx context.Context, ethToken common.Address) (*big.Int, error) { - batchID, err := validator.multiversXClient.GetLastExecutedEthBatchID(ctx) + batchID, err := validator.kcClient.GetLastExecutedEthBatchID(ctx) if err != nil { return nil, err } diff --git a/clients/balanceValidator/balanceValidator_test.go b/clients/balanceValidator/balanceValidator_test.go index 3bce2be0..dae4d5ef 100644 --- a/clients/balanceValidator/balanceValidator_test.go +++ b/clients/balanceValidator/balanceValidator_test.go @@ -17,16 +17,16 @@ import ( var ( ethToken = common.BytesToAddress([]byte("eth token")) - mvxToken = []byte("mvx token") + kdaToken = []byte("kda token") amount = big.NewInt(100) amount2 = big.NewInt(200) ) func createMockArgsBalanceValidator() ArgsBalanceValidator { return ArgsBalanceValidator{ - Log: &testscommon.LoggerStub{}, - MultiversXClient: &bridge.MultiversXClientStub{}, - EthereumClient: &bridge.EthereumClientStub{}, + Log: &testscommon.LoggerStub{}, + KCClient: &bridge.KCClientStub{}, + EthereumClient: &bridge.EthereumClientStub{}, } } @@ -37,22 +37,22 @@ type testConfiguration struct { burnBalancesOnEth *big.Int mintBalancesOnEth *big.Int - isNativeOnMvx bool - isMintBurnOnMvx bool - totalBalancesOnMvx *big.Int - burnBalancesOnMvx *big.Int - mintBalancesOnMvx *big.Int + isNativeOnKlv bool + isMintBurnOnKlv bool + totalBalancesOnKlv *big.Int + burnBalancesOnKlv *big.Int + mintBalancesOnKlv *big.Int errorsOnCalls map[string]error ethToken common.Address - mvxToken []byte + kdaToken []byte amount *big.Int direction batchProcessor.Direction lastExecutedEthBatch uint64 - pendingMvxBatchId uint64 - amountsOnMvxPendingBatches map[uint64][]*big.Int + pendingKlvBatchId uint64 + amountsOnKlvPendingBatches map[uint64][]*big.Int amountsOnEthPendingBatches map[uint64][]*big.Int } @@ -60,15 +60,15 @@ func (cfg *testConfiguration) deepClone() testConfiguration { result := testConfiguration{ isNativeOnEth: cfg.isNativeOnEth, isMintBurnOnEth: cfg.isMintBurnOnEth, - isNativeOnMvx: cfg.isNativeOnMvx, - isMintBurnOnMvx: cfg.isMintBurnOnMvx, + isNativeOnKlv: cfg.isNativeOnKlv, + isMintBurnOnKlv: cfg.isMintBurnOnKlv, errorsOnCalls: make(map[string]error), ethToken: common.HexToAddress(cfg.ethToken.Hex()), - mvxToken: make([]byte, len(cfg.mvxToken)), + kdaToken: make([]byte, len(cfg.kdaToken)), direction: cfg.direction, lastExecutedEthBatch: cfg.lastExecutedEthBatch, - pendingMvxBatchId: cfg.pendingMvxBatchId, - amountsOnMvxPendingBatches: make(map[uint64][]*big.Int), + pendingKlvBatchId: cfg.pendingKlvBatchId, + amountsOnKlvPendingBatches: make(map[uint64][]*big.Int), amountsOnEthPendingBatches: make(map[uint64][]*big.Int), } if cfg.totalBalancesOnEth != nil { @@ -80,14 +80,14 @@ func (cfg *testConfiguration) deepClone() testConfiguration { if cfg.mintBalancesOnEth != nil { result.mintBalancesOnEth = big.NewInt(0).Set(cfg.mintBalancesOnEth) } - if cfg.totalBalancesOnMvx != nil { - result.totalBalancesOnMvx = big.NewInt(0).Set(cfg.totalBalancesOnMvx) + if cfg.totalBalancesOnKlv != nil { + result.totalBalancesOnKlv = big.NewInt(0).Set(cfg.totalBalancesOnKlv) } - if cfg.burnBalancesOnMvx != nil { - result.burnBalancesOnMvx = big.NewInt(0).Set(cfg.burnBalancesOnMvx) + if cfg.burnBalancesOnKlv != nil { + result.burnBalancesOnKlv = big.NewInt(0).Set(cfg.burnBalancesOnKlv) } - if cfg.mintBalancesOnMvx != nil { - result.mintBalancesOnMvx = big.NewInt(0).Set(cfg.mintBalancesOnMvx) + if cfg.mintBalancesOnKlv != nil { + result.mintBalancesOnKlv = big.NewInt(0).Set(cfg.mintBalancesOnKlv) } if cfg.amount != nil { result.amount = big.NewInt(0).Set(cfg.amount) @@ -96,11 +96,11 @@ func (cfg *testConfiguration) deepClone() testConfiguration { for key, err := range cfg.errorsOnCalls { result.errorsOnCalls[key] = err } - copy(result.mvxToken, cfg.mvxToken) - for nonce, values := range cfg.amountsOnMvxPendingBatches { - result.amountsOnMvxPendingBatches[nonce] = make([]*big.Int, 0, len(values)) + copy(result.kdaToken, cfg.kdaToken) + for nonce, values := range cfg.amountsOnKlvPendingBatches { + result.amountsOnKlvPendingBatches[nonce] = make([]*big.Int, 0, len(values)) for _, value := range values { - result.amountsOnMvxPendingBatches[nonce] = append(result.amountsOnMvxPendingBatches[nonce], big.NewInt(0).Set(value)) + result.amountsOnKlvPendingBatches[nonce] = append(result.amountsOnKlvPendingBatches[nonce], big.NewInt(0).Set(value)) } } for nonce, values := range cfg.amountsOnEthPendingBatches { @@ -115,7 +115,7 @@ func (cfg *testConfiguration) deepClone() testConfiguration { type testResult struct { checkRequiredBalanceOnEthCalled bool - checkRequiredBalanceOnMvxCalled bool + checkRequiredBalanceOnKlvCalled bool error error } @@ -131,14 +131,14 @@ func TestNewBalanceValidator(t *testing.T) { assert.Nil(t, instance) assert.Equal(t, ErrNilLogger, err) }) - t.Run("nil MultiversX client should error", func(t *testing.T) { + t.Run("nil Klever Blockchain client should error", func(t *testing.T) { t.Parallel() args := createMockArgsBalanceValidator() - args.MultiversXClient = nil + args.KCClient = nil instance, err := NewBalanceValidator(args) assert.Nil(t, instance) - assert.Equal(t, ErrNilMultiversXClient, err) + assert.Equal(t, ErrNilKCClient, err) }) t.Run("nil Ethereum client should error", func(t *testing.T) { t.Parallel() @@ -187,7 +187,7 @@ func TestBridgeExecutor_CheckToken(t *testing.T) { t.Run("on isMintBurnOnEthereum", func(t *testing.T) { cfg := testConfiguration{ - direction: batchProcessor.FromMultiversX, + direction: batchProcessor.FromKC, errorsOnCalls: map[string]error{ "MintBurnTokensEth": expectedError, }, @@ -195,23 +195,23 @@ func TestBridgeExecutor_CheckToken(t *testing.T) { result := validatorTester(cfg) assert.Equal(t, expectedError, result.error) assert.True(t, result.checkRequiredBalanceOnEthCalled) - assert.False(t, result.checkRequiredBalanceOnMvxCalled) + assert.False(t, result.checkRequiredBalanceOnKlvCalled) }) - t.Run("on isMintBurnOnMultiversX", func(t *testing.T) { + t.Run("on isMintBurnOnKC", func(t *testing.T) { cfg := testConfiguration{ - direction: batchProcessor.ToMultiversX, + direction: batchProcessor.ToKC, errorsOnCalls: map[string]error{ - "IsMintBurnTokenMvx": expectedError, + "IsMintBurnTokenKlv": expectedError, }, } result := validatorTester(cfg) assert.Equal(t, expectedError, result.error) assert.False(t, result.checkRequiredBalanceOnEthCalled) - assert.True(t, result.checkRequiredBalanceOnMvxCalled) + assert.True(t, result.checkRequiredBalanceOnKlvCalled) }) t.Run("on isNativeOnEthereum", func(t *testing.T) { cfg := testConfiguration{ - direction: batchProcessor.ToMultiversX, + direction: batchProcessor.ToKC, errorsOnCalls: map[string]error{ "NativeTokensEth": expectedError, }, @@ -219,24 +219,24 @@ func TestBridgeExecutor_CheckToken(t *testing.T) { result := validatorTester(cfg) assert.Equal(t, expectedError, result.error) assert.False(t, result.checkRequiredBalanceOnEthCalled) - assert.True(t, result.checkRequiredBalanceOnMvxCalled) + assert.True(t, result.checkRequiredBalanceOnKlvCalled) }) - t.Run("on isNativeOnMultiversX", func(t *testing.T) { + t.Run("on isNativeOnKC", func(t *testing.T) { cfg := testConfiguration{ - direction: batchProcessor.FromMultiversX, + direction: batchProcessor.FromKC, errorsOnCalls: map[string]error{ - "IsNativeTokenMvx": expectedError, + "IsNativeTokenKlv": expectedError, }, } result := validatorTester(cfg) assert.Equal(t, expectedError, result.error) assert.True(t, result.checkRequiredBalanceOnEthCalled) - assert.False(t, result.checkRequiredBalanceOnMvxCalled) + assert.False(t, result.checkRequiredBalanceOnKlvCalled) }) t.Run("on computeEthAmount, TotalBalances", func(t *testing.T) { cfg := testConfiguration{ - direction: batchProcessor.FromMultiversX, - isMintBurnOnMvx: true, + direction: batchProcessor.FromKC, + isMintBurnOnKlv: true, isNativeOnEth: true, errorsOnCalls: map[string]error{ "TotalBalancesEth": expectedError, @@ -245,12 +245,12 @@ func TestBridgeExecutor_CheckToken(t *testing.T) { result := validatorTester(cfg) assert.Equal(t, expectedError, result.error) assert.True(t, result.checkRequiredBalanceOnEthCalled) - assert.False(t, result.checkRequiredBalanceOnMvxCalled) + assert.False(t, result.checkRequiredBalanceOnKlvCalled) }) t.Run("on computeEthAmount, BurnBalances", func(t *testing.T) { cfg := testConfiguration{ - direction: batchProcessor.FromMultiversX, - isNativeOnMvx: true, + direction: batchProcessor.FromKC, + isNativeOnKlv: true, isMintBurnOnEth: true, errorsOnCalls: map[string]error{ "BurnBalancesEth": expectedError, @@ -259,12 +259,12 @@ func TestBridgeExecutor_CheckToken(t *testing.T) { result := validatorTester(cfg) assert.Equal(t, expectedError, result.error) assert.True(t, result.checkRequiredBalanceOnEthCalled) - assert.False(t, result.checkRequiredBalanceOnMvxCalled) + assert.False(t, result.checkRequiredBalanceOnKlvCalled) }) t.Run("on computeEthAmount, MintBalances", func(t *testing.T) { cfg := testConfiguration{ - direction: batchProcessor.FromMultiversX, - isNativeOnMvx: true, + direction: batchProcessor.FromKC, + isNativeOnKlv: true, isMintBurnOnEth: true, errorsOnCalls: map[string]error{ "MintBalancesEth": expectedError, @@ -273,26 +273,26 @@ func TestBridgeExecutor_CheckToken(t *testing.T) { result := validatorTester(cfg) assert.Equal(t, expectedError, result.error) assert.True(t, result.checkRequiredBalanceOnEthCalled) - assert.False(t, result.checkRequiredBalanceOnMvxCalled) + assert.False(t, result.checkRequiredBalanceOnKlvCalled) }) t.Run("on computeEthAmount, GetLastExecutedEthBatchID", func(t *testing.T) { cfg := testConfiguration{ - direction: batchProcessor.FromMultiversX, - isNativeOnMvx: true, + direction: batchProcessor.FromKC, + isNativeOnKlv: true, isMintBurnOnEth: true, errorsOnCalls: map[string]error{ - "GetLastExecutedEthBatchIDMvx": expectedError, + "GetLastExecutedEthBatchIDKlv": expectedError, }, } result := validatorTester(cfg) assert.Equal(t, expectedError, result.error) assert.True(t, result.checkRequiredBalanceOnEthCalled) - assert.False(t, result.checkRequiredBalanceOnMvxCalled) + assert.False(t, result.checkRequiredBalanceOnKlvCalled) }) t.Run("on computeEthAmount, GetBatch", func(t *testing.T) { cfg := testConfiguration{ - direction: batchProcessor.FromMultiversX, - isNativeOnMvx: true, + direction: batchProcessor.FromKC, + isNativeOnKlv: true, isMintBurnOnEth: true, errorsOnCalls: map[string]error{ "GetBatchEth": expectedError, @@ -301,82 +301,82 @@ func TestBridgeExecutor_CheckToken(t *testing.T) { result := validatorTester(cfg) assert.Equal(t, expectedError, result.error) assert.True(t, result.checkRequiredBalanceOnEthCalled) - assert.False(t, result.checkRequiredBalanceOnMvxCalled) + assert.False(t, result.checkRequiredBalanceOnKlvCalled) }) - t.Run("on computeMvxAmount, TotalBalances", func(t *testing.T) { + t.Run("on computeKlvAmount, TotalBalances", func(t *testing.T) { cfg := testConfiguration{ - direction: batchProcessor.ToMultiversX, - isNativeOnMvx: true, + direction: batchProcessor.ToKC, + isNativeOnKlv: true, isMintBurnOnEth: true, errorsOnCalls: map[string]error{ - "TotalBalancesMvx": expectedError, + "TotalBalancesKlv": expectedError, }, } result := validatorTester(cfg) assert.Equal(t, expectedError, result.error) assert.False(t, result.checkRequiredBalanceOnEthCalled) - assert.True(t, result.checkRequiredBalanceOnMvxCalled) + assert.True(t, result.checkRequiredBalanceOnKlvCalled) }) - t.Run("on computeMvxAmount, BurnBalances", func(t *testing.T) { + t.Run("on computeKlvAmount, BurnBalances", func(t *testing.T) { cfg := testConfiguration{ - direction: batchProcessor.ToMultiversX, - isMintBurnOnMvx: true, + direction: batchProcessor.ToKC, + isMintBurnOnKlv: true, isNativeOnEth: true, errorsOnCalls: map[string]error{ - "BurnBalancesMvx": expectedError, + "BurnBalancesKlv": expectedError, }, } result := validatorTester(cfg) assert.Equal(t, expectedError, result.error) assert.False(t, result.checkRequiredBalanceOnEthCalled) - assert.True(t, result.checkRequiredBalanceOnMvxCalled) + assert.True(t, result.checkRequiredBalanceOnKlvCalled) }) - t.Run("on computeMvxAmount, MintBalances", func(t *testing.T) { + t.Run("on computeKlvAmount, MintBalances", func(t *testing.T) { cfg := testConfiguration{ - direction: batchProcessor.ToMultiversX, - isMintBurnOnMvx: true, + direction: batchProcessor.ToKC, + isMintBurnOnKlv: true, isNativeOnEth: true, errorsOnCalls: map[string]error{ - "MintBalancesMvx": expectedError, + "MintBalancesKlv": expectedError, }, } result := validatorTester(cfg) assert.Equal(t, expectedError, result.error) assert.False(t, result.checkRequiredBalanceOnEthCalled) - assert.True(t, result.checkRequiredBalanceOnMvxCalled) + assert.True(t, result.checkRequiredBalanceOnKlvCalled) }) - t.Run("on computeMvxAmount, GetLastMvxBatchID", func(t *testing.T) { + t.Run("on computeKlvAmount, GetLastKCBatchID", func(t *testing.T) { cfg := testConfiguration{ - direction: batchProcessor.ToMultiversX, - isMintBurnOnMvx: true, + direction: batchProcessor.ToKC, + isMintBurnOnKlv: true, isNativeOnEth: true, errorsOnCalls: map[string]error{ - "GetLastMvxBatchID": expectedError, + "GetLastKCBatchID": expectedError, }, } result := validatorTester(cfg) assert.Equal(t, expectedError, result.error) assert.False(t, result.checkRequiredBalanceOnEthCalled) - assert.True(t, result.checkRequiredBalanceOnMvxCalled) + assert.True(t, result.checkRequiredBalanceOnKlvCalled) }) - t.Run("on computeMvxAmount, GetBatch", func(t *testing.T) { + t.Run("on computeKlvAmount, GetBatch", func(t *testing.T) { cfg := testConfiguration{ - direction: batchProcessor.ToMultiversX, - isMintBurnOnMvx: true, + direction: batchProcessor.ToKC, + isMintBurnOnKlv: true, isNativeOnEth: true, errorsOnCalls: map[string]error{ - "GetBatchMvx": expectedError, + "GetBatchKlv": expectedError, }, } result := validatorTester(cfg) assert.Equal(t, expectedError, result.error) assert.False(t, result.checkRequiredBalanceOnEthCalled) - assert.True(t, result.checkRequiredBalanceOnMvxCalled) + assert.True(t, result.checkRequiredBalanceOnKlvCalled) }) - t.Run("on computeMvxAmount, WasExecuted", func(t *testing.T) { + t.Run("on computeKlvAmount, WasExecuted", func(t *testing.T) { cfg := testConfiguration{ - direction: batchProcessor.ToMultiversX, - isMintBurnOnMvx: true, + direction: batchProcessor.ToKC, + isMintBurnOnKlv: true, isNativeOnEth: true, errorsOnCalls: map[string]error{ "WasExecutedEth": expectedError, @@ -385,7 +385,7 @@ func TestBridgeExecutor_CheckToken(t *testing.T) { result := validatorTester(cfg) assert.Equal(t, expectedError, result.error) assert.False(t, result.checkRequiredBalanceOnEthCalled) - assert.True(t, result.checkRequiredBalanceOnMvxCalled) + assert.True(t, result.checkRequiredBalanceOnKlvCalled) }) }) t.Run("invalid setup", func(t *testing.T) { @@ -393,37 +393,37 @@ func TestBridgeExecutor_CheckToken(t *testing.T) { t.Run("on Ethereum is not native nor is mint/burn, should error", func(t *testing.T) { cfg := testConfiguration{ - direction: batchProcessor.ToMultiversX, - isMintBurnOnMvx: true, + direction: batchProcessor.ToKC, + isMintBurnOnKlv: true, } result := validatorTester(cfg) assert.ErrorIs(t, result.error, ErrInvalidSetup) assert.Contains(t, result.error.Error(), "isNativeOnEthereum = false, isMintBurnOnEthereum = false") assert.False(t, result.checkRequiredBalanceOnEthCalled) - assert.True(t, result.checkRequiredBalanceOnMvxCalled) + assert.True(t, result.checkRequiredBalanceOnKlvCalled) }) - t.Run("on MultiversX is not native nor is mint/burn, should error", func(t *testing.T) { + t.Run("on Klever Blockchain is not native nor is mint/burn, should error", func(t *testing.T) { cfg := testConfiguration{ - direction: batchProcessor.ToMultiversX, + direction: batchProcessor.ToKC, isNativeOnEth: true, } result := validatorTester(cfg) assert.ErrorIs(t, result.error, ErrInvalidSetup) - assert.Contains(t, result.error.Error(), "isNativeOnMultiversX = false, isMintBurnOnMultiversX = false") + assert.Contains(t, result.error.Error(), "isNativeOnKC = false, isMintBurnOnKC = false") assert.False(t, result.checkRequiredBalanceOnEthCalled) - assert.True(t, result.checkRequiredBalanceOnMvxCalled) + assert.True(t, result.checkRequiredBalanceOnKlvCalled) }) t.Run("native on both chains, should error", func(t *testing.T) { cfg := testConfiguration{ - direction: batchProcessor.ToMultiversX, + direction: batchProcessor.ToKC, isNativeOnEth: true, - isNativeOnMvx: true, + isNativeOnKlv: true, } result := validatorTester(cfg) assert.ErrorIs(t, result.error, ErrInvalidSetup) - assert.Contains(t, result.error.Error(), "isNativeOnEthereum = true, isNativeOnMultiversX = true") + assert.Contains(t, result.error.Error(), "isNativeOnEthereum = true, isNativeOnKC = true") assert.False(t, result.checkRequiredBalanceOnEthCalled) - assert.True(t, result.checkRequiredBalanceOnMvxCalled) + assert.True(t, result.checkRequiredBalanceOnKlvCalled) }) }) t.Run("bad values on mint & burn", func(t *testing.T) { @@ -433,10 +433,10 @@ func TestBridgeExecutor_CheckToken(t *testing.T) { t.Parallel() cfg := testConfiguration{ - direction: batchProcessor.ToMultiversX, + direction: batchProcessor.ToKC, isMintBurnOnEth: true, isNativeOnEth: true, - isMintBurnOnMvx: true, + isMintBurnOnKlv: true, burnBalancesOnEth: big.NewInt(37), mintBalancesOnEth: big.NewInt(38), } @@ -444,15 +444,15 @@ func TestBridgeExecutor_CheckToken(t *testing.T) { assert.ErrorIs(t, result.error, ErrNegativeAmount) assert.Contains(t, result.error.Error(), "ethAmount: -1") assert.False(t, result.checkRequiredBalanceOnEthCalled) - assert.True(t, result.checkRequiredBalanceOnMvxCalled) + assert.True(t, result.checkRequiredBalanceOnKlvCalled) }) t.Run("on Ethereum, non-native", func(t *testing.T) { t.Parallel() cfg := testConfiguration{ - direction: batchProcessor.ToMultiversX, + direction: batchProcessor.ToKC, isMintBurnOnEth: true, - isNativeOnMvx: true, + isNativeOnKlv: true, burnBalancesOnEth: big.NewInt(38), mintBalancesOnEth: big.NewInt(37), } @@ -460,70 +460,70 @@ func TestBridgeExecutor_CheckToken(t *testing.T) { assert.ErrorIs(t, result.error, ErrNegativeAmount) assert.Contains(t, result.error.Error(), "ethAmount: -1") assert.False(t, result.checkRequiredBalanceOnEthCalled) - assert.True(t, result.checkRequiredBalanceOnMvxCalled) + assert.True(t, result.checkRequiredBalanceOnKlvCalled) }) - t.Run("on MultiversX, native", func(t *testing.T) { + t.Run("on KC, native", func(t *testing.T) { t.Parallel() cfg := testConfiguration{ - direction: batchProcessor.ToMultiversX, + direction: batchProcessor.ToKC, isMintBurnOnEth: true, - isMintBurnOnMvx: true, - isNativeOnMvx: true, - burnBalancesOnMvx: big.NewInt(37), - mintBalancesOnMvx: big.NewInt(38), + isMintBurnOnKlv: true, + isNativeOnKlv: true, + burnBalancesOnKlv: big.NewInt(37), + mintBalancesOnKlv: big.NewInt(38), } result := validatorTester(cfg) assert.ErrorIs(t, result.error, ErrNegativeAmount) - assert.Contains(t, result.error.Error(), "mvxAmount: -1") + assert.Contains(t, result.error.Error(), "kdaAmount: -1") assert.False(t, result.checkRequiredBalanceOnEthCalled) - assert.True(t, result.checkRequiredBalanceOnMvxCalled) + assert.True(t, result.checkRequiredBalanceOnKlvCalled) }) - t.Run("on MultiversX, non-native", func(t *testing.T) { + t.Run("on KC, non-native", func(t *testing.T) { t.Parallel() cfg := testConfiguration{ - direction: batchProcessor.ToMultiversX, + direction: batchProcessor.ToKC, isNativeOnEth: true, - isMintBurnOnMvx: true, - burnBalancesOnMvx: big.NewInt(38), - mintBalancesOnMvx: big.NewInt(37), + isMintBurnOnKlv: true, + burnBalancesOnKlv: big.NewInt(38), + mintBalancesOnKlv: big.NewInt(37), } result := validatorTester(cfg) assert.ErrorIs(t, result.error, ErrNegativeAmount) - assert.Contains(t, result.error.Error(), "mvxAmount: -1") + assert.Contains(t, result.error.Error(), "kdaAmount: -1") assert.False(t, result.checkRequiredBalanceOnEthCalled) - assert.True(t, result.checkRequiredBalanceOnMvxCalled) + assert.True(t, result.checkRequiredBalanceOnKlvCalled) }) }) t.Run("scenarios", func(t *testing.T) { t.Parallel() - t.Run("Eth -> MvX", func(t *testing.T) { + t.Run("Eth -> Klv", func(t *testing.T) { t.Parallel() - t.Run("native on MvX, mint-burn on Eth, ok values, no next pending batches", func(t *testing.T) { + t.Run("native on Klv, mint-burn on Eth, ok values, no next pending batches", func(t *testing.T) { t.Parallel() cfg := testConfiguration{ - direction: batchProcessor.ToMultiversX, + direction: batchProcessor.ToKC, isMintBurnOnEth: true, - isNativeOnMvx: true, + isNativeOnKlv: true, burnBalancesOnEth: big.NewInt(1100), // initial burn (1000) + burn from this transfer (100) mintBalancesOnEth: big.NewInt(11000), // minted (10000) + initial burn (1000) - totalBalancesOnMvx: big.NewInt(10000), + totalBalancesOnKlv: big.NewInt(10000), amount: amount, amountsOnEthPendingBatches: map[uint64][]*big.Int{ 1: {amount}, }, - mvxToken: mvxToken, + kdaToken: kdaToken, ethToken: ethToken, } result := validatorTester(cfg) assert.Nil(t, result.error) assert.False(t, result.checkRequiredBalanceOnEthCalled) - assert.True(t, result.checkRequiredBalanceOnMvxCalled) + assert.True(t, result.checkRequiredBalanceOnKlvCalled) t.Run("mismatch should error", func(t *testing.T) { cfg.burnBalancesOnEth.Add(cfg.burnBalancesOnEth, big.NewInt(1)) @@ -531,30 +531,30 @@ func TestBridgeExecutor_CheckToken(t *testing.T) { assert.ErrorIs(t, result.error, ErrBalanceMismatch) }) }) - t.Run("native on MvX, mint-burn on Eth, ok values, with next pending batches", func(t *testing.T) { + t.Run("native on Klv, mint-burn on Eth, ok values, with next pending batches", func(t *testing.T) { t.Parallel() cfg := testConfiguration{ - direction: batchProcessor.ToMultiversX, + direction: batchProcessor.ToKC, isMintBurnOnEth: true, - isNativeOnMvx: true, + isNativeOnKlv: true, burnBalancesOnEth: big.NewInt(1220), // initial burn (1000) + burn from this transfer (100) + burn from next batches (120) mintBalancesOnEth: big.NewInt(11000), // minted (10000) + initial burn (1000) - totalBalancesOnMvx: big.NewInt(10000), + totalBalancesOnKlv: big.NewInt(10000), amount: amount, amountsOnEthPendingBatches: map[uint64][]*big.Int{ 1: {amount}, 2: {big.NewInt(30), big.NewInt(40)}, 3: {big.NewInt(50)}, }, - mvxToken: mvxToken, + kdaToken: kdaToken, ethToken: ethToken, } result := validatorTester(cfg) assert.Nil(t, result.error) assert.False(t, result.checkRequiredBalanceOnEthCalled) - assert.True(t, result.checkRequiredBalanceOnMvxCalled) + assert.True(t, result.checkRequiredBalanceOnKlvCalled) t.Run("mismatch should error", func(t *testing.T) { cfg.burnBalancesOnEth.Add(cfg.burnBalancesOnEth, big.NewInt(1)) @@ -562,30 +562,30 @@ func TestBridgeExecutor_CheckToken(t *testing.T) { assert.ErrorIs(t, result.error, ErrBalanceMismatch) }) }) - t.Run("native on MvX but with mint-burn, mint-burn on Eth, ok values, no next pending batches", func(t *testing.T) { + t.Run("native on Klv but with mint-burn, mint-burn on Eth, ok values, no next pending batches", func(t *testing.T) { t.Parallel() cfg := testConfiguration{ - direction: batchProcessor.ToMultiversX, + direction: batchProcessor.ToKC, isMintBurnOnEth: true, - isNativeOnMvx: true, - isMintBurnOnMvx: true, + isNativeOnKlv: true, + isMintBurnOnKlv: true, burnBalancesOnEth: big.NewInt(1100), // initial burn (1000) + burn from this transfer (100) mintBalancesOnEth: big.NewInt(11000), // minted (10000) + initial burn (1000) - burnBalancesOnMvx: big.NewInt(12000), - mintBalancesOnMvx: big.NewInt(2000), // burn - mint on Mvx === mint - burn on Eth + burnBalancesOnKlv: big.NewInt(12000), + mintBalancesOnKlv: big.NewInt(2000), // burn - mint on Klv === mint - burn on Eth amount: amount, amountsOnEthPendingBatches: map[uint64][]*big.Int{ 1: {amount}, }, - mvxToken: mvxToken, + kdaToken: kdaToken, ethToken: ethToken, } result := validatorTester(cfg) assert.Nil(t, result.error) assert.False(t, result.checkRequiredBalanceOnEthCalled) - assert.True(t, result.checkRequiredBalanceOnMvxCalled) + assert.True(t, result.checkRequiredBalanceOnKlvCalled) t.Run("mismatch should error", func(t *testing.T) { cfg.burnBalancesOnEth.Add(cfg.burnBalancesOnEth, big.NewInt(1)) @@ -593,32 +593,32 @@ func TestBridgeExecutor_CheckToken(t *testing.T) { assert.ErrorIs(t, result.error, ErrBalanceMismatch) }) }) - t.Run("native on MvX but with mint-burn, mint-burn on Eth, ok values, with next pending batches", func(t *testing.T) { + t.Run("native on Klv but with mint-burn, mint-burn on Eth, ok values, with next pending batches", func(t *testing.T) { t.Parallel() cfg := testConfiguration{ - direction: batchProcessor.ToMultiversX, + direction: batchProcessor.ToKC, isMintBurnOnEth: true, - isNativeOnMvx: true, - isMintBurnOnMvx: true, + isNativeOnKlv: true, + isMintBurnOnKlv: true, burnBalancesOnEth: big.NewInt(1220), // initial burn (1000) + burn from this transfer (100) + next batches (120) mintBalancesOnEth: big.NewInt(11000), // minted (10000) + initial burn (1000) - burnBalancesOnMvx: big.NewInt(12000), - mintBalancesOnMvx: big.NewInt(2000), // burn - mint on Mvx === mint - burn on Eth + burnBalancesOnKlv: big.NewInt(12000), + mintBalancesOnKlv: big.NewInt(2000), // burn - mint on Klv === mint - burn on Eth amount: amount, amountsOnEthPendingBatches: map[uint64][]*big.Int{ 1: {amount}, 2: {big.NewInt(30), big.NewInt(40)}, 3: {big.NewInt(50)}, }, - mvxToken: mvxToken, + kdaToken: kdaToken, ethToken: ethToken, } result := validatorTester(cfg) assert.Nil(t, result.error) assert.False(t, result.checkRequiredBalanceOnEthCalled) - assert.True(t, result.checkRequiredBalanceOnMvxCalled) + assert.True(t, result.checkRequiredBalanceOnKlvCalled) t.Run("mismatch should error", func(t *testing.T) { cfg.burnBalancesOnEth.Add(cfg.burnBalancesOnEth, big.NewInt(1)) @@ -626,44 +626,44 @@ func TestBridgeExecutor_CheckToken(t *testing.T) { assert.ErrorIs(t, result.error, ErrBalanceMismatch) }) }) - t.Run("native on Eth, mint-burn on MvX, ok values, no next pending batches", func(t *testing.T) { + t.Run("native on Eth, mint-burn on Klv, ok values, no next pending batches", func(t *testing.T) { t.Parallel() cfg := testConfiguration{ - direction: batchProcessor.ToMultiversX, - isMintBurnOnMvx: true, + direction: batchProcessor.ToKC, + isMintBurnOnKlv: true, isNativeOnEth: true, - burnBalancesOnMvx: big.NewInt(1000), // initial burn (1000) - mintBalancesOnMvx: big.NewInt(11000), // minted (10000) + initial burn (1000) + burnBalancesOnKlv: big.NewInt(1000), // initial burn (1000) + mintBalancesOnKlv: big.NewInt(11000), // minted (10000) + initial burn (1000) totalBalancesOnEth: big.NewInt(10100), // initial (10000) + locked from this transfer (100) amount: amount, amountsOnEthPendingBatches: map[uint64][]*big.Int{ 1: {amount}, }, - mvxToken: mvxToken, + kdaToken: kdaToken, ethToken: ethToken, } result := validatorTester(cfg) assert.Nil(t, result.error) assert.False(t, result.checkRequiredBalanceOnEthCalled) - assert.True(t, result.checkRequiredBalanceOnMvxCalled) + assert.True(t, result.checkRequiredBalanceOnKlvCalled) t.Run("mismatch should error", func(t *testing.T) { - cfg.burnBalancesOnMvx.Add(cfg.burnBalancesOnMvx, big.NewInt(1)) + cfg.burnBalancesOnKlv.Add(cfg.burnBalancesOnKlv, big.NewInt(1)) result = validatorTester(cfg) assert.ErrorIs(t, result.error, ErrBalanceMismatch) }) }) - t.Run("native on Eth, mint-burn on MvX, ok values, with next pending batches", func(t *testing.T) { + t.Run("native on Eth, mint-burn on Klv, ok values, with next pending batches", func(t *testing.T) { t.Parallel() cfg := testConfiguration{ - direction: batchProcessor.ToMultiversX, - isMintBurnOnMvx: true, + direction: batchProcessor.ToKC, + isMintBurnOnKlv: true, isNativeOnEth: true, - burnBalancesOnMvx: big.NewInt(1000), // initial burn (1000) - mintBalancesOnMvx: big.NewInt(11000), // minted (10000) + initial burn (1000) + burnBalancesOnKlv: big.NewInt(1000), // initial burn (1000) + mintBalancesOnKlv: big.NewInt(11000), // minted (10000) + initial burn (1000) totalBalancesOnEth: big.NewInt(10220), // initial (10000) + locked from this transfer (100) + next batches (120) amount: amount, amountsOnEthPendingBatches: map[uint64][]*big.Int{ @@ -671,112 +671,112 @@ func TestBridgeExecutor_CheckToken(t *testing.T) { 2: {big.NewInt(30), big.NewInt(40)}, 3: {big.NewInt(50)}, }, - mvxToken: mvxToken, + kdaToken: kdaToken, ethToken: ethToken, } result := validatorTester(cfg) assert.Nil(t, result.error) assert.False(t, result.checkRequiredBalanceOnEthCalled) - assert.True(t, result.checkRequiredBalanceOnMvxCalled) + assert.True(t, result.checkRequiredBalanceOnKlvCalled) t.Run("mismatch should error", func(t *testing.T) { - cfg.burnBalancesOnMvx.Add(cfg.burnBalancesOnMvx, big.NewInt(1)) + cfg.burnBalancesOnKlv.Add(cfg.burnBalancesOnKlv, big.NewInt(1)) result = validatorTester(cfg) assert.ErrorIs(t, result.error, ErrBalanceMismatch) }) }) - t.Run("native on Eth but with mint-burn, mint-burn on MvX, ok values, no next pending batches", func(t *testing.T) { + t.Run("native on Eth but with mint-burn, mint-burn on Klv, ok values, no next pending batches", func(t *testing.T) { t.Parallel() cfg := testConfiguration{ - direction: batchProcessor.ToMultiversX, - isMintBurnOnMvx: true, + direction: batchProcessor.ToKC, + isMintBurnOnKlv: true, isNativeOnEth: true, isMintBurnOnEth: true, - burnBalancesOnMvx: big.NewInt(1000), // initial burn (1000) - mintBalancesOnMvx: big.NewInt(11000), // minted (10000) + initial burn (1000) + burnBalancesOnKlv: big.NewInt(1000), // initial burn (1000) + mintBalancesOnKlv: big.NewInt(11000), // minted (10000) + initial burn (1000) burnBalancesOnEth: big.NewInt(12100), - mintBalancesOnEth: big.NewInt(2000), // burn - mint - transfer on Eth === mint - burn on Mvx + mintBalancesOnEth: big.NewInt(2000), // burn - mint - transfer on Eth === mint - burn on Klv amount: amount, amountsOnEthPendingBatches: map[uint64][]*big.Int{ 1: {amount}, }, - mvxToken: mvxToken, + kdaToken: kdaToken, ethToken: ethToken, } result := validatorTester(cfg) assert.Nil(t, result.error) assert.False(t, result.checkRequiredBalanceOnEthCalled) - assert.True(t, result.checkRequiredBalanceOnMvxCalled) + assert.True(t, result.checkRequiredBalanceOnKlvCalled) t.Run("mismatch should error", func(t *testing.T) { - cfg.burnBalancesOnMvx.Add(cfg.burnBalancesOnMvx, big.NewInt(1)) + cfg.burnBalancesOnKlv.Add(cfg.burnBalancesOnKlv, big.NewInt(1)) result = validatorTester(cfg) assert.ErrorIs(t, result.error, ErrBalanceMismatch) }) }) - t.Run("native on Eth but with mint-burn, mint-burn on MvX, ok values, with next pending batches", func(t *testing.T) { + t.Run("native on Eth but with mint-burn, mint-burn on Klv, ok values, with next pending batches", func(t *testing.T) { t.Parallel() cfg := testConfiguration{ - direction: batchProcessor.ToMultiversX, - isMintBurnOnMvx: true, + direction: batchProcessor.ToKC, + isMintBurnOnKlv: true, isNativeOnEth: true, isMintBurnOnEth: true, - burnBalancesOnMvx: big.NewInt(1000), // initial burn (1000) - mintBalancesOnMvx: big.NewInt(11000), // minted (10000) + initial burn (1000) + burnBalancesOnKlv: big.NewInt(1000), // initial burn (1000) + mintBalancesOnKlv: big.NewInt(11000), // minted (10000) + initial burn (1000) burnBalancesOnEth: big.NewInt(12220), - mintBalancesOnEth: big.NewInt(2000), // burn - mint - transfer on Eth - next transfers === mint - burn on Mvx + mintBalancesOnEth: big.NewInt(2000), // burn - mint - transfer on Eth - next transfers === mint - burn on Klv amount: amount, amountsOnEthPendingBatches: map[uint64][]*big.Int{ 1: {amount}, 2: {big.NewInt(30), big.NewInt(40)}, 3: {big.NewInt(50)}, }, - mvxToken: mvxToken, + kdaToken: kdaToken, ethToken: ethToken, } result := validatorTester(cfg) assert.Nil(t, result.error) assert.False(t, result.checkRequiredBalanceOnEthCalled) - assert.True(t, result.checkRequiredBalanceOnMvxCalled) + assert.True(t, result.checkRequiredBalanceOnKlvCalled) t.Run("mismatch should error", func(t *testing.T) { - cfg.burnBalancesOnMvx.Add(cfg.burnBalancesOnMvx, big.NewInt(1)) + cfg.burnBalancesOnKlv.Add(cfg.burnBalancesOnKlv, big.NewInt(1)) result = validatorTester(cfg) assert.ErrorIs(t, result.error, ErrBalanceMismatch) }) }) }) - t.Run("MvX -> Eth", func(t *testing.T) { + t.Run("Klv -> Eth", func(t *testing.T) { t.Parallel() - t.Run("native on MvX, mint-burn on Eth, ok values, no next pending batches", func(t *testing.T) { + t.Run("native on Klv, mint-burn on Eth, ok values, no next pending batches", func(t *testing.T) { t.Parallel() cfg := testConfiguration{ - direction: batchProcessor.FromMultiversX, + direction: batchProcessor.FromKC, isMintBurnOnEth: true, - isNativeOnMvx: true, + isNativeOnKlv: true, burnBalancesOnEth: big.NewInt(1000), // initial burn (1000) mintBalancesOnEth: big.NewInt(11000), // minted (10000) + initial burn (1000) - totalBalancesOnMvx: big.NewInt(10100), // initial (10000) + transfer from this batch (100) + totalBalancesOnKlv: big.NewInt(10100), // initial (10000) + transfer from this batch (100) amount: amount, - amountsOnMvxPendingBatches: map[uint64][]*big.Int{ + amountsOnKlvPendingBatches: map[uint64][]*big.Int{ 1: {amount}, }, - mvxToken: mvxToken, + kdaToken: kdaToken, ethToken: ethToken, } result := validatorTester(cfg) assert.Nil(t, result.error) assert.True(t, result.checkRequiredBalanceOnEthCalled) - assert.False(t, result.checkRequiredBalanceOnMvxCalled) + assert.False(t, result.checkRequiredBalanceOnKlvCalled) t.Run("mismatch should error", func(t *testing.T) { cfg.burnBalancesOnEth.Add(cfg.burnBalancesOnEth, big.NewInt(1)) @@ -784,30 +784,30 @@ func TestBridgeExecutor_CheckToken(t *testing.T) { assert.ErrorIs(t, result.error, ErrBalanceMismatch) }) }) - t.Run("native on MvX, mint-burn on Eth, ok values, with next pending batches", func(t *testing.T) { + t.Run("native on Klv, mint-burn on Eth, ok values, with next pending batches", func(t *testing.T) { t.Parallel() cfg := testConfiguration{ - direction: batchProcessor.FromMultiversX, + direction: batchProcessor.FromKC, isMintBurnOnEth: true, - isNativeOnMvx: true, + isNativeOnKlv: true, burnBalancesOnEth: big.NewInt(1000), // initial burn (1000) mintBalancesOnEth: big.NewInt(11000), // minted (10000) + initial burn (1000) - totalBalancesOnMvx: big.NewInt(10220), // initial (10000) + transfer from this batch (100) + next batches (120) + totalBalancesOnKlv: big.NewInt(10220), // initial (10000) + transfer from this batch (100) + next batches (120) amount: amount, - amountsOnMvxPendingBatches: map[uint64][]*big.Int{ + amountsOnKlvPendingBatches: map[uint64][]*big.Int{ 1: {amount}, 2: {big.NewInt(30), big.NewInt(40)}, 3: {big.NewInt(50)}, }, - mvxToken: mvxToken, + kdaToken: kdaToken, ethToken: ethToken, } result := validatorTester(cfg) assert.Nil(t, result.error) assert.True(t, result.checkRequiredBalanceOnEthCalled) - assert.False(t, result.checkRequiredBalanceOnMvxCalled) + assert.False(t, result.checkRequiredBalanceOnKlvCalled) t.Run("mismatch should error", func(t *testing.T) { cfg.burnBalancesOnEth.Add(cfg.burnBalancesOnEth, big.NewInt(1)) @@ -815,30 +815,30 @@ func TestBridgeExecutor_CheckToken(t *testing.T) { assert.ErrorIs(t, result.error, ErrBalanceMismatch) }) }) - t.Run("native on MvX but with mint-burn, mint-burn on Eth, ok values, no next pending batches", func(t *testing.T) { + t.Run("native on Klv but with mint-burn, mint-burn on Eth, ok values, no next pending batches", func(t *testing.T) { t.Parallel() cfg := testConfiguration{ - direction: batchProcessor.FromMultiversX, + direction: batchProcessor.FromKC, isMintBurnOnEth: true, - isNativeOnMvx: true, - isMintBurnOnMvx: true, + isNativeOnKlv: true, + isMintBurnOnKlv: true, burnBalancesOnEth: big.NewInt(1000), // initial burn (1000) mintBalancesOnEth: big.NewInt(11000), // minted (10000) + initial burn (1000) - burnBalancesOnMvx: big.NewInt(12100), - mintBalancesOnMvx: big.NewInt(2000), // burn - mint - transfer on Mvx === mint - burn on Eth + burnBalancesOnKlv: big.NewInt(12100), + mintBalancesOnKlv: big.NewInt(2000), // burn - mint - transfer on Klv === mint - burn on Eth amount: amount, - amountsOnMvxPendingBatches: map[uint64][]*big.Int{ + amountsOnKlvPendingBatches: map[uint64][]*big.Int{ 1: {amount}, }, - mvxToken: mvxToken, + kdaToken: kdaToken, ethToken: ethToken, } result := validatorTester(cfg) assert.Nil(t, result.error) assert.True(t, result.checkRequiredBalanceOnEthCalled) - assert.False(t, result.checkRequiredBalanceOnMvxCalled) + assert.False(t, result.checkRequiredBalanceOnKlvCalled) t.Run("mismatch should error", func(t *testing.T) { cfg.burnBalancesOnEth.Add(cfg.burnBalancesOnEth, big.NewInt(1)) @@ -846,32 +846,32 @@ func TestBridgeExecutor_CheckToken(t *testing.T) { assert.ErrorIs(t, result.error, ErrBalanceMismatch) }) }) - t.Run("native on MvX but with mint-burn, mint-burn on Eth, ok values, with next pending batches", func(t *testing.T) { + t.Run("native on Klv but with mint-burn, mint-burn on Eth, ok values, with next pending batches", func(t *testing.T) { t.Parallel() cfg := testConfiguration{ - direction: batchProcessor.FromMultiversX, + direction: batchProcessor.FromKC, isMintBurnOnEth: true, - isNativeOnMvx: true, - isMintBurnOnMvx: true, + isNativeOnKlv: true, + isMintBurnOnKlv: true, burnBalancesOnEth: big.NewInt(1000), // initial burn (1000) mintBalancesOnEth: big.NewInt(11000), // minted (10000) + initial burn (1000) - burnBalancesOnMvx: big.NewInt(12220), - mintBalancesOnMvx: big.NewInt(2000), // burn - mint - transfer - next batches on Mvx === mint - burn on Eth + burnBalancesOnKlv: big.NewInt(12220), + mintBalancesOnKlv: big.NewInt(2000), // burn - mint - transfer - next batches on Klv === mint - burn on Eth amount: amount, - amountsOnMvxPendingBatches: map[uint64][]*big.Int{ + amountsOnKlvPendingBatches: map[uint64][]*big.Int{ 1: {amount}, 2: {big.NewInt(30), big.NewInt(40)}, 3: {big.NewInt(50)}, }, - mvxToken: mvxToken, + kdaToken: kdaToken, ethToken: ethToken, } result := validatorTester(cfg) assert.Nil(t, result.error) assert.True(t, result.checkRequiredBalanceOnEthCalled) - assert.False(t, result.checkRequiredBalanceOnMvxCalled) + assert.False(t, result.checkRequiredBalanceOnKlvCalled) t.Run("mismatch should error", func(t *testing.T) { cfg.burnBalancesOnEth.Add(cfg.burnBalancesOnEth, big.NewInt(1)) @@ -879,169 +879,169 @@ func TestBridgeExecutor_CheckToken(t *testing.T) { assert.ErrorIs(t, result.error, ErrBalanceMismatch) }) }) - t.Run("native on Eth, mint-burn on MvX, ok values, no next pending batches", func(t *testing.T) { + t.Run("native on Eth, mint-burn on Klv, ok values, no next pending batches", func(t *testing.T) { t.Parallel() cfg := testConfiguration{ - direction: batchProcessor.FromMultiversX, - isMintBurnOnMvx: true, + direction: batchProcessor.FromKC, + isMintBurnOnKlv: true, isNativeOnEth: true, - burnBalancesOnMvx: big.NewInt(1100), // initial burn (1000) + transfer from this batch (100) - mintBalancesOnMvx: big.NewInt(11000), // minted (10000) + initial burn (1000) + burnBalancesOnKlv: big.NewInt(1100), // initial burn (1000) + transfer from this batch (100) + mintBalancesOnKlv: big.NewInt(11000), // minted (10000) + initial burn (1000) totalBalancesOnEth: big.NewInt(10000), // initial (10000) amount: amount, - amountsOnMvxPendingBatches: map[uint64][]*big.Int{ + amountsOnKlvPendingBatches: map[uint64][]*big.Int{ 1: {amount}, }, - mvxToken: mvxToken, + kdaToken: kdaToken, ethToken: ethToken, } result := validatorTester(cfg) assert.Nil(t, result.error) assert.True(t, result.checkRequiredBalanceOnEthCalled) - assert.False(t, result.checkRequiredBalanceOnMvxCalled) + assert.False(t, result.checkRequiredBalanceOnKlvCalled) t.Run("mismatch should error", func(t *testing.T) { - cfg.burnBalancesOnMvx.Add(cfg.burnBalancesOnMvx, big.NewInt(1)) + cfg.burnBalancesOnKlv.Add(cfg.burnBalancesOnKlv, big.NewInt(1)) result = validatorTester(cfg) assert.ErrorIs(t, result.error, ErrBalanceMismatch) }) }) - t.Run("native on Eth, mint-burn on MvX, ok values, with next pending batches", func(t *testing.T) { + t.Run("native on Eth, mint-burn on Klv, ok values, with next pending batches", func(t *testing.T) { t.Parallel() cfg := testConfiguration{ - direction: batchProcessor.FromMultiversX, - isMintBurnOnMvx: true, + direction: batchProcessor.FromKC, + isMintBurnOnKlv: true, isNativeOnEth: true, - burnBalancesOnMvx: big.NewInt(1220), // initial burn (1000) + transfer from this batch (100) + next batches (120) - mintBalancesOnMvx: big.NewInt(11000), // minted (10000) + initial burn (1000) + burnBalancesOnKlv: big.NewInt(1220), // initial burn (1000) + transfer from this batch (100) + next batches (120) + mintBalancesOnKlv: big.NewInt(11000), // minted (10000) + initial burn (1000) totalBalancesOnEth: big.NewInt(10000), // initial (10000) amount: amount, - amountsOnMvxPendingBatches: map[uint64][]*big.Int{ + amountsOnKlvPendingBatches: map[uint64][]*big.Int{ 1: {amount}, 2: {big.NewInt(30), big.NewInt(40)}, 3: {big.NewInt(50)}, }, - mvxToken: mvxToken, + kdaToken: kdaToken, ethToken: ethToken, } result := validatorTester(cfg) assert.Nil(t, result.error) assert.True(t, result.checkRequiredBalanceOnEthCalled) - assert.False(t, result.checkRequiredBalanceOnMvxCalled) + assert.False(t, result.checkRequiredBalanceOnKlvCalled) t.Run("mismatch should error", func(t *testing.T) { - cfg.burnBalancesOnMvx.Add(cfg.burnBalancesOnMvx, big.NewInt(1)) + cfg.burnBalancesOnKlv.Add(cfg.burnBalancesOnKlv, big.NewInt(1)) result = validatorTester(cfg) assert.ErrorIs(t, result.error, ErrBalanceMismatch) }) }) - t.Run("native on Eth but with mint-burn, mint-burn on MvX, ok values, no next pending batches", func(t *testing.T) { + t.Run("native on Eth but with mint-burn, mint-burn on Klv, ok values, no next pending batches", func(t *testing.T) { t.Parallel() cfg := testConfiguration{ - direction: batchProcessor.FromMultiversX, - isMintBurnOnMvx: true, + direction: batchProcessor.FromKC, + isMintBurnOnKlv: true, isNativeOnEth: true, isMintBurnOnEth: true, - burnBalancesOnMvx: big.NewInt(1100), // initial burn (1000) + transfer from this batch (100) - mintBalancesOnMvx: big.NewInt(11000), // minted (10000) + initial burn (1000) + burnBalancesOnKlv: big.NewInt(1100), // initial burn (1000) + transfer from this batch (100) + mintBalancesOnKlv: big.NewInt(11000), // minted (10000) + initial burn (1000) burnBalancesOnEth: big.NewInt(12000), - mintBalancesOnEth: big.NewInt(2000), // burn - mint on Eth === mint - burn - transfer on Mvx + mintBalancesOnEth: big.NewInt(2000), // burn - mint on Eth === mint - burn - transfer on Klv amount: amount, - amountsOnMvxPendingBatches: map[uint64][]*big.Int{ + amountsOnKlvPendingBatches: map[uint64][]*big.Int{ 1: {amount}, }, - mvxToken: mvxToken, + kdaToken: kdaToken, ethToken: ethToken, } result := validatorTester(cfg) assert.Nil(t, result.error) assert.True(t, result.checkRequiredBalanceOnEthCalled) - assert.False(t, result.checkRequiredBalanceOnMvxCalled) + assert.False(t, result.checkRequiredBalanceOnKlvCalled) t.Run("mismatch should error", func(t *testing.T) { - cfg.burnBalancesOnMvx.Add(cfg.burnBalancesOnMvx, big.NewInt(1)) + cfg.burnBalancesOnKlv.Add(cfg.burnBalancesOnKlv, big.NewInt(1)) result = validatorTester(cfg) assert.ErrorIs(t, result.error, ErrBalanceMismatch) }) }) - t.Run("native on Eth but with mint-burn, mint-burn on MvX, ok values, with next pending batches", func(t *testing.T) { + t.Run("native on Eth but with mint-burn, mint-burn on Klv, ok values, with next pending batches", func(t *testing.T) { t.Parallel() cfg := testConfiguration{ - direction: batchProcessor.FromMultiversX, - isMintBurnOnMvx: true, + direction: batchProcessor.FromKC, + isMintBurnOnKlv: true, isNativeOnEth: true, isMintBurnOnEth: true, - burnBalancesOnMvx: big.NewInt(1220), // initial burn (1000) + transfer from this batch (100) + transfer from next batches - mintBalancesOnMvx: big.NewInt(11000), // minted (10000) + initial burn (1000) + burnBalancesOnKlv: big.NewInt(1220), // initial burn (1000) + transfer from this batch (100) + transfer from next batches + mintBalancesOnKlv: big.NewInt(11000), // minted (10000) + initial burn (1000) burnBalancesOnEth: big.NewInt(12000), - mintBalancesOnEth: big.NewInt(2000), // burn - mint on Eth === mint - burn - transfer - next batches on Mvx + mintBalancesOnEth: big.NewInt(2000), // burn - mint on Eth === mint - burn - transfer - next batches on Klv amount: amount, - amountsOnMvxPendingBatches: map[uint64][]*big.Int{ + amountsOnKlvPendingBatches: map[uint64][]*big.Int{ 1: {amount}, 2: {big.NewInt(30), big.NewInt(40)}, 3: {big.NewInt(50)}, }, - mvxToken: mvxToken, + kdaToken: kdaToken, ethToken: ethToken, } result := validatorTester(cfg) assert.Nil(t, result.error) assert.True(t, result.checkRequiredBalanceOnEthCalled) - assert.False(t, result.checkRequiredBalanceOnMvxCalled) + assert.False(t, result.checkRequiredBalanceOnKlvCalled) t.Run("mismatch should error", func(t *testing.T) { - cfg.burnBalancesOnMvx.Add(cfg.burnBalancesOnMvx, big.NewInt(1)) + cfg.burnBalancesOnKlv.Add(cfg.burnBalancesOnKlv, big.NewInt(1)) result = validatorTester(cfg) assert.ErrorIs(t, result.error, ErrBalanceMismatch) }) }) }) - t.Run("MvX <-> Eth", func(t *testing.T) { + t.Run("Klv <-> Eth", func(t *testing.T) { t.Parallel() - t.Run("from Eth: native on MvX, mint-burn on Eth, ok values, with next pending batches", func(t *testing.T) { + t.Run("from Eth: native on Klv, mint-burn on Eth, ok values, with next pending batches", func(t *testing.T) { t.Parallel() - existingNativeBalanceMvx := int64(10000) + existingNativeBalanceKlv := int64(10000) existingBurnEth := int64(150000) existingMintEth := int64(160000) cfg := testConfiguration{ - direction: batchProcessor.ToMultiversX, + direction: batchProcessor.ToKC, isMintBurnOnEth: true, - isNativeOnMvx: true, + isNativeOnKlv: true, burnBalancesOnEth: big.NewInt(existingBurnEth + 100 + 30 + 40 + 50), mintBalancesOnEth: big.NewInt(existingMintEth), - totalBalancesOnMvx: big.NewInt(existingNativeBalanceMvx + 60 + 80 + 100 + 200), + totalBalancesOnKlv: big.NewInt(existingNativeBalanceKlv + 60 + 80 + 100 + 200), amount: amount, - pendingMvxBatchId: 1, + pendingKlvBatchId: 1, amountsOnEthPendingBatches: map[uint64][]*big.Int{ 1: {amount}, 2: {big.NewInt(30), big.NewInt(40)}, 3: {big.NewInt(50)}, }, - amountsOnMvxPendingBatches: map[uint64][]*big.Int{ + amountsOnKlvPendingBatches: map[uint64][]*big.Int{ 1: {amount2}, 2: {big.NewInt(60), big.NewInt(80)}, 3: {big.NewInt(100)}, }, - mvxToken: mvxToken, + kdaToken: kdaToken, ethToken: ethToken, } result := validatorTester(cfg) assert.Nil(t, result.error) assert.False(t, result.checkRequiredBalanceOnEthCalled) - assert.True(t, result.checkRequiredBalanceOnMvxCalled) + assert.True(t, result.checkRequiredBalanceOnKlvCalled) t.Run("mismatch should error", func(t *testing.T) { copiedCfg := cfg.deepClone() @@ -1050,43 +1050,43 @@ func TestBridgeExecutor_CheckToken(t *testing.T) { assert.ErrorIs(t, result.error, ErrBalanceMismatch) }) }) - t.Run("from Eth: native on MvX but with mint-burn, mint-burn on Eth, ok values, with next pending batches", func(t *testing.T) { + t.Run("from Eth: native on Klv but with mint-burn, mint-burn on Eth, ok values, with next pending batches", func(t *testing.T) { t.Parallel() - existingBurnMvx := int64(370000) // burn > mint because the token is native - existingMintMvx := int64(360000) + existingBurnKlv := int64(370000) // burn > mint because the token is native + existingMintKlv := int64(360000) existingBurnEth := int64(150000) existingMintEth := int64(160000) cfg := testConfiguration{ - direction: batchProcessor.ToMultiversX, + direction: batchProcessor.ToKC, isMintBurnOnEth: true, - isNativeOnMvx: true, - isMintBurnOnMvx: true, + isNativeOnKlv: true, + isMintBurnOnKlv: true, burnBalancesOnEth: big.NewInt(existingBurnEth + 100 + 30 + 40 + 50), mintBalancesOnEth: big.NewInt(existingMintEth), - burnBalancesOnMvx: big.NewInt(existingBurnMvx + 60 + 80 + 100 + 200), - mintBalancesOnMvx: big.NewInt(existingMintMvx), + burnBalancesOnKlv: big.NewInt(existingBurnKlv + 60 + 80 + 100 + 200), + mintBalancesOnKlv: big.NewInt(existingMintKlv), amount: amount, - pendingMvxBatchId: 1, + pendingKlvBatchId: 1, amountsOnEthPendingBatches: map[uint64][]*big.Int{ 1: {amount}, 2: {big.NewInt(30), big.NewInt(40)}, 3: {big.NewInt(50)}, }, - amountsOnMvxPendingBatches: map[uint64][]*big.Int{ + amountsOnKlvPendingBatches: map[uint64][]*big.Int{ 1: {amount2}, 2: {big.NewInt(60), big.NewInt(80)}, 3: {big.NewInt(100)}, }, - mvxToken: mvxToken, + kdaToken: kdaToken, ethToken: ethToken, } result := validatorTester(cfg) assert.Nil(t, result.error) assert.False(t, result.checkRequiredBalanceOnEthCalled) - assert.True(t, result.checkRequiredBalanceOnMvxCalled) + assert.True(t, result.checkRequiredBalanceOnKlvCalled) t.Run("mismatch should error", func(t *testing.T) { copiedCfg := cfg.deepClone() @@ -1095,110 +1095,110 @@ func TestBridgeExecutor_CheckToken(t *testing.T) { assert.ErrorIs(t, result.error, ErrBalanceMismatch) }) }) - t.Run("from Eth: native on Eth, mint-burn on MvX, ok values, with next pending batches", func(t *testing.T) { + t.Run("from Eth: native on Eth, mint-burn on Klv, ok values, with next pending batches", func(t *testing.T) { t.Parallel() - existingBurnMvx := int64(360000) - existingMintMvx := int64(370000) + existingBurnKlv := int64(360000) + existingMintKlv := int64(370000) existingNativeBalanceEth := int64(10000) cfg := testConfiguration{ - direction: batchProcessor.ToMultiversX, - isMintBurnOnMvx: true, + direction: batchProcessor.ToKC, + isMintBurnOnKlv: true, isNativeOnEth: true, - burnBalancesOnMvx: big.NewInt(existingBurnMvx + 200 + 60 + 80 + 100), - mintBalancesOnMvx: big.NewInt(existingMintMvx), + burnBalancesOnKlv: big.NewInt(existingBurnKlv + 200 + 60 + 80 + 100), + mintBalancesOnKlv: big.NewInt(existingMintKlv), totalBalancesOnEth: big.NewInt(existingNativeBalanceEth + 100 + 30 + 40 + 50), amount: amount, - pendingMvxBatchId: 1, + pendingKlvBatchId: 1, amountsOnEthPendingBatches: map[uint64][]*big.Int{ 1: {amount}, 2: {big.NewInt(30), big.NewInt(40)}, 3: {big.NewInt(50)}, }, - amountsOnMvxPendingBatches: map[uint64][]*big.Int{ + amountsOnKlvPendingBatches: map[uint64][]*big.Int{ 1: {amount2}, 2: {big.NewInt(60), big.NewInt(80)}, 3: {big.NewInt(100)}, }, - mvxToken: mvxToken, + kdaToken: kdaToken, ethToken: ethToken, } result := validatorTester(cfg) assert.Nil(t, result.error) assert.False(t, result.checkRequiredBalanceOnEthCalled) - assert.True(t, result.checkRequiredBalanceOnMvxCalled) + assert.True(t, result.checkRequiredBalanceOnKlvCalled) t.Run("mismatch should error", func(t *testing.T) { copiedCfg := cfg.deepClone() - copiedCfg.burnBalancesOnMvx.Add(copiedCfg.burnBalancesOnMvx, big.NewInt(1)) + copiedCfg.burnBalancesOnKlv.Add(copiedCfg.burnBalancesOnKlv, big.NewInt(1)) result = validatorTester(copiedCfg) assert.ErrorIs(t, result.error, ErrBalanceMismatch) }) }) - t.Run("from Eth: native on Eth but with mint-burn, mint-burn on MvX, ok values, with next pending batches", func(t *testing.T) { + t.Run("from Eth: native on Eth but with mint-burn, mint-burn on Klv, ok values, with next pending batches", func(t *testing.T) { t.Parallel() - existingBurnMvx := int64(360000) - existingMintMvx := int64(370000) + existingBurnKlv := int64(360000) + existingMintKlv := int64(370000) existingBurnEth := int64(160000) // burn > mint because the token is native existingMintEth := int64(150000) cfg := testConfiguration{ - direction: batchProcessor.ToMultiversX, - isMintBurnOnMvx: true, + direction: batchProcessor.ToKC, + isMintBurnOnKlv: true, isNativeOnEth: true, isMintBurnOnEth: true, - burnBalancesOnMvx: big.NewInt(existingBurnMvx + 200 + 60 + 80 + 100), - mintBalancesOnMvx: big.NewInt(existingMintMvx), + burnBalancesOnKlv: big.NewInt(existingBurnKlv + 200 + 60 + 80 + 100), + mintBalancesOnKlv: big.NewInt(existingMintKlv), burnBalancesOnEth: big.NewInt(existingBurnEth + 100 + 30 + 40 + 50), mintBalancesOnEth: big.NewInt(existingMintEth), amount: amount, - pendingMvxBatchId: 1, + pendingKlvBatchId: 1, amountsOnEthPendingBatches: map[uint64][]*big.Int{ 1: {amount}, 2: {big.NewInt(30), big.NewInt(40)}, 3: {big.NewInt(50)}, }, - amountsOnMvxPendingBatches: map[uint64][]*big.Int{ + amountsOnKlvPendingBatches: map[uint64][]*big.Int{ 1: {amount2}, 2: {big.NewInt(60), big.NewInt(80)}, 3: {big.NewInt(100)}, }, - mvxToken: mvxToken, + kdaToken: kdaToken, ethToken: ethToken, } result := validatorTester(cfg) assert.Nil(t, result.error) assert.False(t, result.checkRequiredBalanceOnEthCalled) - assert.True(t, result.checkRequiredBalanceOnMvxCalled) + assert.True(t, result.checkRequiredBalanceOnKlvCalled) t.Run("mismatch should error", func(t *testing.T) { copiedCfg := cfg.deepClone() - copiedCfg.burnBalancesOnMvx.Add(copiedCfg.burnBalancesOnMvx, big.NewInt(1)) + copiedCfg.burnBalancesOnKlv.Add(copiedCfg.burnBalancesOnKlv, big.NewInt(1)) result = validatorTester(copiedCfg) assert.ErrorIs(t, result.error, ErrBalanceMismatch) }) }) - t.Run("from MvX: native on MvX, mint-burn on Eth, ok values, with next pending batches on both chains", func(t *testing.T) { + t.Run("from Klv: native on Klv, mint-burn on Eth, ok values, with next pending batches on both chains", func(t *testing.T) { t.Parallel() - existingNativeBalanceMvx := int64(10000) + existingNativeBalanceKlv := int64(10000) existingBurnEth := int64(150000) existingMintEth := int64(160000) cfg := testConfiguration{ - direction: batchProcessor.FromMultiversX, + direction: batchProcessor.FromKC, isMintBurnOnEth: true, - isNativeOnMvx: true, + isNativeOnKlv: true, burnBalancesOnEth: big.NewInt(existingBurnEth + 200 + 60 + 80 + 100), mintBalancesOnEth: big.NewInt(existingMintEth), - totalBalancesOnMvx: big.NewInt(existingNativeBalanceMvx + 30 + 40 + 50 + 100), + totalBalancesOnKlv: big.NewInt(existingNativeBalanceKlv + 30 + 40 + 50 + 100), amount: amount, - pendingMvxBatchId: 1, - amountsOnMvxPendingBatches: map[uint64][]*big.Int{ + pendingKlvBatchId: 1, + amountsOnKlvPendingBatches: map[uint64][]*big.Int{ 1: {amount}, 2: {big.NewInt(30), big.NewInt(40)}, 3: {big.NewInt(50)}, @@ -1208,14 +1208,14 @@ func TestBridgeExecutor_CheckToken(t *testing.T) { 2: {big.NewInt(60), big.NewInt(80)}, 3: {big.NewInt(100)}, }, - mvxToken: mvxToken, + kdaToken: kdaToken, ethToken: ethToken, } result := validatorTester(cfg) assert.Nil(t, result.error) assert.True(t, result.checkRequiredBalanceOnEthCalled) - assert.False(t, result.checkRequiredBalanceOnMvxCalled) + assert.False(t, result.checkRequiredBalanceOnKlvCalled) t.Run("mismatch should error", func(t *testing.T) { copiedCfg := cfg.deepClone() @@ -1224,26 +1224,26 @@ func TestBridgeExecutor_CheckToken(t *testing.T) { assert.ErrorIs(t, result.error, ErrBalanceMismatch) }) }) - t.Run("from MvX: native on MvX but with mint-burn, mint-burn on Eth, ok values, with next pending batches", func(t *testing.T) { + t.Run("from Klv: native on Klv but with mint-burn, mint-burn on Eth, ok values, with next pending batches", func(t *testing.T) { t.Parallel() - existingBurnMvx := int64(370000) // burn > mint because the token is native - existingMintMvx := int64(360000) + existingBurnKlv := int64(370000) // burn > mint because the token is native + existingMintKlv := int64(360000) existingBurnEth := int64(150000) existingMintEth := int64(160000) cfg := testConfiguration{ - direction: batchProcessor.FromMultiversX, + direction: batchProcessor.FromKC, isMintBurnOnEth: true, - isNativeOnMvx: true, - isMintBurnOnMvx: true, + isNativeOnKlv: true, + isMintBurnOnKlv: true, burnBalancesOnEth: big.NewInt(existingBurnEth + 200 + 60 + 80 + 100), mintBalancesOnEth: big.NewInt(existingMintEth), - burnBalancesOnMvx: big.NewInt(existingBurnMvx + 30 + 40 + 50 + 100), - mintBalancesOnMvx: big.NewInt(existingMintMvx), + burnBalancesOnKlv: big.NewInt(existingBurnKlv + 30 + 40 + 50 + 100), + mintBalancesOnKlv: big.NewInt(existingMintKlv), amount: amount, - pendingMvxBatchId: 1, - amountsOnMvxPendingBatches: map[uint64][]*big.Int{ + pendingKlvBatchId: 1, + amountsOnKlvPendingBatches: map[uint64][]*big.Int{ 1: {amount}, 2: {big.NewInt(30), big.NewInt(40)}, 3: {big.NewInt(50)}, @@ -1253,14 +1253,14 @@ func TestBridgeExecutor_CheckToken(t *testing.T) { 2: {big.NewInt(60), big.NewInt(80)}, 3: {big.NewInt(100)}, }, - mvxToken: mvxToken, + kdaToken: kdaToken, ethToken: ethToken, } result := validatorTester(cfg) assert.Nil(t, result.error) assert.True(t, result.checkRequiredBalanceOnEthCalled) - assert.False(t, result.checkRequiredBalanceOnMvxCalled) + assert.False(t, result.checkRequiredBalanceOnKlvCalled) t.Run("mismatch should error", func(t *testing.T) { copiedCfg := cfg.deepClone() @@ -1269,23 +1269,23 @@ func TestBridgeExecutor_CheckToken(t *testing.T) { assert.ErrorIs(t, result.error, ErrBalanceMismatch) }) }) - t.Run("from MvX: native on Eth, mint-burn on MvX, ok values, with next pending batches", func(t *testing.T) { + t.Run("from Klv: native on Eth, mint-burn on Klv, ok values, with next pending batches", func(t *testing.T) { t.Parallel() - existingBurnMvx := int64(360000) - existingMintMvx := int64(370000) + existingBurnKlv := int64(360000) + existingMintKlv := int64(370000) existingNativeBalanceEth := int64(10000) cfg := testConfiguration{ - direction: batchProcessor.FromMultiversX, - isMintBurnOnMvx: true, + direction: batchProcessor.FromKC, + isMintBurnOnKlv: true, isNativeOnEth: true, - burnBalancesOnMvx: big.NewInt(existingBurnMvx + 100 + 30 + 40 + 50), - mintBalancesOnMvx: big.NewInt(existingMintMvx), + burnBalancesOnKlv: big.NewInt(existingBurnKlv + 100 + 30 + 40 + 50), + mintBalancesOnKlv: big.NewInt(existingMintKlv), totalBalancesOnEth: big.NewInt(existingNativeBalanceEth + 200 + 60 + 80 + 100), amount: amount, - pendingMvxBatchId: 1, - amountsOnMvxPendingBatches: map[uint64][]*big.Int{ + pendingKlvBatchId: 1, + amountsOnKlvPendingBatches: map[uint64][]*big.Int{ 1: {amount}, 2: {big.NewInt(30), big.NewInt(40)}, 3: {big.NewInt(50)}, @@ -1295,42 +1295,42 @@ func TestBridgeExecutor_CheckToken(t *testing.T) { 2: {big.NewInt(60), big.NewInt(80)}, 3: {big.NewInt(100)}, }, - mvxToken: mvxToken, + kdaToken: kdaToken, ethToken: ethToken, } result := validatorTester(cfg) assert.Nil(t, result.error) assert.True(t, result.checkRequiredBalanceOnEthCalled) - assert.False(t, result.checkRequiredBalanceOnMvxCalled) + assert.False(t, result.checkRequiredBalanceOnKlvCalled) t.Run("mismatch should error", func(t *testing.T) { copiedCfg := cfg.deepClone() - copiedCfg.burnBalancesOnMvx.Add(copiedCfg.burnBalancesOnMvx, big.NewInt(1)) + copiedCfg.burnBalancesOnKlv.Add(copiedCfg.burnBalancesOnKlv, big.NewInt(1)) result = validatorTester(copiedCfg) assert.ErrorIs(t, result.error, ErrBalanceMismatch) }) }) - t.Run("from MvX: native on Eth but with mint-burn, mint-burn on MvX, ok values, with next pending batches", func(t *testing.T) { + t.Run("from Klv: native on Eth but with mint-burn, mint-burn on Klv, ok values, with next pending batches", func(t *testing.T) { t.Parallel() - existingBurnMvx := int64(360000) - existingMintMvx := int64(370000) + existingBurnKlv := int64(360000) + existingMintKlv := int64(370000) existingBurnEth := int64(160000) // burn > mint because the token is native existingMintEth := int64(150000) cfg := testConfiguration{ - direction: batchProcessor.FromMultiversX, - isMintBurnOnMvx: true, + direction: batchProcessor.FromKC, + isMintBurnOnKlv: true, isNativeOnEth: true, isMintBurnOnEth: true, - burnBalancesOnMvx: big.NewInt(existingBurnMvx + 100 + 30 + 40 + 50), - mintBalancesOnMvx: big.NewInt(existingMintMvx), + burnBalancesOnKlv: big.NewInt(existingBurnKlv + 100 + 30 + 40 + 50), + mintBalancesOnKlv: big.NewInt(existingMintKlv), burnBalancesOnEth: big.NewInt(existingBurnEth + 200 + 60 + 80 + 100), mintBalancesOnEth: big.NewInt(existingMintEth), amount: amount, - pendingMvxBatchId: 1, - amountsOnMvxPendingBatches: map[uint64][]*big.Int{ + pendingKlvBatchId: 1, + amountsOnKlvPendingBatches: map[uint64][]*big.Int{ 1: {amount}, 2: {big.NewInt(30), big.NewInt(40)}, 3: {big.NewInt(50)}, @@ -1340,18 +1340,18 @@ func TestBridgeExecutor_CheckToken(t *testing.T) { 2: {big.NewInt(60), big.NewInt(80)}, 3: {big.NewInt(100)}, }, - mvxToken: mvxToken, + kdaToken: kdaToken, ethToken: ethToken, } result := validatorTester(cfg) assert.Nil(t, result.error) assert.True(t, result.checkRequiredBalanceOnEthCalled) - assert.False(t, result.checkRequiredBalanceOnMvxCalled) + assert.False(t, result.checkRequiredBalanceOnKlvCalled) t.Run("mismatch should error", func(t *testing.T) { copiedCfg := cfg.deepClone() - copiedCfg.burnBalancesOnMvx.Add(copiedCfg.burnBalancesOnMvx, big.NewInt(1)) + copiedCfg.burnBalancesOnKlv.Add(copiedCfg.burnBalancesOnKlv, big.NewInt(1)) result = validatorTester(copiedCfg) assert.ErrorIs(t, result.error, ErrBalanceMismatch) }) @@ -1365,102 +1365,102 @@ func validatorTester(cfg testConfiguration) testResult { result := testResult{} - lastMvxBatchID := uint64(0) - for key := range cfg.amountsOnMvxPendingBatches { - if key > lastMvxBatchID { - lastMvxBatchID = key + lastKlvBatchID := uint64(0) + for key := range cfg.amountsOnKlvPendingBatches { + if key > lastKlvBatchID { + lastKlvBatchID = key } } - args.MultiversXClient = &bridge.MultiversXClientStub{ + args.KCClient = &bridge.KCClientStub{ CheckRequiredBalanceCalled: func(ctx context.Context, token []byte, value *big.Int) error { - result.checkRequiredBalanceOnMvxCalled = true + result.checkRequiredBalanceOnKlvCalled = true return nil }, IsMintBurnTokenCalled: func(ctx context.Context, token []byte) (bool, error) { - err := cfg.errorsOnCalls["IsMintBurnTokenMvx"] + err := cfg.errorsOnCalls["IsMintBurnTokenKlv"] if err != nil { return false, err } - return cfg.isMintBurnOnMvx, nil + return cfg.isMintBurnOnKlv, nil }, IsNativeTokenCalled: func(ctx context.Context, token []byte) (bool, error) { - err := cfg.errorsOnCalls["IsNativeTokenMvx"] + err := cfg.errorsOnCalls["IsNativeTokenKlv"] if err != nil { return false, err } - return cfg.isNativeOnMvx, nil + return cfg.isNativeOnKlv, nil }, TotalBalancesCalled: func(ctx context.Context, token []byte) (*big.Int, error) { - err := cfg.errorsOnCalls["TotalBalancesMvx"] + err := cfg.errorsOnCalls["TotalBalancesKlv"] if err != nil { return nil, err } - return returnBigIntOrZeroIfNil(cfg.totalBalancesOnMvx), nil + return returnBigIntOrZeroIfNil(cfg.totalBalancesOnKlv), nil }, MintBalancesCalled: func(ctx context.Context, token []byte) (*big.Int, error) { - err := cfg.errorsOnCalls["MintBalancesMvx"] + err := cfg.errorsOnCalls["MintBalancesKlv"] if err != nil { return nil, err } - return returnBigIntOrZeroIfNil(cfg.mintBalancesOnMvx), nil + return returnBigIntOrZeroIfNil(cfg.mintBalancesOnKlv), nil }, BurnBalancesCalled: func(ctx context.Context, token []byte) (*big.Int, error) { - err := cfg.errorsOnCalls["BurnBalancesMvx"] + err := cfg.errorsOnCalls["BurnBalancesKlv"] if err != nil { return nil, err } - return returnBigIntOrZeroIfNil(cfg.burnBalancesOnMvx), nil + return returnBigIntOrZeroIfNil(cfg.burnBalancesOnKlv), nil }, GetPendingBatchCalled: func(ctx context.Context) (*bridgeCore.TransferBatch, error) { - err := cfg.errorsOnCalls["GetPendingBatchMvx"] + err := cfg.errorsOnCalls["GetPendingBatchKlv"] if err != nil { return nil, err } batch := &bridgeCore.TransferBatch{ - ID: cfg.pendingMvxBatchId, + ID: cfg.pendingKlvBatchId, } - applyDummyFromMvxDepositsToBatch(cfg, batch) + applyDummyFromKlvDepositsToBatch(cfg, batch) return batch, nil }, GetBatchCalled: func(ctx context.Context, batchID uint64) (*bridgeCore.TransferBatch, error) { - err := cfg.errorsOnCalls["GetBatchMvx"] + err := cfg.errorsOnCalls["GetBatchKlv"] if err != nil { return nil, err } - if batchID > getMaxMvxPendingBatchID(cfg) { + if batchID > getMaxKlvPendingBatchID(cfg) { return nil, clients.ErrNoBatchAvailable } batch := &bridgeCore.TransferBatch{ ID: batchID, } - applyDummyFromMvxDepositsToBatch(cfg, batch) + applyDummyFromKlvDepositsToBatch(cfg, batch) return batch, nil }, GetLastExecutedEthBatchIDCalled: func(ctx context.Context) (uint64, error) { - err := cfg.errorsOnCalls["GetLastExecutedEthBatchIDMvx"] + err := cfg.errorsOnCalls["GetLastExecutedEthBatchIDKlv"] if err != nil { return 0, err } return cfg.lastExecutedEthBatch, nil }, - GetLastMvxBatchIDCalled: func(ctx context.Context) (uint64, error) { - err := cfg.errorsOnCalls["GetLastMvxBatchID"] + GetLastKCBatchIDCalled: func(ctx context.Context) (uint64, error) { + err := cfg.errorsOnCalls["GetLastKCBatchID"] if err != nil { return 0, err } - return lastMvxBatchID, nil + return lastKlvBatchID, nil }, } args.EthereumClient = &bridge.EthereumClientStub{ @@ -1527,7 +1527,7 @@ func validatorTester(cfg testConfiguration) testResult { return false, err } - _, found := cfg.amountsOnMvxPendingBatches[batchID] + _, found := cfg.amountsOnKlvPendingBatches[batchID] return !found, nil }, } @@ -1538,14 +1538,14 @@ func validatorTester(cfg testConfiguration) testResult { return result } - result.error = validator.CheckToken(context.Background(), cfg.ethToken, cfg.mvxToken, cfg.amount, cfg.direction) + result.error = validator.CheckToken(context.Background(), cfg.ethToken, cfg.kdaToken, cfg.amount, cfg.direction) return result } -func applyDummyFromMvxDepositsToBatch(cfg testConfiguration, batch *bridgeCore.TransferBatch) { - if cfg.amountsOnMvxPendingBatches != nil { - values, found := cfg.amountsOnMvxPendingBatches[batch.ID] +func applyDummyFromKlvDepositsToBatch(cfg testConfiguration, batch *bridgeCore.TransferBatch) { + if cfg.amountsOnKlvPendingBatches != nil { + values, found := cfg.amountsOnKlvPendingBatches[batch.ID] if found { depositCounter := uint64(0) @@ -1553,7 +1553,7 @@ func applyDummyFromMvxDepositsToBatch(cfg testConfiguration, batch *bridgeCore.T batch.Deposits = append(batch.Deposits, &bridgeCore.DepositTransfer{ Nonce: depositCounter, Amount: big.NewInt(0).Set(deposit), - SourceTokenBytes: mvxToken, + SourceTokenBytes: kdaToken, }) } } @@ -1577,13 +1577,13 @@ func applyDummyFromEthDepositsToBatch(cfg testConfiguration, batch *bridgeCore.T } } -func getMaxMvxPendingBatchID(cfg testConfiguration) uint64 { - if cfg.amountsOnMvxPendingBatches == nil { +func getMaxKlvPendingBatchID(cfg testConfiguration) uint64 { + if cfg.amountsOnKlvPendingBatches == nil { return 0 } maxBatchIDFound := uint64(0) - for batchID := range cfg.amountsOnMvxPendingBatches { + for batchID := range cfg.amountsOnKlvPendingBatches { if batchID > maxBatchIDFound { maxBatchIDFound = batchID } diff --git a/clients/balanceValidator/errors.go b/clients/balanceValidator/errors.go index 9288ca5b..4d9ee17e 100644 --- a/clients/balanceValidator/errors.go +++ b/clients/balanceValidator/errors.go @@ -5,8 +5,8 @@ import "errors" // ErrNilLogger signals that a nil logger has been provided var ErrNilLogger = errors.New("nil logger") -// ErrNilMultiversXClient signals that a nil MultiversX client has been provided -var ErrNilMultiversXClient = errors.New("nil MultiversX client") +// ErrNilKCClient signals that a nil Klever Blockchain client has been provided +var ErrNilKCClient = errors.New("nil Klever Blockchain client") // ErrNilEthereumClient signals that a nil Ethereum client has been provided var ErrNilEthereumClient = errors.New("nil Ethereum client") diff --git a/clients/balanceValidator/interface.go b/clients/balanceValidator/interface.go index c1b2ed1e..65f5457c 100644 --- a/clients/balanceValidator/interface.go +++ b/clients/balanceValidator/interface.go @@ -8,12 +8,12 @@ import ( bridgeCore "github.com/klever-io/klv-bridge-eth-go/core" ) -// MultiversXClient defines the behavior of the MultiversX client able to communicate with the MultiversX chain -type MultiversXClient interface { +// KCClient defines the behavior of the Klever Blockchain client able to communicate with the Klever Blockchain chain +type KCClient interface { GetPendingBatch(ctx context.Context) (*bridgeCore.TransferBatch, error) GetBatch(ctx context.Context, batchID uint64) (*bridgeCore.TransferBatch, error) GetLastExecutedEthBatchID(ctx context.Context) (uint64, error) - GetLastMvxBatchID(ctx context.Context) (uint64, error) + GetLastKCBatchID(ctx context.Context) (uint64, error) IsMintBurnToken(ctx context.Context, token []byte) (bool, error) IsNativeToken(ctx context.Context, token []byte) (bool, error) TotalBalances(ctx context.Context, token []byte) (*big.Int, error) @@ -32,6 +32,6 @@ type EthereumClient interface { MintBurnTokens(ctx context.Context, token common.Address) (bool, error) NativeTokens(ctx context.Context, token common.Address) (bool, error) CheckRequiredBalance(ctx context.Context, erc20Address common.Address, value *big.Int) error - WasExecuted(ctx context.Context, mvxBatchID uint64) (bool, error) + WasExecuted(ctx context.Context, kdaBatchID uint64) (bool, error) IsInterfaceNil() bool } diff --git a/clients/ethereum/client.go b/clients/ethereum/client.go index e4f5e3b7..cf4ac13f 100644 --- a/clients/ethereum/client.go +++ b/clients/ethereum/client.go @@ -201,7 +201,7 @@ func (c *client) GetBatch(ctx context.Context, nonce uint64) (*bridgeCore.Transf return transferBatch, isFinalBatch && areFinalDeposits, nil } -// GetBatchSCMetadata returns the emitted logs in a batch that hold metadata for SC execution on MVX +// GetBatchSCMetadata returns the emitted logs in a batch that hold metadata for SC execution on Klv func (c *client) GetBatchSCMetadata(ctx context.Context, nonce uint64, blockNumber int64) ([]*contract.ERC20SafeERC20SCDeposit, error) { scExecAbi, err := contract.ERC20SafeMetaData.GetAbi() if err != nil { @@ -239,9 +239,9 @@ func (c *client) GetBatchSCMetadata(ctx context.Context, nonce uint64, blockNumb return depositEvents, nil } -// WasExecuted returns true if the MultiversX batch ID was executed -func (c *client) WasExecuted(ctx context.Context, mvxBatchID uint64) (bool, error) { - return c.clientWrapper.WasBatchExecuted(ctx, big.NewInt(0).SetUint64(mvxBatchID)) +// WasExecuted returns true if the Klever Blockchain batch ID was executed +func (c *client) WasExecuted(ctx context.Context, kdaBatchID uint64) (bool, error) { + return c.clientWrapper.WasBatchExecuted(ctx, big.NewInt(0).SetUint64(kdaBatchID)) } // BroadcastSignatureForMessageHash will send the signature for the provided message hash @@ -423,8 +423,8 @@ func (c *client) incrementRetriesAvailabilityCheck() { } func (c *client) setStatusForAvailabilityCheck(status bridgeCore.ClientStatus, message string, nonce uint64) { - c.clientWrapper.SetStringMetric(core.MetricMultiversXClientStatus, status.String()) - c.clientWrapper.SetStringMetric(core.MetricLastMultiversXClientError, message) + c.clientWrapper.SetStringMetric(core.MetricKCClientStatus, status.String()) + c.clientWrapper.SetStringMetric(core.MetricLastKCClientError, message) c.clientWrapper.SetIntMetric(core.MetricLastBlockNonce, int(nonce)) } diff --git a/clients/ethereum/client_test.go b/clients/ethereum/client_test.go index 6a2b5441..fad6058c 100644 --- a/clients/ethereum/client_test.go +++ b/clients/ethereum/client_test.go @@ -295,11 +295,11 @@ func TestClient_GetBatch(t *testing.T) { t.Run("returns batch should work", func(t *testing.T) { from1 := testsCommon.CreateRandomEthereumAddress() token1 := testsCommon.CreateRandomEthereumAddress() - recipient1 := testsCommon.CreateRandomMultiversXAddress() + recipient1 := testsCommon.CreateRandomKCAddress() from2 := testsCommon.CreateRandomEthereumAddress() token2 := testsCommon.CreateRandomEthereumAddress() - recipient2 := testsCommon.CreateRandomMultiversXAddress() + recipient2 := testsCommon.CreateRandomKCAddress() c.clientWrapper = &bridgeTests.EthereumClientWrapperStub{ GetBatchCalled: func(ctx context.Context, batchNonce *big.Int) (contract.Batch, bool, error) { @@ -369,11 +369,11 @@ func TestClient_GetBatch(t *testing.T) { t.Run("returns non final batch should work", func(t *testing.T) { from1 := testsCommon.CreateRandomEthereumAddress() token1 := testsCommon.CreateRandomEthereumAddress() - recipient1 := testsCommon.CreateRandomMultiversXAddress() + recipient1 := testsCommon.CreateRandomKCAddress() from2 := testsCommon.CreateRandomEthereumAddress() token2 := testsCommon.CreateRandomEthereumAddress() - recipient2 := testsCommon.CreateRandomMultiversXAddress() + recipient2 := testsCommon.CreateRandomKCAddress() c.clientWrapper = &bridgeTests.EthereumClientWrapperStub{ GetBatchCalled: func(ctx context.Context, batchNonce *big.Int) (contract.Batch, bool, error) { @@ -457,7 +457,7 @@ func TestClient_GenerateMessageHash(t *testing.T) { }) t.Run("should work", func(t *testing.T) { c, _ := NewEthereumClient(args) - argLists := batchProcessor.ExtractListMvxToEth(batch) + argLists := batchProcessor.ExtractListKlvToEth(batch) assert.Equal(t, expectedAmounts, argLists.Amounts) assert.Equal(t, expectedTokens, argLists.EthTokens) assert.Equal(t, expectedRecipients, argLists.Recipients) @@ -551,7 +551,7 @@ func TestClient_ExecuteTransfer(t *testing.T) { }, } batch := createMockTransferBatch() - argLists := batchProcessor.ExtractListMvxToEth(batch) + argLists := batchProcessor.ExtractListKlvToEth(batch) signatures := make([][]byte, 10) for i := range signatures { signatures[i] = []byte(fmt.Sprintf("sig %d", i)) @@ -692,7 +692,7 @@ func TestClient_ExecuteTransfer(t *testing.T) { Amount: big.NewInt(80), DestinationTokenBytes: []byte("ERC20token1"), }) - newArgLists := batchProcessor.ExtractListMvxToEth(newBatch) + newArgLists := batchProcessor.ExtractListKlvToEth(newBatch) hash, err := c.ExecuteTransfer(context.Background(), common.Hash{}, newArgLists, newBatch.ID, 9) assert.Equal(t, "", hash) assert.True(t, errors.Is(err, errInsufficientBalance)) @@ -1199,8 +1199,8 @@ func TestClient_CheckClientAvailability(t *testing.T) { incrementor = 0 // place a random message as to test it is reset - statusHandler.SetStringMetric(bridgeCore.MetricMultiversXClientStatus, bridgeCore.ClientStatus(3).String()) - statusHandler.SetStringMetric(bridgeCore.MetricLastMultiversXClientError, "random") + statusHandler.SetStringMetric(bridgeCore.MetricKCClientStatus, bridgeCore.ClientStatus(3).String()) + statusHandler.SetStringMetric(bridgeCore.MetricLastKCClientError, "random") // this will just increment the retry counter for i := 0; i < int(args.ClientAvailabilityAllowDelta); i++ { @@ -1312,11 +1312,11 @@ func resetClient(c *client) { c.mut.Lock() c.retriesAvailabilityCheck = 0 c.mut.Unlock() - c.clientWrapper.SetStringMetric(bridgeCore.MetricMultiversXClientStatus, "") - c.clientWrapper.SetStringMetric(bridgeCore.MetricLastMultiversXClientError, "") + c.clientWrapper.SetStringMetric(bridgeCore.MetricKCClientStatus, "") + c.clientWrapper.SetStringMetric(bridgeCore.MetricLastKCClientError, "") } func checkStatusHandler(t *testing.T, statusHandler *testsCommon.StatusHandlerMock, status bridgeCore.ClientStatus, message string) { - assert.Equal(t, status.String(), statusHandler.GetStringMetric(bridgeCore.MetricMultiversXClientStatus)) - assert.Equal(t, message, statusHandler.GetStringMetric(bridgeCore.MetricLastMultiversXClientError)) + assert.Equal(t, status.String(), statusHandler.GetStringMetric(bridgeCore.MetricKCClientStatus)) + assert.Equal(t, message, statusHandler.GetStringMetric(bridgeCore.MetricLastKCClientError)) } diff --git a/clients/ethereum/wrappers/ethereumChainWrapper_test.go b/clients/ethereum/wrappers/ethereumChainWrapper_test.go index eec8c676..6a18f0f5 100644 --- a/clients/ethereum/wrappers/ethereumChainWrapper_test.go +++ b/clients/ethereum/wrappers/ethereumChainWrapper_test.go @@ -277,7 +277,7 @@ func TestEthClientWrapper_GetStatusesAfterExecution(t *testing.T) { args, statusHandler := createMockArgsEthereumChainWrapper() handlerCalled := false args.MultiSigContract = &bridgeTests.MultiSigContractStub{ - GetStatusesAfterExecutionCalled: func(opts *bind.CallOpts, batchNonceMultiversXETH *big.Int) ([]uint8, bool, error) { + GetStatusesAfterExecutionCalled: func(opts *bind.CallOpts, batchNonceKCETH *big.Int) ([]uint8, bool, error) { handlerCalled = true return nil, true, nil }, diff --git a/clients/klever/client.go b/clients/klever/client.go index 2c379ead..ce8d97f2 100644 --- a/clients/klever/client.go +++ b/clients/klever/client.go @@ -310,7 +310,7 @@ func (c *client) createCommonTxDataBuilder(funcName string, id int64) builders.T return builders.NewTxDataBuilder().Function(funcName).ArgInt64(id) } -// ProposeSetStatus will trigger the proposal of the ESDT safe set current transaction batch status operation +// ProposeSetStatus will trigger the proposal of the KDA safe set current transaction batch status operation func (c *client) ProposeSetStatus(ctx context.Context, batch *bridgeCore.TransferBatch) (string, error) { if batch == nil { return "", clients.ErrNilBatch @@ -477,23 +477,23 @@ func (c *client) CheckRequiredBalance(ctx context.Context, token []byte, value * } safeAddress := c.safeContractAddress.Bech32() - esdt, err := c.proxy.GetKDATokenData(ctx, c.safeContractAddress, string(token)) + kda, err := c.proxy.GetKDATokenData(ctx, c.safeContractAddress, string(token)) if err != nil { - return fmt.Errorf("%w for address %s for ESDT token %s", err, safeAddress, string(token)) + return fmt.Errorf("%w for address %s for KDA token %s", err, safeAddress, string(token)) } - existingBalance, ok := big.NewInt(0).SetString(esdt.Balance, 10) + existingBalance, ok := big.NewInt(0).SetString(kda.Balance, 10) if !ok { - return fmt.Errorf("%w for ESDT token %s and address %s", errInvalidBalance, string(token), safeAddress) + return fmt.Errorf("%w for KDA token %s and address %s", errInvalidBalance, string(token), safeAddress) } if value.Cmp(existingBalance) > 0 { return fmt.Errorf("%w, existing: %s, required: %s for ERC20 token %s and address %s", - errInsufficientESDTBalance, existingBalance.String(), value.String(), string(token), safeAddress) + errInsufficientKDABalance, existingBalance.String(), value.String(), string(token), safeAddress) } c.log.Debug("checked ERC20 balance", - "ESDT token", string(token), + "KDA token", string(token), "address", safeAddress, "existing balance", existingBalance.String(), "needed", value.String()) @@ -538,8 +538,8 @@ func (c *client) incrementRetriesAvailabilityCheck() { } func (c *client) setStatusForAvailabilityCheck(status bridgeCore.ClientStatus, message string, nonce uint64) { - c.statusHandler.SetStringMetric(bridgeCore.MetricMultiversXClientStatus, status.String()) - c.statusHandler.SetStringMetric(bridgeCore.MetricLastMultiversXClientError, message) + c.statusHandler.SetStringMetric(bridgeCore.MetricKCClientStatus, status.String()) + c.statusHandler.SetStringMetric(bridgeCore.MetricLastKCClientError, message) c.statusHandler.SetIntMetric(bridgeCore.MetricLastBlockNonce, int(nonce)) } diff --git a/clients/klever/client_test.go b/clients/klever/client_test.go index ea74fecf..debd0733 100644 --- a/clients/klever/client_test.go +++ b/clients/klever/client_test.go @@ -1044,8 +1044,8 @@ func TestClient_CheckClientAvailability(t *testing.T) { incrementor = 0 // place a random message as to test it is reset - statusHandler.SetStringMetric(bridgeCore.MetricMultiversXClientStatus, bridgeCore.ClientStatus(3).String()) - statusHandler.SetStringMetric(bridgeCore.MetricLastMultiversXClientError, "random") + statusHandler.SetStringMetric(bridgeCore.MetricKCClientStatus, bridgeCore.ClientStatus(3).String()) + statusHandler.SetStringMetric(bridgeCore.MetricLastKCClientError, "random") // this will just increment the retry counter for i := 0; i < int(args.ClientAvailabilityAllowDelta); i++ { @@ -1108,12 +1108,12 @@ func resetClient(c *client) { c.mut.Lock() c.retriesAvailabilityCheck = 0 c.mut.Unlock() - c.statusHandler.SetStringMetric(bridgeCore.MetricMultiversXClientStatus, "") - c.statusHandler.SetStringMetric(bridgeCore.MetricLastMultiversXClientError, "") + c.statusHandler.SetStringMetric(bridgeCore.MetricKCClientStatus, "") + c.statusHandler.SetStringMetric(bridgeCore.MetricLastKCClientError, "") c.statusHandler.SetIntMetric(bridgeCore.MetricLastBlockNonce, 0) } func checkStatusHandler(t *testing.T, statusHandler *testsCommon.StatusHandlerMock, status bridgeCore.ClientStatus, message string) { - assert.Equal(t, status.String(), statusHandler.GetStringMetric(bridgeCore.MetricMultiversXClientStatus)) - assert.Equal(t, message, statusHandler.GetStringMetric(bridgeCore.MetricLastMultiversXClientError)) + assert.Equal(t, status.String(), statusHandler.GetStringMetric(bridgeCore.MetricKCClientStatus)) + assert.Equal(t, message, statusHandler.GetStringMetric(bridgeCore.MetricLastKCClientError)) } diff --git a/clients/klever/errors.go b/clients/klever/errors.go index 897a57f7..d3ddce20 100644 --- a/clients/klever/errors.go +++ b/clients/klever/errors.go @@ -17,5 +17,5 @@ var ( errRelayerNotWhitelisted = errors.New("relayer not whitelisted") errNilNodeStatusResponse = errors.New("nil node status response") errInvalidBalance = errors.New("invalid balance") - errInsufficientESDTBalance = errors.New("insufficient ESDT balance") + errInsufficientKDABalance = errors.New("insufficient KDA balance") ) diff --git a/clients/klever/klvClientDataGetter.go b/clients/klever/klvClientDataGetter.go index 674b1bab..78f4bb25 100644 --- a/clients/klever/klvClientDataGetter.go +++ b/clients/klever/klvClientDataGetter.go @@ -429,7 +429,7 @@ func (dataGetter *klvClientDataGetter) WasSigned(ctx context.Context, actionID u return dataGetter.executeQueryBoolFromBuilder(ctx, builder) } -// GetAllStakedRelayers returns all staked relayers defined in MultiversX SC +// GetAllStakedRelayers returns all staked relayers defined in Klever Blockchain SC func (dataGetter *klvClientDataGetter) GetAllStakedRelayers(ctx context.Context) ([][]byte, error) { builder := dataGetter.createMultisigDefaultVmQueryBuilder() builder.Function(getAllStakedRelayersFuncName) @@ -508,8 +508,8 @@ func (dataGetter *klvClientDataGetter) GetAllKnownTokens(ctx context.Context) ([ return dataGetter.executeQueryFromBuilder(ctx, builder) } -// GetLastMvxBatchID returns the highest batch ID the safe contract reached. This might be a WIP batch that is not executable yet -func (dataGetter *klvClientDataGetter) GetLastMvxBatchID(ctx context.Context) (uint64, error) { +// GetLastKCBatchID returns the highest batch ID the safe contract reached. This might be a WIP batch that is not executable yet +func (dataGetter *klvClientDataGetter) GetLastKCBatchID(ctx context.Context) (uint64, error) { builder := dataGetter.createSafeDefaultVmQueryBuilder() builder.Function(getLastBatchId) diff --git a/clients/klever/klvClientDataGetter_test.go b/clients/klever/klvClientDataGetter_test.go index f238c3f9..6207f5c9 100644 --- a/clients/klever/klvClientDataGetter_test.go +++ b/clients/klever/klvClientDataGetter_test.go @@ -164,7 +164,7 @@ func TestNewKLVClientDataGetter(t *testing.T) { }) } -func TestMXClientDataGetter_ExecuteQueryReturningBytes(t *testing.T) { +func TestKlvClientDataGetter_ExecuteQueryReturningBytes(t *testing.T) { t.Parallel() args := createMockArgsKLVClientDataGetter() @@ -262,7 +262,7 @@ func TestMXClientDataGetter_ExecuteQueryReturningBytes(t *testing.T) { }) } -func TestMXClientDataGetter_ExecuteQueryReturningBool(t *testing.T) { +func TestKlvClientDataGetter_ExecuteQueryReturningBool(t *testing.T) { t.Parallel() args := createMockArgsKLVClientDataGetter() @@ -330,7 +330,7 @@ func TestMXClientDataGetter_ExecuteQueryReturningBool(t *testing.T) { }) } -func TestMXClientDataGetter_ExecuteQueryReturningUint64(t *testing.T) { +func TestKlvClientDataGetter_ExecuteQueryReturningUint64(t *testing.T) { t.Parallel() args := createMockArgsKLVClientDataGetter() @@ -398,7 +398,7 @@ func TestMXClientDataGetter_ExecuteQueryReturningUint64(t *testing.T) { }) } -func TestMXClientDataGetter_ExecuteQueryReturningBigInt(t *testing.T) { +func TestKlvClientDataGetter_ExecuteQueryReturningBigInt(t *testing.T) { t.Parallel() args := createMockArgsKLVClientDataGetter() @@ -452,7 +452,7 @@ func TestMXClientDataGetter_ExecuteQueryReturningBigInt(t *testing.T) { }) } -func TestMXClientDataGetter_GetCurrentBatchAsDataBytes(t *testing.T) { +func TestKlvClientDataGetter_GetCurrentBatchAsDataBytes(t *testing.T) { t.Parallel() args := createMockArgsKLVClientDataGetter() @@ -502,13 +502,13 @@ func TestExecuteQueryFromBuilderReturnErr(t *testing.T) { assert.Equal(t, expectedError, err) } -func TestMXClientDataGetter_GetTokenIdForErc20Address(t *testing.T) { +func TestKlvClientDataGetter_GetTokenIdForErc20Address(t *testing.T) { t.Parallel() args := createMockArgsKLVClientDataGetter() - erdAddress := "erdAddress" + klvAddress := "klvAddress" erc20Address := "erc20Address" - returningBytes := [][]byte{[]byte(erdAddress)} + returningBytes := [][]byte{[]byte(klvAddress)} args.Proxy = &interactors.ProxyStub{ ExecuteVMQueryCalled: func(ctx context.Context, vmRequest *models.VmValueRequest) (*models.VmValuesResponseData, error) { assert.Equal(t, getBech32Address(args.MultisigContractAddress), vmRequest.Address) @@ -533,11 +533,11 @@ func TestMXClientDataGetter_GetTokenIdForErc20Address(t *testing.T) { assert.Equal(t, returningBytes, result) } -func TestMXClientDataGetter_GetERC20AddressForTokenId(t *testing.T) { +func TestKlvClientDataGetter_GetERC20AddressForTokenId(t *testing.T) { t.Parallel() args := createMockArgsKLVClientDataGetter() - erdAddress := "erdAddress" + klvAddress := "klvAddress" erc20Address := "erc20Address" returningBytes := [][]byte{[]byte(erc20Address)} args.Proxy = &interactors.ProxyStub{ @@ -545,7 +545,7 @@ func TestMXClientDataGetter_GetERC20AddressForTokenId(t *testing.T) { assert.Equal(t, getBech32Address(args.MultisigContractAddress), vmRequest.Address) assert.Equal(t, getBech32Address(args.RelayerAddress), vmRequest.CallerAddr) assert.Equal(t, 0, len(vmRequest.CallValue)) - assert.Equal(t, []string{hex.EncodeToString([]byte(erdAddress))}, vmRequest.Args) + assert.Equal(t, []string{hex.EncodeToString([]byte(klvAddress))}, vmRequest.Args) assert.Equal(t, getErc20AddressForTokenIdFuncName, vmRequest.FuncName) return &models.VmValuesResponseData{ @@ -558,13 +558,13 @@ func TestMXClientDataGetter_GetERC20AddressForTokenId(t *testing.T) { } dg, _ := NewKLVClientDataGetter(args) - result, err := dg.GetERC20AddressForTokenId(context.Background(), []byte(erdAddress)) + result, err := dg.GetERC20AddressForTokenId(context.Background(), []byte(klvAddress)) assert.Nil(t, err) assert.Equal(t, returningBytes, result) } -func TestMXClientDataGetter_WasProposedTransfer(t *testing.T) { +func TestKlvClientDataGetter_WasProposedTransfer(t *testing.T) { t.Parallel() t.Run("nil batch", func(t *testing.T) { @@ -682,7 +682,7 @@ func TestMXClientDataGetter_WasProposedTransfer(t *testing.T) { }) } -func TestMXClientDataGetter_WasExecuted(t *testing.T) { +func TestKlvClientDataGetter_WasExecuted(t *testing.T) { t.Parallel() args := createMockArgsKLVClientDataGetter() @@ -715,7 +715,7 @@ func TestMXClientDataGetter_WasExecuted(t *testing.T) { assert.True(t, result) } -func TestMXClientDataGetter_executeQueryWithErroredBuilder(t *testing.T) { +func TestKlvClientDataGetter_executeQueryWithErroredBuilder(t *testing.T) { t.Parallel() builder := builders.NewVMQueryBuilder().ArgBytes(nil) @@ -739,7 +739,7 @@ func TestMXClientDataGetter_executeQueryWithErroredBuilder(t *testing.T) { assert.True(t, strings.Contains(err.Error(), "builder.ArgBytes")) } -func TestMXClientDataGetter_GetActionIDForProposeTransfer(t *testing.T) { +func TestKlvClientDataGetter_GetActionIDForProposeTransfer(t *testing.T) { t.Parallel() t.Run("nil batch", func(t *testing.T) { @@ -855,7 +855,7 @@ func TestMXClientDataGetter_GetActionIDForProposeTransfer(t *testing.T) { }) } -func TestMXClientDataGetter_WasProposedSetStatus(t *testing.T) { +func TestKlvClientDataGetter_WasProposedSetStatus(t *testing.T) { t.Parallel() t.Run("nil batch", func(t *testing.T) { @@ -909,7 +909,7 @@ func TestMXClientDataGetter_WasProposedSetStatus(t *testing.T) { }) } -func TestMXClientDataGetter_GetTransactionsStatuses(t *testing.T) { +func TestKlvClientDataGetter_GetTransactionsStatuses(t *testing.T) { t.Parallel() batchID := uint64(112233) @@ -1033,7 +1033,7 @@ func TestMXClientDataGetter_GetTransactionsStatuses(t *testing.T) { } -func TestMXClientDataGetter_GetActionIDForSetStatusOnPendingTransfer(t *testing.T) { +func TestKlvClientDataGetter_GetActionIDForSetStatusOnPendingTransfer(t *testing.T) { t.Parallel() t.Run("nil batch", func(t *testing.T) { @@ -1087,7 +1087,7 @@ func TestMXClientDataGetter_GetActionIDForSetStatusOnPendingTransfer(t *testing. }) } -func TestMXClientDataGetter_QuorumReached(t *testing.T) { +func TestKlvClientDataGetter_QuorumReached(t *testing.T) { t.Parallel() args := createMockArgsKLVClientDataGetter() @@ -1121,7 +1121,7 @@ func TestMXClientDataGetter_QuorumReached(t *testing.T) { assert.True(t, result) } -func TestMXClientDataGetter_GetLastExecutedEthBatchID(t *testing.T) { +func TestKlvClientDataGetter_GetLastExecutedEthBatchID(t *testing.T) { t.Parallel() args := createMockArgsKLVClientDataGetter() @@ -1153,7 +1153,7 @@ func TestMXClientDataGetter_GetLastExecutedEthBatchID(t *testing.T) { assert.Equal(t, val.Uint64(), result) } -func TestMXClientDataGetter_GetLastExecutedEthTxID(t *testing.T) { +func TestKlvClientDataGetter_GetLastExecutedEthTxID(t *testing.T) { t.Parallel() args := createMockArgsKLVClientDataGetter() @@ -1185,7 +1185,7 @@ func TestMXClientDataGetter_GetLastExecutedEthTxID(t *testing.T) { assert.Equal(t, val.Uint64(), result) } -func TestMXClientDataGetter_WasSigned(t *testing.T) { +func TestKlvClientDataGetter_WasSigned(t *testing.T) { t.Parallel() args := createMockArgsKLVClientDataGetter() @@ -1222,7 +1222,7 @@ func TestMXClientDataGetter_WasSigned(t *testing.T) { assert.True(t, result) } -func TestMXClientDataGetter_GetAllStakedRelayers(t *testing.T) { +func TestKlvClientDataGetter_GetAllStakedRelayers(t *testing.T) { t.Parallel() args := createMockArgsKLVClientDataGetter() @@ -1252,7 +1252,7 @@ func TestMXClientDataGetter_GetAllStakedRelayers(t *testing.T) { assert.Equal(t, providedRelayers, result) } -func TestMXClientDataGetter_GetAllKnownTokens(t *testing.T) { +func TestKlvClientDataGetter_GetAllKnownTokens(t *testing.T) { t.Parallel() args := createMockArgsKLVClientDataGetter() @@ -1281,7 +1281,7 @@ func TestMXClientDataGetter_GetAllKnownTokens(t *testing.T) { assert.Equal(t, providedTokens, result) } -func TestMultiversXClientDataGetter_GetShardCurrentNonce(t *testing.T) { +func TestKCClientDataGetter_GetShardCurrentNonce(t *testing.T) { t.Parallel() expectedErr := errors.New("expected error") @@ -1344,7 +1344,7 @@ func TestMultiversXClientDataGetter_GetShardCurrentNonce(t *testing.T) { }) } -func TestMultiversXClientDataGetter_IsPaused(t *testing.T) { +func TestKCClientDataGetter_IsPaused(t *testing.T) { t.Parallel() args := createMockArgsKLVClientDataGetter() @@ -1377,7 +1377,7 @@ func TestMultiversXClientDataGetter_IsPaused(t *testing.T) { assert.True(t, proxyCalled) } -func TestMultiversXClientDataGetter_isMintBurnToken(t *testing.T) { +func TestKCClientDataGetter_isMintBurnToken(t *testing.T) { t.Parallel() args := createMockArgsKLVClientDataGetter() @@ -1410,7 +1410,7 @@ func TestMultiversXClientDataGetter_isMintBurnToken(t *testing.T) { assert.True(t, proxyCalled) } -func TestMultiversXClientDataGetter_isNativeToken(t *testing.T) { +func TestKCClientDataGetter_isNativeToken(t *testing.T) { t.Parallel() args := createMockArgsKLVClientDataGetter() @@ -1443,7 +1443,7 @@ func TestMultiversXClientDataGetter_isNativeToken(t *testing.T) { assert.True(t, proxyCalled) } -func TestMultiversXClientDataGetter_getTotalBalances(t *testing.T) { +func TestKCClientDataGetter_getTotalBalances(t *testing.T) { t.Parallel() args := createMockArgsKLVClientDataGetter() @@ -1475,7 +1475,7 @@ func TestMultiversXClientDataGetter_getTotalBalances(t *testing.T) { assert.True(t, proxyCalled) } -func TestMultiversXClientDataGetter_getMintBalances(t *testing.T) { +func TestKCClientDataGetter_getMintBalances(t *testing.T) { t.Parallel() args := createMockArgsKLVClientDataGetter() @@ -1507,7 +1507,7 @@ func TestMultiversXClientDataGetter_getMintBalances(t *testing.T) { assert.True(t, proxyCalled) } -func TestMultiversXClientDataGetter_getBurnBalances(t *testing.T) { +func TestKCClientDataGetter_getBurnBalances(t *testing.T) { t.Parallel() args := createMockArgsKLVClientDataGetter() @@ -1539,7 +1539,7 @@ func TestMultiversXClientDataGetter_getBurnBalances(t *testing.T) { assert.True(t, proxyCalled) } -func TestMultiversXClientDataGetter_GetLastMvxBatchID(t *testing.T) { +func TestKCClientDataGetter_GetLastKCBatchID(t *testing.T) { t.Parallel() args := createMockArgsKLVClientDataGetter() @@ -1566,7 +1566,7 @@ func TestMultiversXClientDataGetter_GetLastMvxBatchID(t *testing.T) { dg, _ := NewKLVClientDataGetter(args) - result, err := dg.GetLastMvxBatchID(context.Background()) + result, err := dg.GetLastKCBatchID(context.Background()) assert.Nil(t, err) assert.Equal(t, uint64(3737), result) assert.True(t, proxyCalled) diff --git a/clients/klever/mappers/erc20ToMultiversX.go b/clients/klever/mappers/erc20ToKc.go similarity index 59% rename from clients/klever/mappers/erc20ToMultiversX.go rename to clients/klever/mappers/erc20ToKc.go index 800034ca..10dfbb91 100644 --- a/clients/klever/mappers/erc20ToMultiversX.go +++ b/clients/klever/mappers/erc20ToKc.go @@ -9,23 +9,23 @@ import ( "github.com/multiversx/mx-chain-core-go/core/check" ) -type erc20ToMultiversX struct { +type erc20ToKC struct { dg DataGetter } -// NewErc20ToMultiversXMapper returns a new instance of erc20ToMultiversX -func NewErc20ToMultiversXMapper(dg DataGetter) (*erc20ToMultiversX, error) { +// NewErc20ToKCMapper returns a new instance of erc20ToKC +func NewErc20ToKCMapper(dg DataGetter) (*erc20ToKC, error) { if check.IfNil(dg) { return nil, clients.ErrNilDataGetter } - return &erc20ToMultiversX{ + return &erc20ToKC{ dg: dg, }, nil } -// ConvertToken will return erd token id given a specific erc20 address -func (mapper *erc20ToMultiversX) ConvertToken(ctx context.Context, sourceBytes []byte) ([]byte, error) { +// ConvertToken will return klv token id given a specific erc20 address +func (mapper *erc20ToKC) ConvertToken(ctx context.Context, sourceBytes []byte) ([]byte, error) { response, err := mapper.dg.GetTokenIdForErc20Address(ctx, sourceBytes) if err != nil { @@ -40,6 +40,6 @@ func (mapper *erc20ToMultiversX) ConvertToken(ctx context.Context, sourceBytes [ } // IsInterfaceNil returns true if there is no value under the interface -func (mapper *erc20ToMultiversX) IsInterfaceNil() bool { +func (mapper *erc20ToKC) IsInterfaceNil() bool { return mapper == nil } diff --git a/clients/klever/mappers/interface.go b/clients/klever/mappers/interface.go index d505e7ee..75fc4a5d 100644 --- a/clients/klever/mappers/interface.go +++ b/clients/klever/mappers/interface.go @@ -2,7 +2,7 @@ package mappers import "context" -// DataGetter defines the interface able to handle get requests for MultiversX blockchain +// DataGetter defines the interface able to handle get requests for Klever Blockchain blockchain type DataGetter interface { GetTokenIdForErc20Address(ctx context.Context, erc20Address []byte) ([][]byte, error) GetERC20AddressForTokenId(ctx context.Context, tokenId []byte) ([][]byte, error) diff --git a/clients/klever/mappers/multiversXToErc20.go b/clients/klever/mappers/kcToErc20.go similarity index 59% rename from clients/klever/mappers/multiversXToErc20.go rename to clients/klever/mappers/kcToErc20.go index 9a685f46..82a7c03f 100644 --- a/clients/klever/mappers/multiversXToErc20.go +++ b/clients/klever/mappers/kcToErc20.go @@ -9,23 +9,23 @@ import ( "github.com/multiversx/mx-chain-core-go/core/check" ) -type multiversXToErc20 struct { +type kcToErc20 struct { dg DataGetter } -// NewMultiversXToErc20Mapper returns a new instance of multiversXToErc20 -func NewMultiversXToErc20Mapper(dg DataGetter) (*multiversXToErc20, error) { +// NewKCToErc20Mapper returns a new instance of kcToErc20 +func NewKCToErc20Mapper(dg DataGetter) (*kcToErc20, error) { if check.IfNil(dg) { return nil, clients.ErrNilDataGetter } - return &multiversXToErc20{ + return &kcToErc20{ dg: dg, }, nil } -// ConvertToken will return erd token id given a specific erc20 address -func (mapper *multiversXToErc20) ConvertToken(ctx context.Context, sourceBytes []byte) ([]byte, error) { +// ConvertToken will return klv token id given a specific erc20 address +func (mapper *kcToErc20) ConvertToken(ctx context.Context, sourceBytes []byte) ([]byte, error) { response, err := mapper.dg.GetERC20AddressForTokenId(ctx, sourceBytes) if err != nil { @@ -40,6 +40,6 @@ func (mapper *multiversXToErc20) ConvertToken(ctx context.Context, sourceBytes [ } // IsInterfaceNil returns true if there is no value under the interface -func (mapper *multiversXToErc20) IsInterfaceNil() bool { +func (mapper *kcToErc20) IsInterfaceNil() bool { return mapper == nil } diff --git a/clients/klever/mappers/mappers_test.go b/clients/klever/mappers/mappers_test.go index e3315be2..ff1845b9 100644 --- a/clients/klever/mappers/mappers_test.go +++ b/clients/klever/mappers/mappers_test.go @@ -14,25 +14,25 @@ import ( func TestNewMapper(t *testing.T) { t.Parallel() { - t.Run("Erc20ToMultiversX: nil dataGetter", func(t *testing.T) { - mapper, err := NewErc20ToMultiversXMapper(nil) + t.Run("Erc20ToKC: nil dataGetter", func(t *testing.T) { + mapper, err := NewErc20ToKCMapper(nil) assert.Equal(t, clients.ErrNilDataGetter, err) assert.True(t, check.IfNil(mapper)) }) - t.Run("Erc20ToMultiversX: should work", func(t *testing.T) { - mapper, err := NewErc20ToMultiversXMapper(&bridgeTests.DataGetterStub{}) + t.Run("Erc20ToKC: should work", func(t *testing.T) { + mapper, err := NewErc20ToKCMapper(&bridgeTests.DataGetterStub{}) assert.Nil(t, err) assert.False(t, check.IfNil(mapper)) }) } { - t.Run("MultiversXToErc20: nil dataGetter", func(t *testing.T) { - mapper, err := NewMultiversXToErc20Mapper(nil) + t.Run("KCToErc20: nil dataGetter", func(t *testing.T) { + mapper, err := NewKCToErc20Mapper(nil) assert.Equal(t, clients.ErrNilDataGetter, err) assert.True(t, check.IfNil(mapper)) }) - t.Run("MultiversXToErc20: should work", func(t *testing.T) { - mapper, err := NewMultiversXToErc20Mapper(&bridgeTests.DataGetterStub{}) + t.Run("KCToErc20: should work", func(t *testing.T) { + mapper, err := NewKCToErc20Mapper(&bridgeTests.DataGetterStub{}) assert.Nil(t, err) assert.False(t, check.IfNil(mapper)) }) @@ -43,59 +43,59 @@ func TestConvertToken(t *testing.T) { t.Parallel() { - t.Run("MultiversXToErc20: dataGetter returns error", func(t *testing.T) { + t.Run("KCToErc20: dataGetter returns error", func(t *testing.T) { expectedError := errors.New("expected error") dg := &bridgeTests.DataGetterStub{ GetERC20AddressForTokenIdCalled: func(ctx context.Context, tokenId []byte) ([][]byte, error) { return nil, expectedError }} - mapper, err := NewMultiversXToErc20Mapper(dg) + mapper, err := NewKCToErc20Mapper(dg) assert.Nil(t, err) assert.False(t, check.IfNil(mapper)) - _, err = mapper.ConvertToken(context.Background(), []byte("erdAddress")) + _, err = mapper.ConvertToken(context.Background(), []byte("klvAddress")) assert.Equal(t, expectedError, err) }) - t.Run("MultiversXToErc20: should work", func(t *testing.T) { + t.Run("KCToErc20: should work", func(t *testing.T) { expectedErc20Address := []byte("erc20Address") dg := &bridgeTests.DataGetterStub{ GetERC20AddressForTokenIdCalled: func(ctx context.Context, tokenId []byte) ([][]byte, error) { return [][]byte{expectedErc20Address}, nil }} - mapper, err := NewMultiversXToErc20Mapper(dg) + mapper, err := NewKCToErc20Mapper(dg) assert.Nil(t, err) assert.False(t, check.IfNil(mapper)) - erc20AddressReturned, err := mapper.ConvertToken(context.Background(), []byte("erdAddress")) + erc20AddressReturned, err := mapper.ConvertToken(context.Background(), []byte("klvAddress")) assert.Nil(t, err) assert.Equal(t, expectedErc20Address, erc20AddressReturned) }) } { - t.Run("Erc20ToMultiversX: dataGetter returns error", func(t *testing.T) { + t.Run("Erc20ToKC: dataGetter returns error", func(t *testing.T) { expectedError := errors.New("expected error") dg := &bridgeTests.DataGetterStub{ GetTokenIdForErc20AddressCalled: func(ctx context.Context, erc20Address []byte) ([][]byte, error) { return nil, expectedError }} - mapper, err := NewErc20ToMultiversXMapper(dg) + mapper, err := NewErc20ToKCMapper(dg) assert.Nil(t, err) assert.False(t, check.IfNil(mapper)) _, err = mapper.ConvertToken(context.Background(), []byte("erc20Address")) assert.Equal(t, expectedError, err) }) - t.Run("Erc20ToMultiversX: should work", func(t *testing.T) { - expectedErdAddress := []byte("erdAddress") + t.Run("Erc20ToKC: should work", func(t *testing.T) { + expectedKlvAddress := []byte("klvAddress") dg := &bridgeTests.DataGetterStub{ GetTokenIdForErc20AddressCalled: func(ctx context.Context, erc20Address []byte) ([][]byte, error) { - return [][]byte{expectedErdAddress}, nil + return [][]byte{expectedKlvAddress}, nil }} - mapper, err := NewErc20ToMultiversXMapper(dg) + mapper, err := NewErc20ToKCMapper(dg) assert.Nil(t, err) assert.False(t, check.IfNil(mapper)) - erdAddressReturned, err := mapper.ConvertToken(context.Background(), []byte("erc20Address")) + klvAddressReturned, err := mapper.ConvertToken(context.Background(), []byte("erc20Address")) assert.Nil(t, err) - assert.Equal(t, expectedErdAddress, erdAddressReturned) + assert.Equal(t, expectedKlvAddress, klvAddressReturned) }) } } diff --git a/clients/klever/proxy/baseProxy.go b/clients/klever/proxy/baseProxy.go index 1e761166..ea43ef0f 100644 --- a/clients/klever/proxy/baseProxy.go +++ b/clients/klever/proxy/baseProxy.go @@ -15,7 +15,7 @@ import ( logger "github.com/multiversx/mx-chain-logger-go" ) -var log = logger.GetOrCreate("mx-sdk-go/blockchain") +var log = logger.GetOrCreate("klever-go-sdk/blockchain") const ( minimumCachingInterval = time.Second @@ -37,7 +37,7 @@ type baseProxy struct { endpointProvider factory.EndpointProvider } -// newBaseProxy will create a base multiversx proxy with cache instance +// newBaseProxy will create a base kc proxy with cache instance func newBaseProxy(args argsBaseProxy) (*baseProxy, error) { err := checkArgsBaseProxy(args) if err != nil { diff --git a/clients/klever/proxy/endpointProviders/nodeEndpointProvider.go b/clients/klever/proxy/endpointProviders/nodeEndpointProvider.go index c2005817..f372ba9a 100644 --- a/clients/klever/proxy/endpointProviders/nodeEndpointProvider.go +++ b/clients/klever/proxy/endpointProviders/nodeEndpointProvider.go @@ -8,7 +8,7 @@ const ( nodeVmQuery = "vm/query" ) -// nodeEndpointProvider is suitable to work with a MultiversX node (observer) +// nodeEndpointProvider is suitable to work with a Klever Blockchain node (observer) type nodeEndpointProvider struct { *baseEndpointProvider } diff --git a/clients/klever/proxy/endpointProviders/proxyEndpointProvider.go b/clients/klever/proxy/endpointProviders/proxyEndpointProvider.go index 8719b4ff..52acf347 100644 --- a/clients/klever/proxy/endpointProviders/proxyEndpointProvider.go +++ b/clients/klever/proxy/endpointProviders/proxyEndpointProvider.go @@ -8,7 +8,7 @@ const ( proxyVmQuery = "sc/query" ) -// proxyEndpointProvider is suitable to work with a MultiversX Proxy +// proxyEndpointProvider is suitable to work with a Klever Blockchain Proxy type proxyEndpointProvider struct { *baseEndpointProvider } diff --git a/clients/klever/proxy/interface.go b/clients/klever/proxy/interface.go index ab141448..88acc663 100644 --- a/clients/klever/proxy/interface.go +++ b/clients/klever/proxy/interface.go @@ -8,7 +8,7 @@ import ( "github.com/klever-io/klv-bridge-eth-go/clients/klever/proxy/models" ) -// Proxy defines the behavior of a proxy able to serve MultiversX blockchain requests +// Proxy defines the behavior of a proxy able to serve Klever Blockchain blockchain requests type Proxy interface { GetNetworkConfig(ctx context.Context) (*models.NetworkConfig, error) SendTransaction(ctx context.Context, tx *transaction.Transaction) (string, error) diff --git a/clients/klever/proxy/proxy.go b/clients/klever/proxy/proxy.go index 5349929c..a630f4cf 100644 --- a/clients/klever/proxy/proxy.go +++ b/clients/klever/proxy/proxy.go @@ -29,7 +29,7 @@ var ( MaximumBlocksDelta uint64 = 500 ) -// ArgsProxy is the DTO used in the multiversx proxy constructor +// ArgsProxy is the DTO used in the kc proxy constructor type ArgsProxy struct { ProxyURL string Client sdkHttp.Client @@ -42,7 +42,7 @@ type ArgsProxy struct { FilterQueryBlockCacher BlockDataCache } -// proxy implements basic functions for interacting with a multiversx Proxy +// proxy implements basic functions for interacting with a kc Proxy type proxy struct { *baseProxy sameScState bool diff --git a/clients/klever/proxy/proxy_test.go b/clients/klever/proxy/proxy_test.go index 010686d1..a62ae55e 100644 --- a/clients/klever/proxy/proxy_test.go +++ b/clients/klever/proxy/proxy_test.go @@ -456,8 +456,8 @@ func TestSendTransactions_FailCases(t *testing.T) { func TestProxy_ExecuteVmQuery(t *testing.T) { t.Parallel() - validResponseBytes := []byte(`{"data":{"data":{"returnData":["MC41LjU="],"returnCode":"ok","returnMessage":"","gasRemaining":18446744073685949187,"gasRefund":0,"outputAccounts":{"0000000000000000050033bb65a91ee17ab84c6f8a01846ef8644e15fb76696a":{"address":"erd1qqqqqqqqqqqqqpgqxwakt2g7u9atsnr03gqcgmhcv38pt7mkd94q6shuwt","nonce":0,"balance":null,"balanceDelta":0,"storageUpdates":{},"code":null,"codeMetaData":null,"outputTransfers":[],"callType":0}},"deletedAccounts":[],"touchedAccounts":[],"logs":[]}}}`) - validProxyBytes := []byte(`{"data":{"returnData":["MC41LjU="],"returnCode":"ok","returnMessage":"","gasRemaining":18446744073685949187,"gasRefund":0,"outputAccounts":{"0000000000000000050033bb65a91ee17ab84c6f8a01846ef8644e15fb76696a":{"address":"erd1qqqqqqqqqqqqqpgqxwakt2g7u9atsnr03gqcgmhcv38pt7mkd94q6shuwt","nonce":0,"balance":null,"balanceDelta":0,"storageUpdates":{},"code":null,"codeMetaData":null,"outputTransfers":[],"callType":0}},"deletedAccounts":[],"touchedAccounts":[],"logs":[]}}`) + validResponseBytes := []byte(`{"data":{"data":{"returnData":["MC41LjU="],"returnCode":"ok","returnMessage":"","gasRemaining":18446744073685949187,"gasRefund":0,"outputAccounts":{"0000000000000000050033bb65a91ee17ab84c6f8a01846ef8644e15fb76696a":{"address":"klv1qqqqqqqqqqqqqpgqu2jcktadaq8mmytwglc704yfv7rezv5usg8sgzuah3","nonce":0,"balance":null,"balanceDelta":0,"storageUpdates":{},"code":null,"codeMetaData":null,"outputTransfers":[],"callType":0}},"deletedAccounts":[],"touchedAccounts":[],"logs":[]}}}`) + validProxyBytes := []byte(`{"data":{"returnData":["MC41LjU="],"returnCode":"ok","returnMessage":"","gasRemaining":18446744073685949187,"gasRefund":0,"outputAccounts":{"0000000000000000050033bb65a91ee17ab84c6f8a01846ef8644e15fb76696a":{"address":"klv1qqqqqqqqqqqqqpgqu2jcktadaq8mmytwglc704yfv7rezv5usg8sgzuah3","nonce":0,"balance":null,"balanceDelta":0,"storageUpdates":{},"code":null,"codeMetaData":null,"outputTransfers":[],"callType":0}},"deletedAccounts":[],"touchedAccounts":[],"logs":[]}}`) tests := []struct { name string entityType models.RestAPIEntityType diff --git a/cmd/bridge/config/config.toml b/cmd/bridge/config/config.toml index f879b77e..efec2eab 100644 --- a/cmd/bridge/config/config.toml +++ b/cmd/bridge/config/config.toml @@ -23,9 +23,9 @@ [Klever] NetworkAddress = "http://localhost:8080" # the network address - MultisigContractAddress = "klv1qqqqqqqqqqqqqpgqh46r9zh78lry2py8tq723fpjdr4pp0zgsg8syf6mq0" # the KleverChain address for the bridge contract - SafeContractAddress = "klv1qqqqqqqqqqqqqpgqxjgmvqe9kvvr4xvvxflue3a7cjjeyvx9sg8snh0ljc" # the KleverChain address for the safe contract - PrivateKeyFile = "keys/walletKey.pem" # the path to the pem file containing the relayer KleverChain wallet + MultisigContractAddress = "klv1qqqqqqqqqqqqqpgqh46r9zh78lry2py8tq723fpjdr4pp0zgsg8syf6mq0" # the Klever Blockchain address for the bridge contract + SafeContractAddress = "klv1qqqqqqqqqqqqqpgqxjgmvqe9kvvr4xvvxflue3a7cjjeyvx9sg8snh0ljc" # the Klever Blockchain address for the safe contract + PrivateKeyFile = "keys/walletKey.pem" # the path to the pem file containing the relayer Klever Blockchain wallet IntervalToResendTxsInSeconds = 60 # the time in seconds between nonce reads MaxRetriesOnQuorumReached = 3 MaxRetriesOnWasTransferProposed = 3 diff --git a/cmd/bridge/main.go b/cmd/bridge/main.go index a9bcb521..2efc9f99 100644 --- a/cmd/bridge/main.go +++ b/cmd/bridge/main.go @@ -46,7 +46,7 @@ import ( const ( filePathPlaceholder = "[path]" defaultLogsPath = "logs" - logFilePrefix = "multiversx-eth-bridge" + logFilePrefix = "kc-eth-bridge" p2pPeerNetworkDiscoverer = "optimized" nilListSharderType = "NilListSharder" disabledWatcher = "disabled" @@ -78,8 +78,8 @@ func main() { app.Version = fmt.Sprintf("%s/%s/%s-%s/%s", appVersion, runtime.Version(), runtime.GOOS, runtime.GOARCH, machineID) app.Authors = []cli.Author{ { - Name: "The MultiversX Team", - Email: "contact@multiversx.com", + Name: "The Klever Blockchain Team", + Email: "contact@klever.io", }, } @@ -255,7 +255,7 @@ func startRelay(ctx *cli.Context, version string) error { KleverClientStatusHandler: kleverClientStatusHandler, } - ethToMultiversXComponents, err := factory.NewEthKleverBridgeComponents(args) + ethToKCComponents, err := factory.NewEthKleverBridgeComponents(args) if err != nil { return err } @@ -267,7 +267,7 @@ func startRelay(ctx *cli.Context, version string) error { log.Info("Starting relay") - err = ethToMultiversXComponents.Start() + err = ethToKCComponents.Start() if err != nil { return err } @@ -280,7 +280,7 @@ func startRelay(ctx *cli.Context, version string) error { log.Info("application closing, calling Close on all subcomponents...") var lastErr error - err = ethToMultiversXComponents.Close() + err = ethToKCComponents.Close() if err != nil { lastErr = err } diff --git a/cmd/migration/config/config-mainnet-bsc.toml b/cmd/migration/config/config-mainnet-bsc.toml index 6198a0d0..d471975e 100644 --- a/cmd/migration/config/config-mainnet-bsc.toml +++ b/cmd/migration/config/config-mainnet-bsc.toml @@ -18,11 +18,11 @@ # GasPriceSelector available options: "SafeGasPrice", "ProposeGasPrice", "FastGasPrice" GasPriceSelector = "SafeGasPrice" # selector used to provide the gas price -[MultiversX] +[Klever] NetworkAddress = "" # the network address - MultisigContractAddress = "erd1qqqqqqqqqqqqqpgq6pg5e8twgk6vvnzxzmvfyrphrfs3e3c3yfkqe6kx0x" - SafeContractAddress = "erd1qqqqqqqqqqqqqpgq2tf9zm9xxv96gz50p8jq5jesudhz45dvyfkqyefrss" - [MultiversX.Proxy] + MultisigContractAddress = "" + SafeContractAddress = "" + [Klever.Proxy] CacherExpirationSeconds = 600 # the caching time in seconds # valid options for ProxyRestAPIEntityType are "observer" and "proxy". Any other value will trigger an error. diff --git a/cmd/migration/config/config-mainnet-eth.toml b/cmd/migration/config/config-mainnet-eth.toml index 968ad401..2efde837 100644 --- a/cmd/migration/config/config-mainnet-eth.toml +++ b/cmd/migration/config/config-mainnet-eth.toml @@ -18,11 +18,11 @@ # GasPriceSelector available options: "SafeGasPrice", "ProposeGasPrice", "FastGasPrice" GasPriceSelector = "SafeGasPrice" # selector used to provide the gas price -[MultiversX] +[Klever] NetworkAddress = "" # the network address - MultisigContractAddress = "erd1qqqqqqqqqqqqqpgqxexs26vrvhwh2m4he62d6y3jzmv3qkujyfkq8yh4z2" - SafeContractAddress = "erd1qqqqqqqqqqqqqpgqhxkc48lt5uv2hejj4wtjqvugfm4wgv6gyfkqw0uuxl" - [MultiversX.Proxy] + MultisigContractAddress = "" + SafeContractAddress = "" + [Klever.Proxy] CacherExpirationSeconds = 600 # the caching time in seconds # valid options for ProxyRestAPIEntityType are "observer" and "proxy". Any other value will trigger an error. diff --git a/cmd/migration/config/config.toml b/cmd/migration/config/config.toml index 9114f60c..064885a5 100644 --- a/cmd/migration/config/config.toml +++ b/cmd/migration/config/config.toml @@ -18,11 +18,11 @@ # GasPriceSelector available options: "SafeGasPrice", "ProposeGasPrice", "FastGasPrice" GasPriceSelector = "SafeGasPrice" # selector used to provide the gas price -[MultiversX] +[Klever] NetworkAddress = "" # the network address - MultisigContractAddress = "erd1qqqqqqqqqqqqqpgqxexs26vrvhwh2m4he62d6y3jzmv3qkujyfkq8yh4z2" - SafeContractAddress = "erd1qqqqqqqqqqqqqpgqhxkc48lt5uv2hejj4wtjqvugfm4wgv6gyfkqw0uuxl" - [MultiversX.Proxy] + MultisigContractAddress = "" + SafeContractAddress = "" + [Klever.Proxy] CacherExpirationSeconds = 600 # the caching time in seconds # valid options for ProxyRestAPIEntityType are "observer" and "proxy". Any other value will trigger an error. diff --git a/cmd/migration/main.go b/cmd/migration/main.go index 4afdd847..02182cbe 100644 --- a/cmd/migration/main.go +++ b/cmd/migration/main.go @@ -57,8 +57,8 @@ func main() { app.Flags = getFlags() app.Authors = []cli.Author{ { - Name: "The MultiversX Team", - Email: "contact@multiversx.com", + Name: "The Klever Blockchain Team", + Email: "contact@klever.io", }, } @@ -154,14 +154,14 @@ func createInternalComponentsWithBatchCreator(cfg config.MigrationToolConfig) (* return nil, err } - argsMXClientDataGetter := klever.ArgsKLVClientDataGetter{ + argsKLVClientDataGetter := klever.ArgsKLVClientDataGetter{ MultisigContractAddress: multisigAddress, SafeContractAddress: safeAddress, RelayerAddress: dummyAddress, Proxy: proxy, Log: log, } - mxDataGetter, err := klever.NewKLVClientDataGetter(argsMXClientDataGetter) + KLVDataGetter, err := klever.NewKLVClientDataGetter(argsKLVClientDataGetter) if err != nil { return nil, err } @@ -199,7 +199,7 @@ func createInternalComponentsWithBatchCreator(cfg config.MigrationToolConfig) (* } argsCreator := ethereum.ArgsMigrationBatchCreator{ - MvxDataGetter: mxDataGetter, + KlvDataGetter: KLVDataGetter, Erc20ContractsHolder: erc20ContractsHolder, SafeContractAddress: safeEthAddress, EthereumChainWrapper: ethereumChainWrapper, diff --git a/cmd/scCallsExecutor/config/config.toml b/cmd/scCallsExecutor/config/config.toml index b9a18034..58029365 100644 --- a/cmd/scCallsExecutor/config/config.toml +++ b/cmd/scCallsExecutor/config/config.toml @@ -1,4 +1,4 @@ -ScProxyBech32Address = "erd1qqqqqqqqqqqqqpgqnef5f5aq32d63kljld8w5vnvz4gk5sy9hrrq2ld08s" +ScProxyBech32Address = "" ExtraGasToExecute = 60000000 # this value allow the SC calls without provided gas limit to be refunded MaxGasLimitToUse = 249999999 # this is a safe max gas limit to use both intra-shard & cross-shard GasLimitForOutOfGasTransactions = 30000000 # this value will be used when a transaction specified a gas limit > 249999999 @@ -8,12 +8,12 @@ ProxyFinalityCheck = true ProxyCacherExpirationSeconds = 600 ProxyRestAPIEntityType = "proxy" IntervalToResendTxsInSeconds = 60 -PrivateKeyFile = "keys/multiversx.pem" +PrivateKeyFile = "keys/walletKey.pem" PollingIntervalInMillis = 6000 [Filter] AllowedEthAddresses = ["*"] # execute SC calls from all ETH addresses - AllowedMvxAddresses = ["*"] # execute SC calls to all MvX contracts + AllowedKlvAddresses = ["*"] # execute SC calls to all Klv contracts AllowedTokens = ["*"] # execute SC calls for all tokens [Logs] diff --git a/cmd/scCallsExecutor/flags.go b/cmd/scCallsExecutor/flags.go index 385a9f91..06dba1f4 100644 --- a/cmd/scCallsExecutor/flags.go +++ b/cmd/scCallsExecutor/flags.go @@ -71,17 +71,17 @@ var ( // networkAddress is used to specify the network address used networkAddress = cli.StringFlag{ Name: "network-address", - Usage: "The network address (gateway) to be used. Example: 'https://testnet-explorer.multiversx.com'", + Usage: "The network address (gateway) to be used. Example: 'https://node.testnet.klever.org'", } // scProxyBech32Address is the smart contract address used to interact with this tool scProxyBech32Address = cli.StringFlag{ Name: "sc-proxy-address", Usage: "The smart contract address in bech32 format to interact with", } - // privateKeyFile is the MultiversX private key file used to issue transaction for the SC calls + // privateKeyFile is the Klever Blockchain private key file used to issue transaction for the SC calls privateKeyFile = cli.StringFlag{ Name: "private-key-file", - Usage: "The MultiversX private key file used to issue transaction for the SC calls", + Usage: "The Klever Blockchain private key file used to issue transaction for the SC calls", } ) diff --git a/cmd/scCallsExecutor/main.go b/cmd/scCallsExecutor/main.go index 72550cba..f3b85fa6 100644 --- a/cmd/scCallsExecutor/main.go +++ b/cmd/scCallsExecutor/main.go @@ -9,7 +9,7 @@ import ( "time" "github.com/klever-io/klv-bridge-eth-go/config" - "github.com/klever-io/klv-bridge-eth-go/executors/kleverchain/module" + "github.com/klever-io/klv-bridge-eth-go/executors/kleverBlockchain/module" chainCore "github.com/multiversx/mx-chain-core-go/core" "github.com/multiversx/mx-chain-core-go/core/check" chainFactory "github.com/multiversx/mx-chain-go/cmd/node/factory" @@ -48,8 +48,8 @@ func main() { app.Version = fmt.Sprintf("%s/%s/%s-%s/%s", appVersion, runtime.Version(), runtime.GOOS, runtime.GOARCH, machineID) app.Authors = []cli.Author{ { - Name: "The MultiversX Team", - Email: "contact@multiversx.com", + Name: "The Klever Blockchain Team", + Email: "contact@klever.io", }, } diff --git a/config/config.go b/config/config.go index d200a599..7a06dd19 100644 --- a/config/config.go +++ b/config/config.go @@ -153,7 +153,7 @@ type KleverConfig struct { Proxy ProxyConfig } -// ProxyConfig represents the configuration for the MultiversX proxy +// ProxyConfig represents the configuration for the Klever Blockchain proxy type ProxyConfig struct { CacherExpirationSeconds uint64 RestAPIEntityType string @@ -161,7 +161,7 @@ type ProxyConfig struct { FinalityCheck bool } -// MultiversXGasMapConfig represents the gas limits for MultiversX operations +// KCGasMapConfig represents the gas limits for Klever Blockchain operations type KleverGasMapConfig struct { Sign uint64 ProposeTransferBase uint64 @@ -184,8 +184,8 @@ type PeersRatingConfig struct { type PendingOperationsFilterConfig struct { DeniedEthAddresses []string AllowedEthAddresses []string - DeniedMvxAddresses []string - AllowedMvxAddresses []string + DeniedKlvAddresses []string + AllowedKlvAddresses []string DeniedTokens []string AllowedTokens []string } diff --git a/config/tomlConfigs_test.go b/config/tomlConfigs_test.go index ca3a7443..aa2decf9 100644 --- a/config/tomlConfigs_test.go +++ b/config/tomlConfigs_test.go @@ -43,7 +43,7 @@ func TestConfigs(t *testing.T) { NetworkAddress: "https://api.devnet.klever.finance", MultisigContractAddress: "klv1qqqqqqqqqqqqqpgqh46r9zh78lry2py8tq723fpjdr4pp0zgsg8syf6mq0", SafeContractAddress: "klv1qqqqqqqqqqqqqpgqxjgmvqe9kvvr4xvvxflue3a7cjjeyvx9sg8snh0ljc", - PrivateKeyFile: "keys/multiversx.pem", + PrivateKeyFile: "keys/walletKey.pem", IntervalToResendTxsInSeconds: 60, GasMap: KleverGasMapConfig{ Sign: 8000000, @@ -67,7 +67,7 @@ func TestConfigs(t *testing.T) { P2P: ConfigP2P{ Port: "10010", InitialPeerList: make([]string, 0), - ProtocolID: "/erd/relay/1.0.0", + ProtocolID: "/klv/relay/1.0.0", Transports: p2pConfig.P2PTransportConfig{ TCP: config.TCPProtocolConfig{ ListenAddress: "/ip4/0.0.0.0/tcp/%d", @@ -153,11 +153,11 @@ func TestConfigs(t *testing.T) { DefaultMaxMessagesPerSec: 300, MaxMessages: []chainConfig.TopicMaxMessagesConfig{ { - Topic: "EthereumToMultiversX_join", + Topic: "EthereumToKC_join", NumMessagesPerSec: 100, }, { - Topic: "EthereumToMultiversX_sign", + Topic: "EthereumToKC_sign", NumMessagesPerSec: 100, }, }, @@ -166,11 +166,11 @@ func TestConfigs(t *testing.T) { }, }, StateMachine: map[string]ConfigStateMachine{ - "EthereumToMultiversX": { + "EthereumToKC": { StepDurationInMillis: 12000, IntervalForLeaderInSeconds: 120, }, - "MultiversXToEthereum": { + "KCToEthereum": { StepDurationInMillis: 12000, IntervalForLeaderInSeconds: 720, }, @@ -244,9 +244,9 @@ func TestConfigs(t *testing.T) { [Klever] NetworkAddress = "https://api.devnet.klever.finance" # the network address - MultisigContractAddress = "klv1qqqqqqqqqqqqqpgqh46r9zh78lry2py8tq723fpjdr4pp0zgsg8syf6mq0" # the multiversx address for the bridge contract - SafeContractAddress = "klv1qqqqqqqqqqqqqpgqxjgmvqe9kvvr4xvvxflue3a7cjjeyvx9sg8snh0ljc" # the multiversx address for the safe contract - PrivateKeyFile = "keys/multiversx.pem" # the path to the pem file containing the relayer multiversx wallet + MultisigContractAddress = "klv1qqqqqqqqqqqqqpgqh46r9zh78lry2py8tq723fpjdr4pp0zgsg8syf6mq0" # the Klever Blockchain address for the bridge contract + SafeContractAddress = "klv1qqqqqqqqqqqqqpgqxjgmvqe9kvvr4xvvxflue3a7cjjeyvx9sg8snh0ljc" # the Klever Blockchain address for the safe contract + PrivateKeyFile = "keys/walletKey.pem" # the path to the pem file containing the relayer Klever Blockchain wallet IntervalToResendTxsInSeconds = 60 # the time in seconds between nonce reads MaxRetriesOnQuorumReached = 3 MaxRetriesOnWasTransferProposed = 3 @@ -271,7 +271,7 @@ func TestConfigs(t *testing.T) { [P2P] Port = "10010" InitialPeerList = [] - ProtocolID = "/erd/relay/1.0.0" + ProtocolID = "/klv/relay/1.0.0" [P2P.Transports] QUICAddress = "" # optional QUIC address. If this transport should be activated, should be in this format: /ip4/0.0.0.0/udp/%d/quic-v1 WebSocketAddress = "" # optional WebSocket address. If this transport should be activated, should be in this format: /ip4/0.0.0.0/tcp/%d/ws @@ -341,8 +341,8 @@ func TestConfigs(t *testing.T) { Type = "LRU" [P2P.AntifloodConfig.Topic] DefaultMaxMessagesPerSec = 300 # default number of messages per interval for a topic - MaxMessages = [{ Topic = "EthereumToMultiversX_join", NumMessagesPerSec = 100 }, - { Topic = "EthereumToMultiversX_sign", NumMessagesPerSec = 100 }] + MaxMessages = [{ Topic = "EthereumToKC_join", NumMessagesPerSec = 100 }, + { Topic = "EthereumToKC_sign", NumMessagesPerSec = 100 }] [Relayer] [Relayer.Marshalizer] @@ -363,11 +363,11 @@ func TestConfigs(t *testing.T) { MaxOpenFiles = 10 [StateMachine] - [StateMachine.EthereumToMultiversX] + [StateMachine.EthereumToKC] StepDurationInMillis = 12000 #12 seconds IntervalForLeaderInSeconds = 120 #2 minutes - [StateMachine.MultiversXToEthereum] + [StateMachine.KCToEthereum] StepDurationInMillis = 12000 #12 seconds IntervalForLeaderInSeconds = 720 #12 minutes @@ -405,7 +405,7 @@ func TestScCallsExecutorConfigs(t *testing.T) { t.Parallel() expectedConfig := ScCallsModuleConfig{ - ScProxyBech32Address: "erd1qqqqqqqqqqqqqpgqnef5f5aq32d63kljld8w5vnvz4gk5sy9hrrq2ld08s", + ScProxyBech32Address: "klv1qqqqqqqqqqqqqpgqu2jcktadaq8mmytwglc704yfv7rezv5usg8sgzuah3", ExtraGasToExecute: 50000000, MaxGasLimitToUse: 249999999, GasLimitForOutOfGasTransactions: 30000000, @@ -415,11 +415,11 @@ func TestScCallsExecutorConfigs(t *testing.T) { ProxyCacherExpirationSeconds: 600, ProxyRestAPIEntityType: "observer", IntervalToResendTxsInSeconds: 60, - PrivateKeyFile: "keys/multiversx.pem", + PrivateKeyFile: "keys/walletKey.pem", PollingIntervalInMillis: 6000, Filter: PendingOperationsFilterConfig{ AllowedEthAddresses: []string{"*"}, - AllowedMvxAddresses: []string{"*"}, + AllowedKlvAddresses: []string{"*"}, AllowedTokens: []string{"MEME-a43fa1"}, }, Logs: LogsConfig{ @@ -436,7 +436,7 @@ func TestScCallsExecutorConfigs(t *testing.T) { } testString := ` -ScProxyBech32Address = "erd1qqqqqqqqqqqqqpgqnef5f5aq32d63kljld8w5vnvz4gk5sy9hrrq2ld08s" +ScProxyBech32Address = "klv1qqqqqqqqqqqqqpgqu2jcktadaq8mmytwglc704yfv7rezv5usg8sgzuah3" ExtraGasToExecute = 50000000 MaxGasLimitToUse = 249999999 # this is a safe max gas limit to use both intra-shard & cross-shard GasLimitForOutOfGasTransactions = 30000000 # this value will be used when a transaction specified a gas limit > 249999999 @@ -446,12 +446,12 @@ ProxyFinalityCheck = true ProxyCacherExpirationSeconds = 600 ProxyRestAPIEntityType = "observer" IntervalToResendTxsInSeconds = 60 -PrivateKeyFile = "keys/multiversx.pem" +PrivateKeyFile = "keys/walletKey.pem" PollingIntervalInMillis = 6000 [Filter] AllowedEthAddresses = ["*"] # execute SC calls from all ETH addresses - AllowedMvxAddresses = ["*"] # execute SC calls to all MvX contracts + AllowedKlvAddresses = ["*"] # execute SC calls to all Klv contracts AllowedTokens = ["MEME-a43fa1"] # execute SC calls for this token only [Logs] @@ -536,9 +536,9 @@ func TestMigrationToolConfig(t *testing.T) { GasPriceSelector = "SafeGasPrice" # selector used to provide the gas price [Klever] - NetworkAddress = "https://api.devnet.klever.finance/" # the network address - MultisigContractAddress = "klv1qqqqqqqqqqqqqpgqh46r9zh78lry2py8tq723fpjdr4pp0zgsg8syf6mq0" # the multiversx address for the bridge contract - SafeContractAddress = "klv1qqqqqqqqqqqqqpgqxjgmvqe9kvvr4xvvxflue3a7cjjeyvx9sg8snh0ljc" # the multiversx address for the safe contract + NetworkAddress = "https://api.devnet.klever.finance" # the network address + MultisigContractAddress = "klv1qqqqqqqqqqqqqpgqh46r9zh78lry2py8tq723fpjdr4pp0zgsg8syf6mq0" # the kc address for the bridge contract + SafeContractAddress = "klv1qqqqqqqqqqqqqpgqxjgmvqe9kvvr4xvvxflue3a7cjjeyvx9sg8snh0ljc" # the kc address for the safe contract [Klever.Proxy] CacherExpirationSeconds = 600 # the caching time in seconds diff --git a/core/batchProcessor/batchProcessor.go b/core/batchProcessor/batchProcessor.go index c49a0e57..4a89eb7e 100644 --- a/core/batchProcessor/batchProcessor.go +++ b/core/batchProcessor/batchProcessor.go @@ -11,27 +11,27 @@ import ( type Direction string const ( - // FromMultiversX is the direction of the transfer - FromMultiversX Direction = "FromMultiversX" - // ToMultiversX is the direction of the transfer - ToMultiversX Direction = "ToMultiversX" + // FromKC is the direction of the transfer + FromKC Direction = "FromKC" + // ToKC is the direction of the transfer + ToKC Direction = "ToKC" ) // ArgListsBatch is a struct that contains the batch data in a format that is easy to use type ArgListsBatch struct { EthTokens []common.Address Recipients []common.Address - MvxTokenBytes [][]byte + KdaTokenBytes [][]byte Amounts []*big.Int Nonces []*big.Int Direction Direction } -// ExtractListMvxToEth will extract the batch data into a format that is easy to use -// The transfer is from MultiversX to Ethereum -func ExtractListMvxToEth(batch *bridgeCore.TransferBatch) *ArgListsBatch { +// ExtractListKlvToEth will extract the batch data into a format that is easy to use +// The transfer is from Klever Blockchain to Ethereum +func ExtractListKlvToEth(batch *bridgeCore.TransferBatch) *ArgListsBatch { arg := &ArgListsBatch{ - Direction: FromMultiversX, + Direction: FromKC, } for _, dt := range batch.Deposits { @@ -47,17 +47,17 @@ func ExtractListMvxToEth(batch *bridgeCore.TransferBatch) *ArgListsBatch { nonce := big.NewInt(0).SetUint64(dt.Nonce) arg.Nonces = append(arg.Nonces, nonce) - arg.MvxTokenBytes = append(arg.MvxTokenBytes, dt.SourceTokenBytes) + arg.KdaTokenBytes = append(arg.KdaTokenBytes, dt.SourceTokenBytes) } return arg } -// ExtractListEthToMvx will extract the batch data into a format that is easy to use -// The transfer is from Ehtereum to MultiversX -func ExtractListEthToMvx(batch *bridgeCore.TransferBatch) *ArgListsBatch { +// ExtractListEthToKlv will extract the batch data into a format that is easy to use +// The transfer is from Ehtereum to Klever Blockchain +func ExtractListEthToKlv(batch *bridgeCore.TransferBatch) *ArgListsBatch { arg := &ArgListsBatch{ - Direction: ToMultiversX, + Direction: ToKC, } for _, dt := range batch.Deposits { @@ -73,7 +73,7 @@ func ExtractListEthToMvx(batch *bridgeCore.TransferBatch) *ArgListsBatch { nonce := big.NewInt(0).SetUint64(dt.Nonce) arg.Nonces = append(arg.Nonces, nonce) - arg.MvxTokenBytes = append(arg.MvxTokenBytes, dt.DestinationTokenBytes) + arg.KdaTokenBytes = append(arg.KdaTokenBytes, dt.DestinationTokenBytes) } return arg diff --git a/core/batchProcessor/batchProcessor_test.go b/core/batchProcessor/batchProcessor_test.go index a529b918..55476199 100644 --- a/core/batchProcessor/batchProcessor_test.go +++ b/core/batchProcessor/batchProcessor_test.go @@ -9,7 +9,7 @@ import ( "github.com/stretchr/testify/assert" ) -func TestExtractListEthToMvx(t *testing.T) { +func TestExtractListEthToKlv(t *testing.T) { t.Parallel() testBatch := &bridgeCore.TransferBatch{ @@ -35,7 +35,7 @@ func TestExtractListEthToMvx(t *testing.T) { Statuses: nil, } - args := ExtractListEthToMvx(testBatch) + args := ExtractListEthToKlv(testBatch) expectedEthTokens := []common.Address{ common.BytesToAddress([]byte("source token 1")), @@ -49,11 +49,11 @@ func TestExtractListEthToMvx(t *testing.T) { } assert.Equal(t, expectedRecipients, args.Recipients) - expectedMvxTokenBytes := [][]byte{ + expectedKdaTokenBytes := [][]byte{ []byte("destination token 1"), []byte("destination token 2"), } - assert.Equal(t, expectedMvxTokenBytes, args.MvxTokenBytes) + assert.Equal(t, expectedKdaTokenBytes, args.KdaTokenBytes) expectedAmounts := []*big.Int{ big.NewInt(11), @@ -68,7 +68,7 @@ func TestExtractListEthToMvx(t *testing.T) { assert.Equal(t, expectedNonces, args.Nonces) } -func TestExtractListMvxToEth(t *testing.T) { +func TestExtractListKlvToEth(t *testing.T) { t.Parallel() testBatch := &bridgeCore.TransferBatch{ @@ -94,7 +94,7 @@ func TestExtractListMvxToEth(t *testing.T) { Statuses: nil, } - args := ExtractListMvxToEth(testBatch) + args := ExtractListKlvToEth(testBatch) expectedEthTokens := []common.Address{ common.BytesToAddress([]byte("destination token 1")), @@ -108,11 +108,11 @@ func TestExtractListMvxToEth(t *testing.T) { } assert.Equal(t, expectedRecipients, args.Recipients) - expectedMvxTokenBytes := [][]byte{ + expectedKdaTokenBytes := [][]byte{ []byte("source token 1"), []byte("source token 2"), } - assert.Equal(t, expectedMvxTokenBytes, args.MvxTokenBytes) + assert.Equal(t, expectedKdaTokenBytes, args.KdaTokenBytes) expectedAmounts := []*big.Int{ big.NewInt(11), diff --git a/core/constants.go b/core/constants.go index 98528e7a..37a8d5b9 100644 --- a/core/constants.go +++ b/core/constants.go @@ -59,15 +59,15 @@ const ( // MetricLastEthereumClientError represents the metric used to store the last encountered error from the ethereum client MetricLastEthereumClientError = "ethereum client last encountered error" - // MetricLastQueriedMultiversXBlockNumber represents the metric used to store the last MultiversX block number that was - // fetched from the MultiversX client - MetricLastQueriedMultiversXBlockNumber = "multiversx last queried block number" + // MetricLastQueriedKCBlockNumber represents the metric used to store the last Klever Blockchain block number that was + // fetched from the Klever Blockchain client + MetricLastQueriedKCBlockNumber = "klever blockchain last queried block number" - // MetricMultiversXClientStatus represents the metric used to store the status of the MultiversX client - MetricMultiversXClientStatus = "multiversx client status" + // MetricKCClientStatus represents the metric used to store the status of the Klever Blockchain client + MetricKCClientStatus = "klever blockchain client status" - // MetricLastMultiversXClientError represents the metric used to store the last encountered error from the MultiversX client - MetricLastMultiversXClientError = "multiversx client last encountered error" + // MetricLastKCClientError represents the metric used to store the last encountered error from the Klever Blockchain client + MetricLastKCClientError = "klever blockchain last encountered error" // MetricRelayerP2PAddresses represents the metric used to store all the P2P addresses the messenger has bound to MetricRelayerP2PAddresses = "relayer P2P addresses" @@ -81,8 +81,8 @@ const ( // PersistedMetrics represents the array of metrics that should be persisted var PersistedMetrics = []string{MetricNumBatches, MetricNumEthClientRequests, MetricNumEthClientTransactions, - MetricLastQueriedEthereumBlockNumber, MetricLastQueriedMultiversXBlockNumber, MetricEthereumClientStatus, - MetricMultiversXClientStatus, MetricLastEthereumClientError, MetricLastMultiversXClientError, MetricLastBlockNonce} + MetricLastQueriedEthereumBlockNumber, MetricLastQueriedKCBlockNumber, MetricEthereumClientStatus, + MetricKCClientStatus, MetricLastEthereumClientError, MetricLastKCClientError, MetricLastBlockNonce} const ( // EthClientStatusHandlerName is the Ethereum client status handler name diff --git a/docker/scCallsExecutor-docker-compose.yml b/docker/scCallsExecutor-docker-compose.yml index 66e6bd06..9510286f 100644 --- a/docker/scCallsExecutor-docker-compose.yml +++ b/docker/scCallsExecutor-docker-compose.yml @@ -7,11 +7,11 @@ services: dockerfile: scCallsExecutor.Dockerfile restart: unless-stopped volumes: - - "../keys:/multiversx/keys" + - "../keys:/keys" # change the `network-address`, `sc-proxy-address` and `private-key-file` accordingly entrypoint: "./scCallsExecutor \ -log-level *:DEBUG \ -log-save \ - -network-address https://devnet-gateway.multiversx.com \ - -sc-proxy-address erd1qqqqqqqqqqqqqpgq5l0743nyv45vdptmfh3jydkqtyzjqpgsrcjq8yuzxk \ + -network-address https://node.devnet.klever.org \ + -sc-proxy-address klv1qqqqqqqqqqqqqpgqu2jcktadaq8mmytwglc704yfv7rezv5usg8sgzuah3 \ -private-key-file ./keys/walletKey.pem" diff --git a/executors/ethereum/bridgeV2Wrappers/ethereumChainWrapper_test.go b/executors/ethereum/bridgeV2Wrappers/ethereumChainWrapper_test.go index ad81d224..a705ce7a 100644 --- a/executors/ethereum/bridgeV2Wrappers/ethereumChainWrapper_test.go +++ b/executors/ethereum/bridgeV2Wrappers/ethereumChainWrapper_test.go @@ -263,7 +263,7 @@ func TestEthClientWrapper_GetStatusesAfterExecution(t *testing.T) { args, statusHandler := createMockArgsEthereumChainWrapper() handlerCalled := false args.MultiSigContract = &mock.MultiSigContractStub{ - GetStatusesAfterExecutionCalled: func(opts *bind.CallOpts, batchNonceMultiversXETH *big.Int) ([]uint8, error) { + GetStatusesAfterExecutionCalled: func(opts *bind.CallOpts, batchNonceKCETH *big.Int) ([]uint8, error) { handlerCalled = true return nil, nil }, diff --git a/executors/ethereum/errors.go b/executors/ethereum/errors.go index d1855ce4..acaa3175 100644 --- a/executors/ethereum/errors.go +++ b/executors/ethereum/errors.go @@ -4,7 +4,7 @@ import "errors" var ( errEmptyTokensList = errors.New("empty tokens list") - errNilMvxDataGetter = errors.New("nil MultiversX data getter") + errNilKlvDataGetter = errors.New("nil klever blockchain data getter") errNilErc20ContractsHolder = errors.New("nil ERC20 contracts holder") errWrongERC20AddressResponse = errors.New("wrong ERC20 address response") errNilLogger = errors.New("nil logger") diff --git a/executors/ethereum/interface.go b/executors/ethereum/interface.go index 14f9e537..fede07dd 100644 --- a/executors/ethereum/interface.go +++ b/executors/ethereum/interface.go @@ -28,8 +28,8 @@ type SafeContractWrapper interface { BatchesCount(opts *bind.CallOpts) (uint64, error) } -// MvxDataGetter defines the operations for the data getter operating on MultiversX chain -type MvxDataGetter interface { +// KlvDataGetter defines the operations for the data getter operating on Klever Blockchain +type KlvDataGetter interface { GetAllKnownTokens(ctx context.Context) ([][]byte, error) GetERC20AddressForTokenId(ctx context.Context, tokenId []byte) ([][]byte, error) IsInterfaceNil() bool diff --git a/executors/ethereum/migrationBatchCreator.go b/executors/ethereum/migrationBatchCreator.go index da2bfff0..fd639d6d 100644 --- a/executors/ethereum/migrationBatchCreator.go +++ b/executors/ethereum/migrationBatchCreator.go @@ -20,7 +20,7 @@ const timeBetweenBatchIDChecks = time.Millisecond * 100 // ArgsMigrationBatchCreator is the argument for the NewMigrationBatchCreator constructor type ArgsMigrationBatchCreator struct { - MvxDataGetter MvxDataGetter + KlvDataGetter KlvDataGetter Erc20ContractsHolder Erc20ContractsHolder SafeContractAddress common.Address EthereumChainWrapper EthereumChainWrapper @@ -28,7 +28,7 @@ type ArgsMigrationBatchCreator struct { } type migrationBatchCreator struct { - mvxDataGetter MvxDataGetter + kdaDataGetter KlvDataGetter erc20ContractsHolder Erc20ContractsHolder safeContractAddress common.Address ethereumChainWrapper EthereumChainWrapper @@ -37,8 +37,8 @@ type migrationBatchCreator struct { // NewMigrationBatchCreator creates a new instance of type migrationBatchCreator that is able to generate the migration batch output file func NewMigrationBatchCreator(args ArgsMigrationBatchCreator) (*migrationBatchCreator, error) { - if check.IfNil(args.MvxDataGetter) { - return nil, errNilMvxDataGetter + if check.IfNil(args.KlvDataGetter) { + return nil, errNilKlvDataGetter } if check.IfNil(args.Erc20ContractsHolder) { return nil, errNilErc20ContractsHolder @@ -51,7 +51,7 @@ func NewMigrationBatchCreator(args ArgsMigrationBatchCreator) (*migrationBatchCr } return &migrationBatchCreator{ - mvxDataGetter: args.MvxDataGetter, + kdaDataGetter: args.KlvDataGetter, erc20ContractsHolder: args.Erc20ContractsHolder, safeContractAddress: args.SafeContractAddress, logger: args.Logger, @@ -176,7 +176,7 @@ func (creator *migrationBatchCreator) checkAvailableBatch( } func (creator *migrationBatchCreator) getTokensList(ctx context.Context, partialMigration map[string]*big.Float) ([]string, error) { - tokens, err := creator.mvxDataGetter.GetAllKnownTokens(ctx) + tokens, err := creator.kdaDataGetter.GetAllKnownTokens(ctx) if err != nil { return nil, err } @@ -201,7 +201,7 @@ func (creator *migrationBatchCreator) getTokensList(ctx context.Context, partial func (creator *migrationBatchCreator) fetchERC20ContractsAddresses(ctx context.Context, tokensList []string, lastDepositNonce uint64) ([]*DepositInfo, error) { deposits := make([]*DepositInfo, 0, len(tokensList)) for idx, token := range tokensList { - response, err := creator.mvxDataGetter.GetERC20AddressForTokenId(ctx, []byte(token)) + response, err := creator.kdaDataGetter.GetERC20AddressForTokenId(ctx, []byte(token)) if err != nil { return nil, err } diff --git a/executors/ethereum/migrationBatchCreator_test.go b/executors/ethereum/migrationBatchCreator_test.go index ecfffb11..81e65d1a 100644 --- a/executors/ethereum/migrationBatchCreator_test.go +++ b/executors/ethereum/migrationBatchCreator_test.go @@ -29,7 +29,7 @@ var expectedErr = errors.New("expected error") func createMockArgsForMigrationBatchCreator() ArgsMigrationBatchCreator { return ArgsMigrationBatchCreator{ - MvxDataGetter: &bridge.DataGetterStub{ + KlvDataGetter: &bridge.DataGetterStub{ GetAllKnownTokensCalled: func(ctx context.Context) ([][]byte, error) { return [][]byte{ []byte("tkn1"), @@ -52,15 +52,15 @@ func createMockArgsForMigrationBatchCreator() ArgsMigrationBatchCreator { func TestNewMigrationBatchCreator(t *testing.T) { t.Parallel() - t.Run("nil mvx data getter should error", func(t *testing.T) { + t.Run("nil kda data getter should error", func(t *testing.T) { t.Parallel() args := createMockArgsForMigrationBatchCreator() - args.MvxDataGetter = nil + args.KlvDataGetter = nil creator, err := NewMigrationBatchCreator(args) assert.Nil(t, creator) - assert.Equal(t, errNilMvxDataGetter, err) + assert.Equal(t, errNilKlvDataGetter, err) }) t.Run("nil erc20 contracts holder should error", func(t *testing.T) { t.Parallel() @@ -310,7 +310,7 @@ func TestMigrationBatchCreator_CreateBatchInfo(t *testing.T) { return batchNonce.Uint64() < firstFreeBatchId, nil }, } - args.MvxDataGetter = &bridge.DataGetterStub{ + args.KlvDataGetter = &bridge.DataGetterStub{ GetAllKnownTokensCalled: func(ctx context.Context) ([][]byte, error) { return nil, expectedErr }, @@ -330,7 +330,7 @@ func TestMigrationBatchCreator_CreateBatchInfo(t *testing.T) { return batchNonce.Uint64() < firstFreeBatchId, nil }, } - args.MvxDataGetter = &bridge.DataGetterStub{ + args.KlvDataGetter = &bridge.DataGetterStub{ GetAllKnownTokensCalled: func(ctx context.Context) ([][]byte, error) { return make([][]byte, 0), nil }, @@ -350,7 +350,7 @@ func TestMigrationBatchCreator_CreateBatchInfo(t *testing.T) { return batchNonce.Uint64() < firstFreeBatchId, nil }, } - args.MvxDataGetter.(*bridge.DataGetterStub).GetERC20AddressForTokenIdCalled = func(ctx context.Context, sourceBytes []byte) ([][]byte, error) { + args.KlvDataGetter.(*bridge.DataGetterStub).GetERC20AddressForTokenIdCalled = func(ctx context.Context, sourceBytes []byte) ([][]byte, error) { return nil, expectedErr } @@ -368,7 +368,7 @@ func TestMigrationBatchCreator_CreateBatchInfo(t *testing.T) { return batchNonce.Uint64() < firstFreeBatchId, nil }, } - args.MvxDataGetter.(*bridge.DataGetterStub).GetERC20AddressForTokenIdCalled = func(ctx context.Context, sourceBytes []byte) ([][]byte, error) { + args.KlvDataGetter.(*bridge.DataGetterStub).GetERC20AddressForTokenIdCalled = func(ctx context.Context, sourceBytes []byte) ([][]byte, error) { return make([][]byte, 0), nil } @@ -401,7 +401,7 @@ func TestMigrationBatchCreator_CreateBatchInfo(t *testing.T) { t.Parallel() args := createMockArgsForMigrationBatchCreator() - args.MvxDataGetter.(*bridge.DataGetterStub).GetERC20AddressForTokenIdCalled = func(ctx context.Context, sourceBytes []byte) ([][]byte, error) { + args.KlvDataGetter.(*bridge.DataGetterStub).GetERC20AddressForTokenIdCalled = func(ctx context.Context, sourceBytes []byte) ([][]byte, error) { if string(sourceBytes) == "tkn1" { return [][]byte{tkn1Erc20Address}, nil } diff --git a/executors/kleverchain/errors.go b/executors/kleverBlockchain/errors.go similarity index 97% rename from executors/kleverchain/errors.go rename to executors/kleverBlockchain/errors.go index dddf7726..b17c8bdf 100644 --- a/executors/kleverchain/errors.go +++ b/executors/kleverBlockchain/errors.go @@ -1,4 +1,4 @@ -package kleverchain +package kc import "errors" diff --git a/executors/kleverchain/filters/errors.go b/executors/kleverBlockchain/filters/errors.go similarity index 100% rename from executors/kleverchain/filters/errors.go rename to executors/kleverBlockchain/filters/errors.go diff --git a/executors/kleverchain/filters/pendingOperationFilter.go b/executors/kleverBlockchain/filters/pendingOperationFilter.go similarity index 85% rename from executors/kleverchain/filters/pendingOperationFilter.go rename to executors/kleverBlockchain/filters/pendingOperationFilter.go index db9f04ac..accbc64d 100644 --- a/executors/kleverchain/filters/pendingOperationFilter.go +++ b/executors/kleverBlockchain/filters/pendingOperationFilter.go @@ -29,8 +29,8 @@ func init() { type pendingOperationFilter struct { allowedEthAddresses []string deniedEthAddresses []string - allowedMvxAddresses []string - deniedMvxAddresses []string + allowedKlvAddresses []string + deniedKlvAddresses []string allowedTokens []string deniedTokens []string } @@ -40,7 +40,7 @@ func NewPendingOperationFilter(cfg config.PendingOperationsFilterConfig, log log if check.IfNil(log) { return nil, errNilLogger } - if len(cfg.AllowedMvxAddresses)+len(cfg.AllowedEthAddresses)+len(cfg.AllowedTokens) == 0 { + if len(cfg.AllowedKlvAddresses)+len(cfg.AllowedEthAddresses)+len(cfg.AllowedTokens) == 0 { return nil, errNoItemsAllowed } @@ -57,10 +57,10 @@ func NewPendingOperationFilter(cfg config.PendingOperationsFilterConfig, log log log.Info("NewPendingOperationFilter config options", "DeniedEthAddresses", strings.Join(filter.deniedEthAddresses, ", "), - "DeniedMvxAddresses", strings.Join(filter.deniedMvxAddresses, ", "), + "DeniedKlvAddresses", strings.Join(filter.deniedKlvAddresses, ", "), "DeniedTokens", strings.Join(filter.deniedTokens, ", "), "AllowedEthAddresses", strings.Join(filter.allowedEthAddresses, ", "), - "AllowedMvxAddresses", strings.Join(filter.allowedMvxAddresses, ", "), + "AllowedKlvAddresses", strings.Join(filter.allowedKlvAddresses, ", "), "AllowedTokens", strings.Join(filter.allowedTokens, ", "), ) @@ -76,9 +76,9 @@ func (filter *pendingOperationFilter) parseConfigs(cfg config.PendingOperationsF return fmt.Errorf("%w in list DeniedEthAddresses", err) } - filter.deniedMvxAddresses, err = parseList(cfg.DeniedMvxAddresses, wildcardString) + filter.deniedKlvAddresses, err = parseList(cfg.DeniedKlvAddresses, wildcardString) if err != nil { - return fmt.Errorf("%w in list DeniedMvxAddresses", err) + return fmt.Errorf("%w in list DeniedKlvAddresses", err) } filter.deniedTokens, err = parseList(cfg.DeniedTokens, wildcardString) @@ -92,9 +92,9 @@ func (filter *pendingOperationFilter) parseConfigs(cfg config.PendingOperationsF return fmt.Errorf("%w in list AllowedEthAddresses", err) } - filter.allowedMvxAddresses, err = parseList(cfg.AllowedMvxAddresses, emptyString) + filter.allowedKlvAddresses, err = parseList(cfg.AllowedKlvAddresses, emptyString) if err != nil { - return fmt.Errorf("%w in list AllowedMvxAddresses", err) + return fmt.Errorf("%w in list AllowedKlvAddresses", err) } filter.allowedTokens, err = parseList(cfg.AllowedTokens, emptyString) @@ -131,14 +131,14 @@ func (filter *pendingOperationFilter) checkLists() error { return fmt.Errorf("%w in list DeniedEthAddresses", err) } - err = filter.checkList(filter.allowedMvxAddresses, checkMvxItemValid) + err = filter.checkList(filter.allowedKlvAddresses, checkKlvItemValid) if err != nil { - return fmt.Errorf("%w in list AllowedMvxAddresses", err) + return fmt.Errorf("%w in list AllowedKlvAddresses", err) } - err = filter.checkList(filter.deniedMvxAddresses, checkMvxItemValid) + err = filter.checkList(filter.deniedKlvAddresses, checkKlvItemValid) if err != nil { - return fmt.Errorf("%w in list DeniedMvxAddresses", err) + return fmt.Errorf("%w in list DeniedKlvAddresses", err) } return nil @@ -159,7 +159,7 @@ func (filter *pendingOperationFilter) checkList(list []string, checkItem func(it return nil } -func checkMvxItemValid(item string) error { +func checkKlvItemValid(item string) error { _, errNewAddr := address.NewAddress(item) return errNewAddr } @@ -180,14 +180,14 @@ func (filter *pendingOperationFilter) ShouldExecute(callData parsers.ProxySCComp toAddress := callData.To.Bech32() isSpecificallyDenied := filter.stringExistsInList(callData.From.String(), filter.deniedEthAddresses, ethWildcardString) || - filter.stringExistsInList(toAddress, filter.deniedMvxAddresses, wildcardString) || + filter.stringExistsInList(toAddress, filter.deniedKlvAddresses, wildcardString) || filter.stringExistsInList(callData.Token, filter.deniedTokens, wildcardString) if isSpecificallyDenied { return false } isAllowed := filter.stringExistsInList(callData.From.String(), filter.allowedEthAddresses, ethWildcardString) || - filter.stringExistsInList(toAddress, filter.allowedMvxAddresses, wildcardString) || + filter.stringExistsInList(toAddress, filter.allowedKlvAddresses, wildcardString) || filter.stringExistsInList(callData.Token, filter.allowedTokens, wildcardString) return isAllowed diff --git a/executors/kleverchain/filters/pendingOperationFilter_test.go b/executors/kleverBlockchain/filters/pendingOperationFilter_test.go similarity index 89% rename from executors/kleverchain/filters/pendingOperationFilter_test.go rename to executors/kleverBlockchain/filters/pendingOperationFilter_test.go index 7be422cc..33fafed9 100644 --- a/executors/kleverchain/filters/pendingOperationFilter_test.go +++ b/executors/kleverBlockchain/filters/pendingOperationFilter_test.go @@ -25,8 +25,8 @@ func createTestConfig() config.PendingOperationsFilterConfig { DeniedEthAddresses: nil, AllowedEthAddresses: []string{"*"}, - DeniedMvxAddresses: nil, - AllowedMvxAddresses: []string{"*"}, + DeniedKlvAddresses: nil, + AllowedKlvAddresses: []string{"*"}, DeniedTokens: nil, AllowedTokens: []string{"*"}, @@ -61,16 +61,16 @@ func TestNewPendingOperationFilter(t *testing.T) { assert.ErrorIs(t, err, errUnsupportedMarker) assert.Contains(t, err.Error(), "on item at index 0 in list DeniedEthAddresses") }) - t.Run("denied mvx list contains wildcard should error", func(t *testing.T) { + t.Run("denied kda list contains wildcard should error", func(t *testing.T) { t.Parallel() cfg := createTestConfig() - cfg.DeniedMvxAddresses = []string{" * "} + cfg.DeniedKlvAddresses = []string{" * "} filter, err := NewPendingOperationFilter(cfg, testLog) assert.Nil(t, filter) assert.ErrorIs(t, err, errUnsupportedMarker) - assert.Contains(t, err.Error(), "on item at index 0 in list DeniedMvxAddresses") + assert.Contains(t, err.Error(), "on item at index 0 in list DeniedKlvAddresses") }) t.Run("denied tokens list contains wildcard should error", func(t *testing.T) { t.Parallel() @@ -94,16 +94,16 @@ func TestNewPendingOperationFilter(t *testing.T) { assert.ErrorIs(t, err, errUnsupportedMarker) assert.Contains(t, err.Error(), "on item at index 1 in list AllowedEthAddresses") }) - t.Run("allowed mvx list contains empty string should error", func(t *testing.T) { + t.Run("allowed kda list contains empty string should error", func(t *testing.T) { t.Parallel() cfg := createTestConfig() - cfg.AllowedMvxAddresses = append(cfg.AllowedMvxAddresses, " ") + cfg.AllowedKlvAddresses = append(cfg.AllowedKlvAddresses, " ") filter, err := NewPendingOperationFilter(cfg, testLog) assert.Nil(t, filter) assert.ErrorIs(t, err, errUnsupportedMarker) - assert.Contains(t, err.Error(), "on item at index 1 in list AllowedMvxAddresses") + assert.Contains(t, err.Error(), "on item at index 1 in list AllowedKlvAddresses") }) t.Run("allowed tokens list contains empty string should error", func(t *testing.T) { t.Parallel() @@ -138,36 +138,36 @@ func TestNewPendingOperationFilter(t *testing.T) { assert.ErrorIs(t, err, errMissingEthPrefix) assert.Contains(t, err.Error(), "on item at index 0 in list DeniedEthAddresses") }) - t.Run("invalid address in AllowedMvxAddresses should error", func(t *testing.T) { + t.Run("invalid address in AllowedKlvAddresses should error", func(t *testing.T) { t.Parallel() cfg := createTestConfig() - cfg.AllowedMvxAddresses = append(cfg.AllowedMvxAddresses, "invalid address") + cfg.AllowedKlvAddresses = append(cfg.AllowedKlvAddresses, "invalid address") filter, err := NewPendingOperationFilter(cfg, testLog) assert.Nil(t, filter) assert.NotNil(t, err) - assert.Contains(t, err.Error(), "on item at index 1 in list AllowedMvxAddresses") + assert.Contains(t, err.Error(), "on item at index 1 in list AllowedKlvAddresses") }) - t.Run("invalid address in DeniedMvxAddresses should error", func(t *testing.T) { + t.Run("invalid address in DeniedKlvAddresses should error", func(t *testing.T) { t.Parallel() cfg := createTestConfig() - cfg.DeniedMvxAddresses = append(cfg.DeniedMvxAddresses, "invalid address") + cfg.DeniedKlvAddresses = append(cfg.DeniedKlvAddresses, "invalid address") filter, err := NewPendingOperationFilter(cfg, testLog) assert.Nil(t, filter) assert.NotNil(t, err) - assert.Contains(t, err.Error(), "on item at index 0 in list DeniedMvxAddresses") + assert.Contains(t, err.Error(), "on item at index 0 in list DeniedKlvAddresses") }) t.Run("should work", func(t *testing.T) { t.Parallel() cfg := createTestConfig() - cfg.AllowedEthAddresses = append(cfg.AllowedMvxAddresses, ethTestAddress1) + cfg.AllowedEthAddresses = append(cfg.AllowedKlvAddresses, ethTestAddress1) cfg.DeniedEthAddresses = append(cfg.DeniedEthAddresses, ethTestAddress1) - cfg.AllowedMvxAddresses = append(cfg.AllowedMvxAddresses, klvTestAddress1) - cfg.DeniedMvxAddresses = append(cfg.DeniedMvxAddresses, klvTestAddress1) + cfg.AllowedKlvAddresses = append(cfg.AllowedKlvAddresses, klvTestAddress1) + cfg.DeniedKlvAddresses = append(cfg.DeniedKlvAddresses, klvTestAddress1) filter, err := NewPendingOperationFilter(cfg, testLog) assert.NotNil(t, filter) assert.Nil(t, err) @@ -252,13 +252,13 @@ func TestPendingOperationFilter_ShouldExecute(t *testing.T) { cfg := createTestConfig() cfg.AllowedEthAddresses = []string{ethTestAddress2} cfg.AllowedTokens = nil - cfg.AllowedMvxAddresses = nil + cfg.AllowedKlvAddresses = nil filter, _ := NewPendingOperationFilter(cfg, testLog) assert.False(t, filter.ShouldExecute(callData)) }) }) - t.Run("mvx address", func(t *testing.T) { + t.Run("kda address", func(t *testing.T) { t.Parallel() callData := parsers.ProxySCCompleteCallData{ @@ -269,13 +269,13 @@ func TestPendingOperationFilter_ShouldExecute(t *testing.T) { t.Parallel() cfg := createTestConfig() - cfg.DeniedMvxAddresses = []string{klvTestAddress1} - cfg.AllowedMvxAddresses = []string{klvTestAddress1} + cfg.DeniedKlvAddresses = []string{klvTestAddress1} + cfg.AllowedKlvAddresses = []string{klvTestAddress1} filter, _ := NewPendingOperationFilter(cfg, testLog) assert.False(t, filter.ShouldExecute(callData)) - cfg.AllowedMvxAddresses = []string{"*"} + cfg.AllowedKlvAddresses = []string{"*"} filter, _ = NewPendingOperationFilter(cfg, testLog) assert.False(t, filter.ShouldExecute(callData)) }) @@ -283,12 +283,12 @@ func TestPendingOperationFilter_ShouldExecute(t *testing.T) { t.Parallel() cfg := createTestConfig() - cfg.AllowedMvxAddresses = []string{klvTestAddress1} + cfg.AllowedKlvAddresses = []string{klvTestAddress1} filter, _ := NewPendingOperationFilter(cfg, testLog) assert.True(t, filter.ShouldExecute(callData)) - cfg.AllowedMvxAddresses = []string{"*"} + cfg.AllowedKlvAddresses = []string{"*"} filter, _ = NewPendingOperationFilter(cfg, testLog) assert.True(t, filter.ShouldExecute(callData)) }) @@ -296,7 +296,7 @@ func TestPendingOperationFilter_ShouldExecute(t *testing.T) { t.Parallel() cfg := createTestConfig() - cfg.AllowedMvxAddresses = []string{klvTestAddress2} + cfg.AllowedKlvAddresses = []string{klvTestAddress2} cfg.AllowedTokens = nil cfg.AllowedEthAddresses = nil @@ -347,7 +347,7 @@ func TestPendingOperationFilter_ShouldExecute(t *testing.T) { cfg := createTestConfig() cfg.AllowedTokens = []string{token2} - cfg.AllowedMvxAddresses = nil + cfg.AllowedKlvAddresses = nil cfg.AllowedEthAddresses = nil filter, _ := NewPendingOperationFilter(cfg, testLog) diff --git a/executors/kleverchain/interface.go b/executors/kleverBlockchain/interface.go similarity index 92% rename from executors/kleverchain/interface.go rename to executors/kleverBlockchain/interface.go index 654f3160..db2def29 100644 --- a/executors/kleverchain/interface.go +++ b/executors/kleverBlockchain/interface.go @@ -1,4 +1,4 @@ -package kleverchain +package kc import ( "context" @@ -22,7 +22,7 @@ type ScCallsExecuteFilter interface { IsInterfaceNil() bool } -// Codec defines the operations implemented by a MultiversX codec +// Codec defines the operations implemented by a Klever Blockchain codec type Codec interface { DecodeProxySCCompleteCallData(buff []byte) (parsers.ProxySCCompleteCallData, error) ExtractGasLimitFromRawCallData(buff []byte) (uint64, error) diff --git a/executors/kleverchain/module/interface.go b/executors/kleverBlockchain/module/interface.go similarity index 100% rename from executors/kleverchain/module/interface.go rename to executors/kleverBlockchain/module/interface.go diff --git a/executors/kleverchain/module/scCallsModule.go b/executors/kleverBlockchain/module/scCallsModule.go similarity index 86% rename from executors/kleverchain/module/scCallsModule.go rename to executors/kleverBlockchain/module/scCallsModule.go index dd01cf8f..2c8aeb55 100644 --- a/executors/kleverchain/module/scCallsModule.go +++ b/executors/kleverBlockchain/module/scCallsModule.go @@ -9,8 +9,8 @@ import ( "github.com/klever-io/klv-bridge-eth-go/clients/klever/interactors/nonceHandlerV2" "github.com/klever-io/klv-bridge-eth-go/clients/klever/mock" "github.com/klever-io/klv-bridge-eth-go/config" - kleverChain "github.com/klever-io/klv-bridge-eth-go/executors/kleverchain" - "github.com/klever-io/klv-bridge-eth-go/executors/kleverchain/filters" + kc "github.com/klever-io/klv-bridge-eth-go/executors/kleverBlockchain" + "github.com/klever-io/klv-bridge-eth-go/executors/kleverBlockchain/filters" "github.com/klever-io/klv-bridge-eth-go/parsers" "github.com/multiversx/mx-chain-crypto-go/signing" "github.com/multiversx/mx-chain-crypto-go/signing/ed25519" @@ -56,20 +56,20 @@ func NewScCallsModule(cfg config.ScCallsModuleConfig, log logger.Logger, chClose return nil, err } - kleverChainPrivateKeyBytes, err := hex.DecodeString(string(encodedSk)) + kcPrivateKeyBytes, err := hex.DecodeString(string(encodedSk)) if err != nil { return nil, fmt.Errorf("%w for encoded secret key", err) } - privateKey, err := keyGen.PrivateKeyFromByteArray(kleverChainPrivateKeyBytes) + privateKey, err := keyGen.PrivateKeyFromByteArray(kcPrivateKeyBytes) if err != nil { return nil, err } - argsExecutor := kleverChain.ArgsScCallExecutor{ + argsExecutor := kc.ArgsScCallExecutor{ ScProxyBech32Address: cfg.ScProxyBech32Address, Proxy: proxy, - Codec: &parsers.MultiversxCodec{}, + Codec: &parsers.KCCodec{}, Filter: filter, Log: log, ExtraGasToExecute: cfg.ExtraGasToExecute, @@ -81,14 +81,14 @@ func NewScCallsModule(cfg config.ScCallsModuleConfig, log logger.Logger, chClose CloseAppChan: chCloseApp, TransactionChecks: cfg.TransactionChecks, } - module.executorInstance, err = kleverChain.NewScCallExecutor(argsExecutor) + module.executorInstance, err = kc.NewScCallExecutor(argsExecutor) if err != nil { return nil, err } argsPollingHandler := polling.ArgsPollingHandler{ Log: log, - Name: "MultiversX SC calls", + Name: "Klever Blockchain SC calls", PollingInterval: time.Duration(cfg.PollingIntervalInMillis) * time.Millisecond, PollingWhenError: time.Duration(cfg.PollingIntervalInMillis) * time.Millisecond, Executor: module.executorInstance, diff --git a/executors/kleverchain/module/scCallsModule_test.go b/executors/kleverBlockchain/module/scCallsModule_test.go similarity index 95% rename from executors/kleverchain/module/scCallsModule_test.go rename to executors/kleverBlockchain/module/scCallsModule_test.go index 32184e51..fc0d215e 100644 --- a/executors/kleverchain/module/scCallsModule_test.go +++ b/executors/kleverBlockchain/module/scCallsModule_test.go @@ -11,7 +11,7 @@ import ( func createTestConfigs() config.ScCallsModuleConfig { return config.ScCallsModuleConfig{ - ScProxyBech32Address: "erd1qqqqqqqqqqqqqpgqgftcwj09u0nhmskrw7xxqcqh8qmzwyexd8ss7ftcxx", + ScProxyBech32Address: "klv1qqqqqqqqqqqqqpgqu2jcktadaq8mmytwglc704yfv7rezv5usg8sgzuah3", ExtraGasToExecute: 6000000, MaxGasLimitToUse: 249999999, GasLimitForOutOfGasTransactions: 30000000, @@ -26,8 +26,8 @@ func createTestConfigs() config.ScCallsModuleConfig { Filter: config.PendingOperationsFilterConfig{ DeniedEthAddresses: nil, AllowedEthAddresses: []string{"*"}, - DeniedMvxAddresses: nil, - AllowedMvxAddresses: []string{"*"}, + DeniedKlvAddresses: nil, + AllowedKlvAddresses: []string{"*"}, DeniedTokens: nil, AllowedTokens: []string{"*"}, }, diff --git a/executors/kleverchain/scCallsExecutor.go b/executors/kleverBlockchain/scCallsExecutor.go similarity index 99% rename from executors/kleverchain/scCallsExecutor.go rename to executors/kleverBlockchain/scCallsExecutor.go index b278ab54..b0aa2912 100644 --- a/executors/kleverchain/scCallsExecutor.go +++ b/executors/kleverBlockchain/scCallsExecutor.go @@ -1,4 +1,4 @@ -package kleverchain +package kc import ( "context" diff --git a/executors/kleverchain/scCallsExecutor_test.go b/executors/kleverBlockchain/scCallsExecutor_test.go similarity index 98% rename from executors/kleverchain/scCallsExecutor_test.go rename to executors/kleverBlockchain/scCallsExecutor_test.go index 5ed38836..95afc17a 100644 --- a/executors/kleverchain/scCallsExecutor_test.go +++ b/executors/kleverBlockchain/scCallsExecutor_test.go @@ -1,4 +1,4 @@ -package kleverchain +package kc import ( "bytes" @@ -27,13 +27,13 @@ import ( "github.com/stretchr/testify/require" ) -var testCodec = &testsCommon.TestMultiversXCodec{} +var testCodec = &testsCommon.TestKCCodec{} func createMockArgsScCallExecutor() ArgsScCallExecutor { return ArgsScCallExecutor{ ScProxyBech32Address: "klv1qqqqqqqqqqqqqpgqql06jh2h6z598kyulvdu7u2d2aelx5j5sg8ss2cvn3", Proxy: &interactors.ProxyStub{}, - Codec: &testsCommon.MultiversxCodecStub{}, + Codec: &testsCommon.KCCodecStub{}, Filter: &testsCommon.ScCallsExecuteFilterStub{}, Log: &testsCommon.LoggerStub{}, ExtraGasToExecute: 100, @@ -344,7 +344,7 @@ func TestScCallExecutor_Execute(t *testing.T) { }, nil }, } - args.Codec = &testsCommon.MultiversxCodecStub{ + args.Codec = &testsCommon.KCCodecStub{ DecodeProxySCCompleteCallDataCalled: func(buff []byte) (parsers.ProxySCCompleteCallData, error) { assert.Equal(t, []byte{0x03, 0x04}, buff) addr, err := address.NewAddressFromBytes(bytes.Repeat([]byte{1}, 32)) @@ -381,7 +381,7 @@ func TestScCallExecutor_Execute(t *testing.T) { return nil, expectedError }, } - args.Codec = &testsCommon.MultiversxCodecStub{ + args.Codec = &testsCommon.KCCodecStub{ DecodeProxySCCompleteCallDataCalled: func(buff []byte) (parsers.ProxySCCompleteCallData, error) { assert.Equal(t, []byte{0x03, 0x04}, buff) @@ -428,7 +428,7 @@ func TestScCallExecutor_Execute(t *testing.T) { return &models.NetworkConfig{}, nil }, } - args.Codec = &testsCommon.MultiversxCodecStub{ + args.Codec = &testsCommon.KCCodecStub{ DecodeProxySCCompleteCallDataCalled: func(buff []byte) (parsers.ProxySCCompleteCallData, error) { assert.Equal(t, []byte{0x03, 0x04}, buff) @@ -475,7 +475,7 @@ func TestScCallExecutor_Execute(t *testing.T) { return &models.NetworkConfig{}, nil }, } - args.Codec = &testsCommon.MultiversxCodecStub{ + args.Codec = &testsCommon.KCCodecStub{ DecodeProxySCCompleteCallDataCalled: func(buff []byte) (parsers.ProxySCCompleteCallData, error) { assert.Equal(t, []byte{0x03, 0x04}, buff) @@ -526,7 +526,7 @@ func TestScCallExecutor_Execute(t *testing.T) { return &models.NetworkConfig{}, nil }, } - args.Codec = &testsCommon.MultiversxCodecStub{ + args.Codec = &testsCommon.KCCodecStub{ DecodeProxySCCompleteCallDataCalled: func(buff []byte) (parsers.ProxySCCompleteCallData, error) { assert.Equal(t, []byte{0x03, 0x04}, buff) @@ -591,7 +591,7 @@ func TestScCallExecutor_Execute(t *testing.T) { return transaction.Transaction_SUCCESS, nil }, } - args.Codec = &testsCommon.MultiversxCodecStub{ + args.Codec = &testsCommon.KCCodecStub{ DecodeProxySCCompleteCallDataCalled: func(buff []byte) (parsers.ProxySCCompleteCallData, error) { if string(buff) == "ProxySCCompleteCallData 1" { return createTestProxySCCompleteCallData("tkn1"), nil @@ -693,7 +693,7 @@ func TestScCallExecutor_Execute(t *testing.T) { }, nil }, } - args.Codec = &testsCommon.MultiversxCodecStub{ + args.Codec = &testsCommon.KCCodecStub{ DecodeProxySCCompleteCallDataCalled: func(buff []byte) (parsers.ProxySCCompleteCallData, error) { if string(buff) == "ProxySCCompleteCallData 1" { return createTestProxySCCompleteCallData("tkn1"), nil @@ -790,7 +790,7 @@ func TestScCallExecutor_Execute(t *testing.T) { }, nil }, } - args.Codec = &testsCommon.MultiversxCodecStub{ + args.Codec = &testsCommon.KCCodecStub{ DecodeProxySCCompleteCallDataCalled: func(buff []byte) (parsers.ProxySCCompleteCallData, error) { if string(buff) == "ProxySCCompleteCallData 1" { return createTestProxySCCompleteCallData("tkn1"), nil @@ -883,7 +883,7 @@ func TestScCallExecutor_Execute(t *testing.T) { }, nil }, } - args.Codec = &testsCommon.MultiversxCodecStub{ + args.Codec = &testsCommon.KCCodecStub{ DecodeProxySCCompleteCallDataCalled: func(buff []byte) (parsers.ProxySCCompleteCallData, error) { if string(buff) == "ProxySCCompleteCallData 1" { return createTestProxySCCompleteCallData("tkn1"), nil diff --git a/factory/ethKleverBridgeComponents.go b/factory/ethKcBridgeComponents.go similarity index 80% rename from factory/ethKleverBridgeComponents.go rename to factory/ethKcBridgeComponents.go index 15518534..0df774a8 100644 --- a/factory/ethKleverBridgeComponents.go +++ b/factory/ethKcBridgeComponents.go @@ -10,11 +10,11 @@ import ( "github.com/ethereum/go-ethereum/common" "github.com/klever-io/klever-go/tools" - ethklever "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX" - "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX/disabled" - ethtoklever "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX/steps/ethToMultiversX" - multiversxtoeth "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX/steps/multiversxToEth" - "github.com/klever-io/klv-bridge-eth-go/bridges/ethMultiversX/topology" + ethklever "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC" + "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC/disabled" + ethtoklever "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC/steps/ethToKC" + kctoeth "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC/steps/kcToEth" + "github.com/klever-io/klv-bridge-eth-go/bridges/ethKC/topology" "github.com/klever-io/klv-bridge-eth-go/clients" balanceValidatorManagement "github.com/klever-io/klv-bridge-eth-go/clients/balanceValidator" "github.com/klever-io/klv-bridge-eth-go/clients/chain" @@ -74,7 +74,7 @@ type ethKleverBridgeComponents struct { baseLogger logger.Logger messenger p2p.NetMessenger statusStorer core.Storer - multiversXClient ethklever.MultiversXClient + kcClient ethklever.KCClient ethClient ethklever.EthereumClient evmCompatibleChain chain.Chain kleverMultisigContractAddress address.Address @@ -82,7 +82,7 @@ type ethKleverBridgeComponents struct { kleverRelayerPrivateKey crypto.PrivateKey kleverRelayerAddress address.Address ethereumRelayerAddress common.Address - mxDataGetter dataGetter + klvDataGetter dataGetter proxy proxy.Proxy kleverRoleProvider KleverRoleProvider ethereumRoleProvider EthereumRoleProvider @@ -98,10 +98,10 @@ type ethKleverBridgeComponents struct { ethtoKleverStateMachine StateMachine ethtoKleverSignaturesHolder ethklever.SignaturesHolder - multiversXToEthMachineStates core.MachineStates - multiversXToEthStepDuration time.Duration - multiversXToEthStatusHandler core.StatusHandler - multiversXToEthStateMachine StateMachine + kcToEthMachineStates core.MachineStates + kcToEthStepDuration time.Duration + kcToEthStatusHandler core.StatusHandler + kcToEthStateMachine StateMachine mutClosableHandlers sync.RWMutex closableHandlers []io.Closer @@ -113,7 +113,7 @@ type ethKleverBridgeComponents struct { appStatusHandler chainCore.AppStatusHandler } -// NewethKleverBridgeComponents creates a new eth-multiversx bridge components holder +// NewethKleverBridgeComponents creates a new eth-kc bridge components holder func NewEthKleverBridgeComponents(args ArgsEthereumToKleverBridge) (*ethKleverBridgeComponents, error) { err := checkArgsEthereumToKleverBridge(args) if err != nil { @@ -159,7 +159,7 @@ func NewEthKleverBridgeComponents(args ArgsEthereumToKleverBridge) (*ethKleverBr return nil, err } - err = components.createMultiversXClient(args) + err = components.createKCClient(args) if err != nil { return nil, err } @@ -184,12 +184,12 @@ func NewEthKleverBridgeComponents(args ArgsEthereumToKleverBridge) (*ethKleverBr return nil, err } - err = components.createMultiversXToEthereumBridge(args) + err = components.createKCToEthereumBridge(args) if err != nil { return nil, err } - err = components.createMultiversXToEthereumStateMachine() + err = components.createKCToEthereumStateMachine() if err != nil { return nil, err } @@ -272,33 +272,33 @@ func (components *ethKleverBridgeComponents) createKleverKeysAndAddresses(chainC } func (components *ethKleverBridgeComponents) createDataGetter() error { - multiversXDataGetterLogId := components.evmCompatibleChain.KleverBlockchainDataGetterLogId() + kcDataGetterLogId := components.evmCompatibleChain.KleverBlockchainDataGetterLogId() argsKLVClientDataGetter := klever.ArgsKLVClientDataGetter{ MultisigContractAddress: components.kleverMultisigContractAddress, SafeContractAddress: components.kleverSafeContractAddress, RelayerAddress: components.kleverRelayerAddress, Proxy: components.proxy, - Log: core.NewLoggerWithIdentifier(logger.GetOrCreate(multiversXDataGetterLogId), multiversXDataGetterLogId), + Log: core.NewLoggerWithIdentifier(logger.GetOrCreate(kcDataGetterLogId), kcDataGetterLogId), } var err error - components.mxDataGetter, err = klever.NewKLVClientDataGetter(argsKLVClientDataGetter) + components.klvDataGetter, err = klever.NewKLVClientDataGetter(argsKLVClientDataGetter) return err } -func (components *ethKleverBridgeComponents) createMultiversXClient(args ArgsEthereumToKleverBridge) error { +func (components *ethKleverBridgeComponents) createKCClient(args ArgsEthereumToKleverBridge) error { chainConfigs := args.Configs.GeneralConfig.Klever - tokensMapper, err := mappers.NewMultiversXToErc20Mapper(components.mxDataGetter) + tokensMapper, err := mappers.NewKCToErc20Mapper(components.klvDataGetter) if err != nil { return err } - multiversXClientLogId := components.evmCompatibleChain.KleverBlockchainClientLogId() + kcClientLogId := components.evmCompatibleChain.KleverBlockchainClientLogId() clientArgs := klever.ClientArgs{ GasMapConfig: chainConfigs.GasMap, Proxy: args.Proxy, - Log: core.NewLoggerWithIdentifier(logger.GetOrCreate(multiversXClientLogId), multiversXClientLogId), + Log: core.NewLoggerWithIdentifier(logger.GetOrCreate(kcClientLogId), kcClientLogId), RelayerPrivateKey: components.kleverRelayerPrivateKey, MultisigContractAddress: components.kleverMultisigContractAddress, SafeContractAddress: components.kleverSafeContractAddress, @@ -309,8 +309,8 @@ func (components *ethKleverBridgeComponents) createMultiversXClient(args ArgsEth ClientAvailabilityAllowDelta: chainConfigs.ClientAvailabilityAllowDelta, } - components.multiversXClient, err = klever.NewClient(clientArgs) - components.addClosableComponent(components.multiversXClient) + components.kcClient, err = klever.NewClient(clientArgs) + components.addClosableComponent(components.kcClient) return err } @@ -354,15 +354,15 @@ func (components *ethKleverBridgeComponents) createEthereumClient(args ArgsEther broadcasterLogId := components.evmCompatibleChain.BroadcasterLogId() ethtokleverName := components.evmCompatibleChain.EvmCompatibleChainToKleverBlockchainName() argsBroadcaster := p2p.ArgsBroadcaster{ - Messenger: args.Messenger, - Log: core.NewLoggerWithIdentifier(logger.GetOrCreate(broadcasterLogId), broadcasterLogId), - MultiversXRoleProvider: components.kleverRoleProvider, - SignatureProcessor: components.ethereumRoleProvider, - KeyGen: keyGen, - SingleSigner: singleSigner, - PrivateKey: components.kleverRelayerPrivateKey, - Name: ethtokleverName, - AntifloodComponents: antifloodComponents, + Messenger: args.Messenger, + Log: core.NewLoggerWithIdentifier(logger.GetOrCreate(broadcasterLogId), broadcasterLogId), + KCRoleProvider: components.kleverRoleProvider, + SignatureProcessor: components.ethereumRoleProvider, + KeyGen: keyGen, + SingleSigner: singleSigner, + PrivateKey: components.kleverRelayerPrivateKey, + Name: ethtokleverName, + AntifloodComponents: antifloodComponents, } components.broadcaster, err = p2p.NewBroadcaster(argsBroadcaster) @@ -377,7 +377,7 @@ func (components *ethKleverBridgeComponents) createEthereumClient(args ArgsEther components.ethereumRelayerAddress = cryptoHandler.GetAddress() - tokensMapper, err := mappers.NewErc20ToMultiversXMapper(components.mxDataGetter) + tokensMapper, err := mappers.NewErc20ToKCMapper(components.klvDataGetter) if err != nil { return err } @@ -417,11 +417,11 @@ func (components *ethKleverBridgeComponents) createEthereumClient(args ArgsEther func (components *ethKleverBridgeComponents) createKleverRoleProvider(args ArgsEthereumToKleverBridge) error { configs := args.Configs.GeneralConfig - multiversXRoleProviderLogId := components.evmCompatibleChain.KleverBlockchainRoleProviderLogId() - log := core.NewLoggerWithIdentifier(logger.GetOrCreate(multiversXRoleProviderLogId), multiversXRoleProviderLogId) + kcRoleProviderLogId := components.evmCompatibleChain.KleverBlockchainRoleProviderLogId() + log := core.NewLoggerWithIdentifier(logger.GetOrCreate(kcRoleProviderLogId), kcRoleProviderLogId) argsRoleProvider := roleproviders.ArgsKleverRoleProvider{ - DataGetter: components.mxDataGetter, + DataGetter: components.klvDataGetter, Log: log, } @@ -527,17 +527,17 @@ func (components *ethKleverBridgeComponents) createEthereumToKleverBlockchainBri } argsBridgeExecutor := ethklever.ArgsBridgeExecutor{ - Log: log, - TopologyProvider: topologyHandler, - MultiversXClient: components.multiversXClient, - EthereumClient: components.ethClient, - StatusHandler: components.ethtoKleverStatusHandler, - TimeForWaitOnEthereum: timeForTransferExecution, - SignaturesHolder: disabled.NewDisabledSignaturesHolder(), - BalanceValidator: balanceValidator, - MaxQuorumRetriesOnEthereum: args.Configs.GeneralConfig.Eth.MaxRetriesOnQuorumReached, - MaxQuorumRetriesOnMultiversX: args.Configs.GeneralConfig.Klever.MaxRetriesOnQuorumReached, - MaxRestriesOnWasProposed: args.Configs.GeneralConfig.Klever.MaxRetriesOnWasTransferProposed, + Log: log, + TopologyProvider: topologyHandler, + KCClient: components.kcClient, + EthereumClient: components.ethClient, + StatusHandler: components.ethtoKleverStatusHandler, + TimeForWaitOnEthereum: timeForTransferExecution, + SignaturesHolder: disabled.NewDisabledSignaturesHolder(), + BalanceValidator: balanceValidator, + MaxQuorumRetriesOnEthereum: args.Configs.GeneralConfig.Eth.MaxRetriesOnQuorumReached, + MaxQuorumRetriesOnKC: args.Configs.GeneralConfig.Klever.MaxRetriesOnQuorumReached, + MaxRetriesOnWasProposed: args.Configs.GeneralConfig.Klever.MaxRetriesOnWasTransferProposed, } bridge, err := ethklever.NewBridgeExecutor(argsBridgeExecutor) @@ -553,16 +553,16 @@ func (components *ethKleverBridgeComponents) createEthereumToKleverBlockchainBri return nil } -func (components *ethKleverBridgeComponents) createMultiversXToEthereumBridge(args ArgsEthereumToKleverBridge) error { - multiversXToEthName := components.evmCompatibleChain.KleverBlockchainToEvmCompatibleChainName() - log := core.NewLoggerWithIdentifier(logger.GetOrCreate(multiversXToEthName), multiversXToEthName) +func (components *ethKleverBridgeComponents) createKCToEthereumBridge(args ArgsEthereumToKleverBridge) error { + kcToEthName := components.evmCompatibleChain.KleverBlockchainToEvmCompatibleChainName() + log := core.NewLoggerWithIdentifier(logger.GetOrCreate(kcToEthName), kcToEthName) - configs, found := args.Configs.GeneralConfig.StateMachine[multiversXToEthName] + configs, found := args.Configs.GeneralConfig.StateMachine[kcToEthName] if !found { - return fmt.Errorf("%w for %q", errMissingConfig, multiversXToEthName) + return fmt.Errorf("%w for %q", errMissingConfig, kcToEthName) } - components.multiversXToEthStepDuration = time.Duration(configs.StepDurationInMillis) * time.Millisecond + components.kcToEthStepDuration = time.Duration(configs.StepDurationInMillis) * time.Millisecond argsTopologyHandler := topology.ArgsTopologyHandler{ PublicKeysProvider: components.kleverRoleProvider, Timer: components.timer, @@ -577,12 +577,12 @@ func (components *ethKleverBridgeComponents) createMultiversXToEthereumBridge(ar return err } - components.multiversXToEthStatusHandler, err = status.NewStatusHandler(multiversXToEthName, components.statusStorer) + components.kcToEthStatusHandler, err = status.NewStatusHandler(kcToEthName, components.statusStorer) if err != nil { return err } - err = components.metricsHolder.AddStatusHandler(components.multiversXToEthStatusHandler) + err = components.metricsHolder.AddStatusHandler(components.kcToEthStatusHandler) if err != nil { return err } @@ -595,17 +595,17 @@ func (components *ethKleverBridgeComponents) createMultiversXToEthereumBridge(ar } argsBridgeExecutor := ethklever.ArgsBridgeExecutor{ - Log: log, - TopologyProvider: topologyHandler, - MultiversXClient: components.multiversXClient, - EthereumClient: components.ethClient, - StatusHandler: components.multiversXToEthStatusHandler, - TimeForWaitOnEthereum: timeForWaitOnEthereum, - SignaturesHolder: components.ethtoKleverSignaturesHolder, - BalanceValidator: balanceValidator, - MaxQuorumRetriesOnEthereum: args.Configs.GeneralConfig.Eth.MaxRetriesOnQuorumReached, - MaxQuorumRetriesOnMultiversX: args.Configs.GeneralConfig.Klever.MaxRetriesOnQuorumReached, - MaxRestriesOnWasProposed: args.Configs.GeneralConfig.Klever.MaxRetriesOnWasTransferProposed, + Log: log, + TopologyProvider: topologyHandler, + KCClient: components.kcClient, + EthereumClient: components.ethClient, + StatusHandler: components.kcToEthStatusHandler, + TimeForWaitOnEthereum: timeForWaitOnEthereum, + SignaturesHolder: components.ethtoKleverSignaturesHolder, + BalanceValidator: balanceValidator, + MaxQuorumRetriesOnEthereum: args.Configs.GeneralConfig.Eth.MaxRetriesOnQuorumReached, + MaxQuorumRetriesOnKC: args.Configs.GeneralConfig.Klever.MaxRetriesOnQuorumReached, + MaxRetriesOnWasProposed: args.Configs.GeneralConfig.Klever.MaxRetriesOnWasTransferProposed, } bridge, err := ethklever.NewBridgeExecutor(argsBridgeExecutor) @@ -613,7 +613,7 @@ func (components *ethKleverBridgeComponents) createMultiversXToEthereumBridge(ar return err } - components.multiversXToEthMachineStates, err = multiversxtoeth.CreateSteps(bridge) + components.kcToEthMachineStates, err = kctoeth.CreateSteps(bridge) if err != nil { return err } @@ -663,9 +663,9 @@ func (components *ethKleverBridgeComponents) Start() error { func (components *ethKleverBridgeComponents) createBalanceValidator() (ethklever.BalanceValidator, error) { argsBalanceValidator := balanceValidatorManagement.ArgsBalanceValidator{ - Log: components.baseLogger, - MultiversXClient: components.multiversXClient, - EthereumClient: components.ethClient, + Log: components.baseLogger, + KCClient: components.kcClient, + EthereumClient: components.ethClient, } return balanceValidatorManagement.NewBalanceValidator(argsBalanceValidator) @@ -708,30 +708,30 @@ func (components *ethKleverBridgeComponents) createEthereumToKleverBlockchainSta return nil } -func (components *ethKleverBridgeComponents) createMultiversXToEthereumStateMachine() error { - multiversXToEthName := components.evmCompatibleChain.KleverBlockchainToEvmCompatibleChainName() - log := core.NewLoggerWithIdentifier(logger.GetOrCreate(multiversXToEthName), multiversXToEthName) +func (components *ethKleverBridgeComponents) createKCToEthereumStateMachine() error { + kcToEthName := components.evmCompatibleChain.KleverBlockchainToEvmCompatibleChainName() + log := core.NewLoggerWithIdentifier(logger.GetOrCreate(kcToEthName), kcToEthName) argsStateMachine := stateMachine.ArgsStateMachine{ - StateMachineName: multiversXToEthName, - Steps: components.multiversXToEthMachineStates, - StartStateIdentifier: multiversxtoeth.GettingPendingBatchFromMultiversX, + StateMachineName: kcToEthName, + Steps: components.kcToEthMachineStates, + StartStateIdentifier: kctoeth.GettingPendingBatchFromKC, Log: log, - StatusHandler: components.multiversXToEthStatusHandler, + StatusHandler: components.kcToEthStatusHandler, } var err error - components.multiversXToEthStateMachine, err = stateMachine.NewStateMachine(argsStateMachine) + components.kcToEthStateMachine, err = stateMachine.NewStateMachine(argsStateMachine) if err != nil { return err } argsPollingHandler := polling.ArgsPollingHandler{ Log: log, - Name: multiversXToEthName + " State machine", - PollingInterval: components.multiversXToEthStepDuration, + Name: kcToEthName + " State machine", + PollingInterval: components.kcToEthStepDuration, PollingWhenError: pollingDurationOnError, - Executor: components.multiversXToEthStateMachine, + Executor: components.kcToEthStateMachine, } pollingHandler, err := polling.NewPollingHandler(argsPollingHandler) diff --git a/factory/ethKleverBridgeComponents_test.go b/factory/ethKcBridgeComponents_test.go similarity index 99% rename from factory/ethKleverBridgeComponents_test.go rename to factory/ethKcBridgeComponents_test.go index 7ebd60ca..b247a83f 100644 --- a/factory/ethKleverBridgeComponents_test.go +++ b/factory/ethKcBridgeComponents_test.go @@ -261,7 +261,7 @@ func TestNewEthKleverBridgeComponents(t *testing.T) { require.NotNil(t, components) require.Equal(t, 7, len(components.closableHandlers)) require.False(t, check.IfNil(components.ethtoKleverStatusHandler)) - require.False(t, check.IfNil(components.multiversXToEthStatusHandler)) + require.False(t, check.IfNil(components.kcToEthStatusHandler)) }) } diff --git a/integrationTests/broadcaster/broadcaster_test.go b/integrationTests/broadcaster/broadcaster_test.go index 556b9c17..8873e6bc 100644 --- a/integrationTests/broadcaster/broadcaster_test.go +++ b/integrationTests/broadcaster/broadcaster_test.go @@ -203,15 +203,15 @@ func createBroadcaster( require.Nil(t, err) args := p2p.ArgsBroadcaster{ - Messenger: messenger, - Log: integrationTests.Log, - MultiversXRoleProvider: roleProvider, - KeyGen: integrationTests.TestKeyGenerator, - SingleSigner: integrationTests.TestSingleSigner, - PrivateKey: privateKey, - SignatureProcessor: &testsCommon.SignatureProcessorStub{}, - Name: "test", - AntifloodComponents: ac, + Messenger: messenger, + Log: integrationTests.Log, + KCRoleProvider: roleProvider, + KeyGen: integrationTests.TestKeyGenerator, + SingleSigner: integrationTests.TestSingleSigner, + PrivateKey: privateKey, + SignatureProcessor: &testsCommon.SignatureProcessorStub{}, + Name: "test", + AntifloodComponents: ac, } b, err := p2p.NewBroadcaster(args) diff --git a/integrationTests/mock/KleverChainMock.go b/integrationTests/mock/KcMock.go similarity index 100% rename from integrationTests/mock/KleverChainMock.go rename to integrationTests/mock/KcMock.go diff --git a/integrationTests/mock/KleverContractStateMock.go b/integrationTests/mock/KleverContractStateMock.go index 110d4bd5..da6867ca 100644 --- a/integrationTests/mock/KleverContractStateMock.go +++ b/integrationTests/mock/KleverContractStateMock.go @@ -66,7 +66,7 @@ type kleverBlockchainContractStateMock struct { lastExecutedEthBatchId uint64 lastExecutedEthTxId uint64 - ProposeMultiTransferEsdtBatchCalled func() + ProposeMultiTransferKdaBatchCalled func() } func newKleverBlockchainContractStateMock() *kleverBlockchainContractStateMock { @@ -92,12 +92,12 @@ func (mock *kleverBlockchainContractStateMock) processTransaction(tx *transactio dataSplit := strings.Split(string(tx.GetRawData().GetData()[0]), "@") funcName := dataSplit[0] switch funcName { - case "proposeEsdtSafeSetCurrentTransactionBatchStatus": - mock.proposeEsdtSafeSetCurrentTransactionBatchStatus(dataSplit, tx) + case "proposeKdaSafeSetCurrentTransactionBatchStatus": + mock.proposeKdaSafeSetCurrentTransactionBatchStatus(dataSplit, tx) return - case "proposeMultiTransferEsdtBatch": - mock.proposeMultiTransferEsdtBatch(dataSplit, tx) + case "proposeMultiTransferKdaBatch": + mock.proposeMultiTransferKdaBatch(dataSplit, tx) return case "sign": mock.sign(dataSplit, tx) @@ -114,19 +114,19 @@ func (mock *kleverBlockchainContractStateMock) processTransaction(tx *transactio panic("can not execute transaction that calls function: " + funcName) } -func (mock *kleverBlockchainContractStateMock) proposeEsdtSafeSetCurrentTransactionBatchStatus(dataSplit []string, _ *transaction.Transaction) { +func (mock *kleverBlockchainContractStateMock) proposeKdaSafeSetCurrentTransactionBatchStatus(dataSplit []string, _ *transaction.Transaction) { status, hash := mock.createProposedStatus(dataSplit) mock.proposedStatus[hash] = status } -func (mock *kleverBlockchainContractStateMock) proposeMultiTransferEsdtBatch(dataSplit []string, _ *transaction.Transaction) { +func (mock *kleverBlockchainContractStateMock) proposeMultiTransferKdaBatch(dataSplit []string, _ *transaction.Transaction) { transfer, hash := mock.createProposedTransfer(dataSplit) mock.proposedTransfers[hash] = transfer - if mock.ProposeMultiTransferEsdtBatchCalled != nil { - mock.ProposeMultiTransferEsdtBatchCalled() + if mock.ProposeMultiTransferKdaBatchCalled != nil { + mock.ProposeMultiTransferKdaBatchCalled() } } diff --git a/integrationTests/mock/ethereumChainMock.go b/integrationTests/mock/ethereumChainMock.go index 6b7beab4..34f81037 100644 --- a/integrationTests/mock/ethereumChainMock.go +++ b/integrationTests/mock/ethereumChainMock.go @@ -28,25 +28,25 @@ type EthereumProposedTransfer struct { // EthereumChainMock - type EthereumChainMock struct { - mutState sync.RWMutex - nonces map[common.Address]uint64 - batches map[uint64]*contract.Batch - deposits map[uint64][]contract.Deposit - proposedTransfer *EthereumProposedTransfer - totalBalances map[common.Address]*big.Int - mintBalances map[common.Address]*big.Int - burnBalances map[common.Address]*big.Int - mintBurnTokens map[common.Address]bool - nativeTokens map[common.Address]bool - whitelistedTokens map[common.Address]bool - GetStatusesAfterExecutionHandler func() ([]byte, bool) - ProcessFinishedHandler func() - quorum int - relayers []common.Address - ProposeMultiTransferEsdtBatchCalled func() - BalanceAtCalled func(ctx context.Context, account common.Address, blockNumber *big.Int) (*big.Int, error) - FilterLogsCalled func(ctx context.Context, q ethereum.FilterQuery) ([]types.Log, error) - finalNonce uint64 + mutState sync.RWMutex + nonces map[common.Address]uint64 + batches map[uint64]*contract.Batch + deposits map[uint64][]contract.Deposit + proposedTransfer *EthereumProposedTransfer + totalBalances map[common.Address]*big.Int + mintBalances map[common.Address]*big.Int + burnBalances map[common.Address]*big.Int + mintBurnTokens map[common.Address]bool + nativeTokens map[common.Address]bool + whitelistedTokens map[common.Address]bool + GetStatusesAfterExecutionHandler func() ([]byte, bool) + ProcessFinishedHandler func() + quorum int + relayers []common.Address + ProposeMultiTransferKdaBatchCalled func() + BalanceAtCalled func(ctx context.Context, account common.Address, blockNumber *big.Int) (*big.Int, error) + FilterLogsCalled func(ctx context.Context, q ethereum.FilterQuery) ([]types.Log, error) + finalNonce uint64 } // NewEthereumChainMock - @@ -232,8 +232,8 @@ func (mock *EthereumChainMock) ExecuteTransfer(_ *bind.TransactOpts, tokens []co mock.proposedTransfer = proposedTransfer mock.mutState.Unlock() - if mock.ProposeMultiTransferEsdtBatchCalled != nil { - mock.ProposeMultiTransferEsdtBatchCalled() + if mock.ProposeMultiTransferKdaBatchCalled != nil { + mock.ProposeMultiTransferKdaBatchCalled() } return tx, nil diff --git a/integrationTests/mock/tokensRegistryMock.go b/integrationTests/mock/tokensRegistryMock.go index 97693ad0..909370d7 100644 --- a/integrationTests/mock/tokensRegistryMock.go +++ b/integrationTests/mock/tokensRegistryMock.go @@ -10,13 +10,13 @@ import ( // tokensRegistryMock is not concurrent safe type tokensRegistryMock struct { - ethToMultiversX map[common.Address]string - multiversXToEth map[string]common.Address - mintBurnTokens map[string]bool - nativeTokens map[string]bool - totalBalances map[string]*big.Int - mintBalances map[string]*big.Int - burnBalances map[string]*big.Int + ethToKC map[common.Address]string + kcToEth map[string]common.Address + mintBurnTokens map[string]bool + nativeTokens map[string]bool + totalBalances map[string]*big.Int + mintBalances map[string]*big.Int + burnBalances map[string]*big.Int } func (mock *tokensRegistryMock) addTokensPair(erc20Address common.Address, ticker string, isNativeToken, isMintBurnToken bool, totalBalance, mintBalances, burnBalances *big.Int) { @@ -24,10 +24,10 @@ func (mock *tokensRegistryMock) addTokensPair(erc20Address common.Address, ticke "erc20 address", erc20Address.String(), "is native token", isNativeToken, "is mint burn token", isMintBurnToken, "total balance", totalBalance, "mint balances", mintBalances, "burn balances", burnBalances) - mock.ethToMultiversX[erc20Address] = ticker + mock.ethToKC[erc20Address] = ticker hexedTicker := hex.EncodeToString([]byte(ticker)) - mock.multiversXToEth[hexedTicker] = erc20Address + mock.kcToEth[hexedTicker] = erc20Address if isNativeToken { mock.nativeTokens[hexedTicker] = true @@ -42,8 +42,8 @@ func (mock *tokensRegistryMock) addTokensPair(erc20Address common.Address, ticke } func (mock *tokensRegistryMock) clearTokens() { - mock.ethToMultiversX = make(map[common.Address]string) - mock.multiversXToEth = make(map[string]common.Address) + mock.ethToKC = make(map[common.Address]string) + mock.kcToEth = make(map[string]common.Address) mock.mintBurnTokens = make(map[string]bool) mock.nativeTokens = make(map[string]bool) mock.totalBalances = make(map[string]*big.Int) @@ -52,7 +52,7 @@ func (mock *tokensRegistryMock) clearTokens() { } func (mock *tokensRegistryMock) getTicker(erc20Address common.Address) string { - ticker, found := mock.ethToMultiversX[erc20Address] + ticker, found := mock.ethToKC[erc20Address] if !found { panic("tiker for erc20 address " + erc20Address.String() + " not found") } @@ -61,7 +61,7 @@ func (mock *tokensRegistryMock) getTicker(erc20Address common.Address) string { } func (mock *tokensRegistryMock) getErc20Address(ticker string) common.Address { - addr, found := mock.multiversXToEth[ticker] + addr, found := mock.kcToEth[ticker] if !found { panic("erc20 address for ticker " + ticker + " not found") } diff --git a/integrationTests/relayers/ethToKleverBlockchain_test.go b/integrationTests/relayers/ethToKc_test.go similarity index 81% rename from integrationTests/relayers/ethToKleverBlockchain_test.go rename to integrationTests/relayers/ethToKc_test.go index f3c9aa7a..39ad6099 100644 --- a/integrationTests/relayers/ethToKleverBlockchain_test.go +++ b/integrationTests/relayers/ethToKc_test.go @@ -34,20 +34,20 @@ type argsForSCCallsTest struct { expectedScCallData []byte } -func TestRelayersShouldExecuteTransfersFromEthToMultiversX(t *testing.T) { +func TestRelayersShouldExecuteTransfersFromEthToKC(t *testing.T) { if testing.Short() { t.Skip("this is not a short test") } t.Run("simple tokens transfers", func(t *testing.T) { - testRelayersShouldExecuteTransfersFromEthToMultiversX(t, false) + testRelayersShouldExecuteTransfersFromEthToKC(t, false) }) t.Run("native tokens transfers", func(t *testing.T) { - testRelayersShouldExecuteTransfersFromEthToMultiversX(t, true) + testRelayersShouldExecuteTransfersFromEthToKC(t, true) }) } -func testRelayersShouldExecuteTransfersFromEthToMultiversX(t *testing.T, withNativeTokens bool) { +func testRelayersShouldExecuteTransfersFromEthToKC(t *testing.T, withNativeTokens bool) { safeContractEthAddress := testsCommon.CreateRandomEthereumAddress() token1Erc20 := testsCommon.CreateRandomEthereumAddress() ticker1 := "tck-000001" @@ -56,11 +56,11 @@ func testRelayersShouldExecuteTransfersFromEthToMultiversX(t *testing.T, withNat ticker2 := "tck-000002" value1 := big.NewInt(111111111) - destination1 := testsCommon.CreateRandomMultiversXAddress() + destination1 := testsCommon.CreateRandomKCAddress() depositor1 := testsCommon.CreateRandomEthereumAddress() value2 := big.NewInt(222222222) - destination2 := testsCommon.CreateRandomMultiversXAddress() + destination2 := testsCommon.CreateRandomKCAddress() depositor2 := testsCommon.CreateRandomEthereumAddress() tokens := []common.Address{token1Erc20, token2Erc20} @@ -100,7 +100,7 @@ func testRelayersShouldExecuteTransfersFromEthToMultiversX(t *testing.T, withNat ethereumChainMock.SetQuorum(numRelayers) ethereumChainMock.SetFinalNonce(batchNonceOnEthereum + 1) - multiversXChainMock := mock.NewKleverBlockchainMock() + kcChainMock := mock.NewKleverBlockchainMock() if !withNativeTokens { ethereumChainMock.UpdateNativeTokens(token1Erc20, true) @@ -111,8 +111,8 @@ func testRelayersShouldExecuteTransfersFromEthToMultiversX(t *testing.T, withNat ethereumChainMock.UpdateMintBurnTokens(token2Erc20, false) ethereumChainMock.UpdateTotalBalances(token2Erc20, value2) - multiversXChainMock.AddTokensPair(token1Erc20, ticker1, withNativeTokens, true, zero, zero, zero) - multiversXChainMock.AddTokensPair(token2Erc20, ticker2, withNativeTokens, true, zero, zero, zero) + kcChainMock.AddTokensPair(token1Erc20, ticker1, withNativeTokens, true, zero, zero, zero) + kcChainMock.AddTokensPair(token2Erc20, ticker2, withNativeTokens, true, zero, zero, zero) } else { ethereumChainMock.UpdateNativeTokens(token1Erc20, false) ethereumChainMock.UpdateMintBurnTokens(token1Erc20, true) @@ -124,16 +124,16 @@ func testRelayersShouldExecuteTransfersFromEthToMultiversX(t *testing.T, withNat ethereumChainMock.UpdateBurnBalances(token2Erc20, value2) ethereumChainMock.UpdateMintBalances(token2Erc20, value2) - multiversXChainMock.AddTokensPair(token1Erc20, ticker1, withNativeTokens, true, zero, zero, value1) - multiversXChainMock.AddTokensPair(token2Erc20, ticker2, withNativeTokens, true, zero, zero, value2) + kcChainMock.AddTokensPair(token1Erc20, ticker1, withNativeTokens, true, zero, zero, value1) + kcChainMock.AddTokensPair(token2Erc20, ticker2, withNativeTokens, true, zero, zero, value2) } - multiversXChainMock.SetLastExecutedEthBatchID(batchNonceOnEthereum) - multiversXChainMock.SetLastExecutedEthTxId(txNonceOnEthereum) - multiversXChainMock.GetStatusesAfterExecutionHandler = func() []byte { + kcChainMock.SetLastExecutedEthBatchID(batchNonceOnEthereum) + kcChainMock.SetLastExecutedEthTxId(txNonceOnEthereum) + kcChainMock.GetStatusesAfterExecutionHandler = func() []byte { return []byte{bridgeCore.Executed, bridgeCore.Rejected} } - multiversXChainMock.SetQuorum(numRelayers) + kcChainMock.SetQuorum(numRelayers) relayers := make([]bridgeComponents, 0, numRelayers) defer closeRelayers(relayers) @@ -142,19 +142,19 @@ func testRelayersShouldExecuteTransfersFromEthToMultiversX(t *testing.T, withNat ctx, cancel := context.WithTimeout(context.Background(), time.Second*120) defer cancel() - multiversXChainMock.ProcessFinishedHandler = func() { - log.Info("multiversXChainMock.ProcessFinishedHandler called") + kcChainMock.ProcessFinishedHandler = func() { + log.Info("kcChainMock.ProcessFinishedHandler called") asyncCancelCall(cancel, time.Second*5) } for i := 0; i < numRelayers; i++ { - argsBridgeComponents := createMockBridgeComponentsArgs(i, messengers[i], multiversXChainMock, ethereumChainMock) + argsBridgeComponents := createMockBridgeComponentsArgs(i, messengers[i], kcChainMock, ethereumChainMock) argsBridgeComponents.Configs.GeneralConfig.Eth.SafeContractAddress = safeContractEthAddress.Hex() argsBridgeComponents.Erc20ContractsHolder = erc20ContractsHolder relayer, err := factory.NewEthKleverBridgeComponents(argsBridgeComponents) require.Nil(t, err) - multiversXChainMock.AddRelayer(relayer.KleverRelayerAddress()) + kcChainMock.AddRelayer(relayer.KleverRelayerAddress()) ethereumChainMock.AddRelayer(relayer.EthereumRelayerAddress()) go func() { @@ -169,8 +169,8 @@ func testRelayersShouldExecuteTransfersFromEthToMultiversX(t *testing.T, withNat <-ctx.Done() time.Sleep(time.Second * 5) - assert.NotNil(t, multiversXChainMock.PerformedActionID()) - transfer := multiversXChainMock.ProposedTransfer() + assert.NotNil(t, kcChainMock.PerformedActionID()) + transfer := kcChainMock.ProposedTransfer() require.NotNil(t, transfer) require.Equal(t, 2, len(transfer.Transfers)) assert.Equal(t, batchNonceOnEthereum+1, transfer.BatchId.Uint64()) @@ -190,7 +190,7 @@ func testRelayersShouldExecuteTransfersFromEthToMultiversX(t *testing.T, withNat assert.Equal(t, []byte{bridgeCore.MissingDataProtocolMarker}, transfer.Transfers[1].Data) } -func TestRelayersShouldExecuteTransferFromEthToMultiversXHavingTxsWithSCcalls(t *testing.T) { +func TestRelayersShouldExecuteTransferFromEthToKCHavingTxsWithSCcalls(t *testing.T) { if testing.Short() { t.Skip("this is not a short test") } @@ -201,7 +201,7 @@ func TestRelayersShouldExecuteTransferFromEthToMultiversXHavingTxsWithSCcalls(t expectedScCallData: bridge.CallDataMock, } - testRelayersShouldExecuteTransferFromEthToMultiversXHavingTxsWithSCcalls(t, testArgs) + testRelayersShouldExecuteTransferFromEthToKCHavingTxsWithSCcalls(t, testArgs) }) t.Run("no SC call", func(t *testing.T) { testArgs := argsForSCCallsTest{ @@ -209,11 +209,11 @@ func TestRelayersShouldExecuteTransferFromEthToMultiversXHavingTxsWithSCcalls(t expectedScCallData: []byte{bridgeCore.MissingDataProtocolMarker}, } - testRelayersShouldExecuteTransferFromEthToMultiversXHavingTxsWithSCcalls(t, testArgs) + testRelayersShouldExecuteTransferFromEthToKCHavingTxsWithSCcalls(t, testArgs) }) } -func testRelayersShouldExecuteTransferFromEthToMultiversXHavingTxsWithSCcalls(t *testing.T, args argsForSCCallsTest) { +func testRelayersShouldExecuteTransferFromEthToKCHavingTxsWithSCcalls(t *testing.T, args argsForSCCallsTest) { safeContractEthAddress := testsCommon.CreateRandomEthereumAddress() token1Erc20 := testsCommon.CreateRandomEthereumAddress() @@ -226,17 +226,17 @@ func testRelayersShouldExecuteTransferFromEthToMultiversXHavingTxsWithSCcalls(t ticker3 := "tck-000003" value1 := big.NewInt(111111111) - destination1 := testsCommon.CreateRandomMultiversXAddress() + destination1 := testsCommon.CreateRandomKCAddress() depositor1 := testsCommon.CreateRandomEthereumAddress() value2 := big.NewInt(222222222) - destination2 := testsCommon.CreateRandomMultiversXAddress() + destination2 := testsCommon.CreateRandomKCAddress() depositor2 := testsCommon.CreateRandomEthereumAddress() depositor3 := testsCommon.CreateRandomEthereumAddress() value3 := big.NewInt(333333333) - destination3Sc := testsCommon.CreateRandomMultiversXSCAddress() + destination3Sc := testsCommon.CreateRandomKCSCAddress() tokens := []common.Address{token1Erc20, token2Erc20, token3Erc20} availableBalances := []*big.Int{value1, value2, value3} @@ -316,16 +316,16 @@ func testRelayersShouldExecuteTransferFromEthToMultiversXHavingTxsWithSCcalls(t return []types.Log{scLog}, nil } - multiversXChainMock := mock.NewKleverBlockchainMock() - multiversXChainMock.AddTokensPair(token1Erc20, ticker1, false, true, zero, zero, zero) - multiversXChainMock.AddTokensPair(token2Erc20, ticker2, false, true, zero, zero, zero) - multiversXChainMock.AddTokensPair(token3Erc20, ticker3, false, true, zero, zero, zero) - multiversXChainMock.SetLastExecutedEthBatchID(batchNonceOnEthereum) - multiversXChainMock.SetLastExecutedEthTxId(txNonceOnEthereum) - multiversXChainMock.GetStatusesAfterExecutionHandler = func() []byte { + kcChainMock := mock.NewKleverBlockchainMock() + kcChainMock.AddTokensPair(token1Erc20, ticker1, false, true, zero, zero, zero) + kcChainMock.AddTokensPair(token2Erc20, ticker2, false, true, zero, zero, zero) + kcChainMock.AddTokensPair(token3Erc20, ticker3, false, true, zero, zero, zero) + kcChainMock.SetLastExecutedEthBatchID(batchNonceOnEthereum) + kcChainMock.SetLastExecutedEthTxId(txNonceOnEthereum) + kcChainMock.GetStatusesAfterExecutionHandler = func() []byte { return []byte{bridgeCore.Executed, bridgeCore.Rejected, bridgeCore.Executed} } - multiversXChainMock.SetQuorum(numRelayers) + kcChainMock.SetQuorum(numRelayers) relayers := make([]bridgeComponents, 0, numRelayers) defer func() { @@ -338,19 +338,19 @@ func testRelayersShouldExecuteTransferFromEthToMultiversXHavingTxsWithSCcalls(t ctx, cancel := context.WithTimeout(context.Background(), time.Second*120) defer cancel() - multiversXChainMock.ProcessFinishedHandler = func() { - log.Info("multiversXChainMock.ProcessFinishedHandler called") + kcChainMock.ProcessFinishedHandler = func() { + log.Info("kcChainMock.ProcessFinishedHandler called") asyncCancelCall(cancel, time.Second*5) } for i := 0; i < numRelayers; i++ { - argsBridgeComponents := createMockBridgeComponentsArgs(i, messengers[i], multiversXChainMock, ethereumChainMock) + argsBridgeComponents := createMockBridgeComponentsArgs(i, messengers[i], kcChainMock, ethereumChainMock) argsBridgeComponents.Configs.GeneralConfig.Eth.SafeContractAddress = safeContractEthAddress.Hex() argsBridgeComponents.Erc20ContractsHolder = erc20ContractsHolder relayer, err := factory.NewEthKleverBridgeComponents(argsBridgeComponents) require.Nil(t, err) - multiversXChainMock.AddRelayer(relayer.KleverRelayerAddress()) + kcChainMock.AddRelayer(relayer.KleverRelayerAddress()) ethereumChainMock.AddRelayer(relayer.EthereumRelayerAddress()) go func() { @@ -365,8 +365,8 @@ func testRelayersShouldExecuteTransferFromEthToMultiversXHavingTxsWithSCcalls(t <-ctx.Done() time.Sleep(time.Second * 5) - assert.NotNil(t, multiversXChainMock.PerformedActionID()) - transfer := multiversXChainMock.ProposedTransfer() + assert.NotNil(t, kcChainMock.PerformedActionID()) + transfer := kcChainMock.ProposedTransfer() require.NotNil(t, transfer) require.Equal(t, 3, len(transfer.Transfers)) assert.Equal(t, batchNonceOnEthereum+1, transfer.BatchId.Uint64()) @@ -396,7 +396,7 @@ func testRelayersShouldExecuteTransferFromEthToMultiversXHavingTxsWithSCcalls(t func createMockBridgeComponentsArgs( index int, messenger p2p.Messenger, - multiversXChainMock *mock.KleverBlockchainMock, + kcMock *mock.KleverBlockchainMock, ethereumChainMock *mock.EthereumChainMock, ) factory.ArgsEthereumToKleverBridge { @@ -409,7 +409,7 @@ func createMockBridgeComponentsArgs( RestApiInterface: bridgeCore.WebServerOffString, }, }, - Proxy: multiversXChainMock, + Proxy: kcMock, ClientWrapper: ethereumChainMock, Messenger: messenger, StatusStorer: testsCommon.NewStorerMock(), diff --git a/integrationTests/relayers/kleverBlockchainToEth_test.go b/integrationTests/relayers/kcToEth_test.go similarity index 76% rename from integrationTests/relayers/kleverBlockchainToEth_test.go rename to integrationTests/relayers/kcToEth_test.go index 71a1e270..9094f006 100644 --- a/integrationTests/relayers/kleverBlockchainToEth_test.go +++ b/integrationTests/relayers/kcToEth_test.go @@ -31,7 +31,7 @@ func asyncCancelCall(cancelHandler func(), delay time.Duration) { }() } -func TestRelayersShouldExecuteSimpleTransfersFromMultiversXToEth(t *testing.T) { +func TestRelayersShouldExecuteSimpleTransfersFromKCToEth(t *testing.T) { if testing.Short() { t.Skip("this is not a short test") } @@ -58,22 +58,22 @@ func TestRelayersShouldExecuteSimpleTransfersFromMultiversXToEth(t *testing.T) { ethereumChainMock.BalanceAtCalled = func(ctx context.Context, account common.Address, blockNumber *big.Int) (*big.Int, error) { return relayerEthBalance, nil } - multiversXChainMock := mock.NewKleverBlockchainMock() + kcChainMock := mock.NewKleverBlockchainMock() for i := 0; i < len(deposits); i++ { ethereumChainMock.UpdateNativeTokens(tokensAddresses[i], false) ethereumChainMock.UpdateMintBurnTokens(tokensAddresses[i], true) ethereumChainMock.UpdateMintBalances(tokensAddresses[i], zero) ethereumChainMock.UpdateBurnBalances(tokensAddresses[i], zero) - multiversXChainMock.AddTokensPair(tokensAddresses[i], deposits[i].Ticker, true, true, zero, zero, deposits[i].Amount) + kcChainMock.AddTokensPair(tokensAddresses[i], deposits[i].Ticker, true, true, zero, zero, deposits[i].Amount) } pendingBatch := mock.KleverBlockchainPendingBatch{ Nonce: big.NewInt(1), KleverBlockchainDeposits: deposits, } - multiversXChainMock.SetPendingBatch(&pendingBatch) - multiversXChainMock.SetQuorum(numRelayers) + kcChainMock.SetPendingBatch(&pendingBatch) + kcChainMock.SetQuorum(numRelayers) relayers := make([]bridgeComponents, 0, numRelayers) defer closeRelayers(relayers) @@ -82,19 +82,19 @@ func TestRelayersShouldExecuteSimpleTransfersFromMultiversXToEth(t *testing.T) { ctx, cancel := context.WithTimeout(context.Background(), time.Second*1200) defer cancel() - multiversXChainMock.ProcessFinishedHandler = func() { - log.Info("multiversXChainMock.ProcessFinishedHandler called") + kcChainMock.ProcessFinishedHandler = func() { + log.Info("kcChainMock.ProcessFinishedHandler called") asyncCancelCall(cancel, time.Second*5) } for i := 0; i < numRelayers; i++ { - argsBridgeComponents := createMockBridgeComponentsArgs(i, messengers[i], multiversXChainMock, ethereumChainMock) + argsBridgeComponents := createMockBridgeComponentsArgs(i, messengers[i], kcChainMock, ethereumChainMock) argsBridgeComponents.Configs.GeneralConfig.Eth.SafeContractAddress = safeContractEthAddress.Hex() argsBridgeComponents.Erc20ContractsHolder = erc20ContractsHolder relayer, err := factory.NewEthKleverBridgeComponents(argsBridgeComponents) require.Nil(t, err) - multiversXChainMock.AddRelayer(relayer.KleverRelayerAddress()) + kcChainMock.AddRelayer(relayer.KleverRelayerAddress()) ethereumChainMock.AddRelayer(relayer.EthereumRelayerAddress()) go func() { @@ -111,28 +111,28 @@ func TestRelayersShouldExecuteSimpleTransfersFromMultiversXToEth(t *testing.T) { // let all transactions propagate time.Sleep(time.Second * 5) - checkTestStatus(t, multiversXChainMock, ethereumChainMock, numTransactions, deposits, tokensAddresses) + checkTestStatus(t, kcChainMock, ethereumChainMock, numTransactions, deposits, tokensAddresses) } func callIsFromBalanceValidator() bool { callStack := string(debug.Stack()) - return strings.Contains(callStack, "(*balanceValidator).getTotalTransferAmountInPendingMvxBatches") + return strings.Contains(callStack, "(*balanceValidator).getTotalTransferAmountInPendingKlvBatches") } -func TestRelayersShouldExecuteTransfersFromMultiversXToEthIfTransactionsAppearInBatch(t *testing.T) { +func TestRelayersShouldExecuteTransfersFromKCToEthIfTransactionsAppearInBatch(t *testing.T) { if testing.Short() { t.Skip("this is not a short test") } t.Run("simple tokens transfers", func(t *testing.T) { - testRelayersShouldExecuteTransfersFromMultiversXToEthIfTransactionsAppearInBatch(t, false) + testRelayersShouldExecuteTransfersFromKCToEthIfTransactionsAppearInBatch(t, false) }) t.Run("native tokens transfers", func(t *testing.T) { - testRelayersShouldExecuteTransfersFromMultiversXToEthIfTransactionsAppearInBatch(t, true) + testRelayersShouldExecuteTransfersFromKCToEthIfTransactionsAppearInBatch(t, true) }) } -func testRelayersShouldExecuteTransfersFromMultiversXToEthIfTransactionsAppearInBatch(t *testing.T, withNativeTokens bool) { +func testRelayersShouldExecuteTransfersFromKCToEthIfTransactionsAppearInBatch(t *testing.T, withNativeTokens bool) { numTransactions := 2 deposits, tokensAddresses, erc20Map := createTransactions(numTransactions) @@ -155,7 +155,7 @@ func testRelayersShouldExecuteTransfersFromMultiversXToEthIfTransactionsAppearIn ethereumChainMock.BalanceAtCalled = func(ctx context.Context, account common.Address, blockNumber *big.Int) (*big.Int, error) { return relayerEthBalance, nil } - multiversXChainMock := mock.NewKleverBlockchainMock() + kcChainMock := mock.NewKleverBlockchainMock() for i := 0; i < len(deposits); i++ { nativeBalanceValue := deposits[i].Amount @@ -164,27 +164,27 @@ func testRelayersShouldExecuteTransfersFromMultiversXToEthIfTransactionsAppearIn ethereumChainMock.UpdateMintBurnTokens(tokensAddresses[i], false) ethereumChainMock.UpdateTotalBalances(tokensAddresses[i], nativeBalanceValue) - multiversXChainMock.AddTokensPair(tokensAddresses[i], deposits[i].Ticker, withNativeTokens, true, zero, nativeBalanceValue, nativeBalanceValue) + kcChainMock.AddTokensPair(tokensAddresses[i], deposits[i].Ticker, withNativeTokens, true, zero, nativeBalanceValue, nativeBalanceValue) } else { ethereumChainMock.UpdateNativeTokens(tokensAddresses[i], false) ethereumChainMock.UpdateMintBurnTokens(tokensAddresses[i], true) ethereumChainMock.UpdateBurnBalances(tokensAddresses[i], zero) ethereumChainMock.UpdateMintBalances(tokensAddresses[i], zero) - multiversXChainMock.AddTokensPair(tokensAddresses[i], deposits[i].Ticker, withNativeTokens, true, zero, zero, nativeBalanceValue) + kcChainMock.AddTokensPair(tokensAddresses[i], deposits[i].Ticker, withNativeTokens, true, zero, zero, nativeBalanceValue) } } pendingBatch := mock.KleverBlockchainPendingBatch{ Nonce: big.NewInt(1), KleverBlockchainDeposits: deposits, } - multiversXChainMock.SetPendingBatch(&pendingBatch) - multiversXChainMock.SetQuorum(numRelayers) + kcChainMock.SetPendingBatch(&pendingBatch) + kcChainMock.SetQuorum(numRelayers) - ethereumChainMock.ProposeMultiTransferEsdtBatchCalled = func() { + ethereumChainMock.ProposeMultiTransferKdaBatchCalled = func() { deposit := deposits[0] - multiversXChainMock.AddDepositToCurrentBatch(deposit) + kcChainMock.AddDepositToCurrentBatch(deposit) } relayers := make([]bridgeComponents, 0, numRelayers) @@ -194,19 +194,19 @@ func testRelayersShouldExecuteTransfersFromMultiversXToEthIfTransactionsAppearIn ctx, cancel := context.WithTimeout(context.Background(), time.Second*1200) defer cancel() - multiversXChainMock.ProcessFinishedHandler = func() { - log.Info("multiversXChainMock.ProcessFinishedHandler called") + kcChainMock.ProcessFinishedHandler = func() { + log.Info("kcChainMock.ProcessFinishedHandler called") asyncCancelCall(cancel, time.Second*5) } for i := 0; i < numRelayers; i++ { - argsBridgeComponents := createMockBridgeComponentsArgs(i, messengers[i], multiversXChainMock, ethereumChainMock) + argsBridgeComponents := createMockBridgeComponentsArgs(i, messengers[i], kcChainMock, ethereumChainMock) argsBridgeComponents.Configs.GeneralConfig.Eth.SafeContractAddress = safeContractEthAddress.Hex() argsBridgeComponents.Erc20ContractsHolder = erc20ContractsHolder relayer, err := factory.NewEthKleverBridgeComponents(argsBridgeComponents) require.Nil(t, err) - multiversXChainMock.AddRelayer(relayer.KleverRelayerAddress()) + kcChainMock.AddRelayer(relayer.KleverRelayerAddress()) ethereumChainMock.AddRelayer(relayer.EthereumRelayerAddress()) go func() { @@ -223,7 +223,7 @@ func testRelayersShouldExecuteTransfersFromMultiversXToEthIfTransactionsAppearIn // let all transactions propagate time.Sleep(time.Second * 5) - checkTestStatus(t, multiversXChainMock, ethereumChainMock, numTransactions, deposits, tokensAddresses) + checkTestStatus(t, kcChainMock, ethereumChainMock, numTransactions, deposits, tokensAddresses) } func createTransactions(n int) ([]mock.KleverBlockchainDeposit, []common.Address, map[common.Address]*big.Int) { @@ -250,7 +250,7 @@ func createTransaction(index int) (mock.KleverBlockchainDeposit, common.Address) tokenAddress := testsCommon.CreateRandomEthereumAddress() return mock.KleverBlockchainDeposit{ - From: testsCommon.CreateRandomMultiversXAddress(), + From: testsCommon.CreateRandomKCAddress(), To: testsCommon.CreateRandomEthereumAddress(), Ticker: fmt.Sprintf("tck-00000%d", index+1), Amount: big.NewInt(int64(index*1000) + 500), // 0 as amount is not relevant @@ -259,16 +259,16 @@ func createTransaction(index int) (mock.KleverBlockchainDeposit, common.Address) func checkTestStatus( t *testing.T, - multiversXChainMock *mock.KleverBlockchainMock, + kcChainMock *mock.KleverBlockchainMock, ethereumChainMock *mock.EthereumChainMock, numTransactions int, deposits []mock.KleverBlockchainDeposit, tokensAddresses []common.Address, ) { - transactions := multiversXChainMock.GetAllSentTransactions(context.Background()) + transactions := kcChainMock.GetAllSentTransactions(context.Background()) assert.Equal(t, 5, len(transactions)) - assert.Nil(t, multiversXChainMock.ProposedTransfer()) - assert.NotNil(t, multiversXChainMock.PerformedActionID()) + assert.Nil(t, kcChainMock.ProposedTransfer()) + assert.NotNil(t, kcChainMock.PerformedActionID()) transfer := ethereumChainMock.GetLastProposedTransfer() require.NotNil(t, transfer) diff --git a/integrationTests/relayers/slowTests/common.go b/integrationTests/relayers/slowTests/common.go index dae358b4..6dea6f21 100644 --- a/integrationTests/relayers/slowTests/common.go +++ b/integrationTests/relayers/slowTests/common.go @@ -18,19 +18,19 @@ var ( // GenerateTestUSDCToken will generate a test USDC token func GenerateTestUSDCToken() framework.TestTokenParams { - // USDC is ethNative = true, ethMintBurn = false, mvxNative = false, mvxMintBurn = true + // USDC is ethNative = true, ethMintBurn = false, kdaNative = false, kdaMintBurn = true return framework.TestTokenParams{ IssueTokenParams: framework.IssueTokenParams{ AbstractTokenIdentifier: "USDC", NumOfDecimalsUniversal: 6, NumOfDecimalsChainSpecific: 6, - MvxUniversalTokenTicker: "USDC", - MvxChainSpecificTokenTicker: "ETHUSDC", - MvxUniversalTokenDisplayName: "WrappedUSDC", - MvxChainSpecificTokenDisplayName: "EthereumWrappedUSDC", - ValueToMintOnMvx: "10000000000", - IsMintBurnOnMvX: true, - IsNativeOnMvX: false, + KlvUniversalTokenTicker: "USDC", + KlvChainSpecificTokenTicker: "ETHUSDC", + KlvUniversalTokenDisplayName: "WrappedUSDC", + KlvChainSpecificTokenDisplayName: "EthereumWrappedUSDC", + ValueToMintOnKlv: "10000000000", + IsMintBurnOnKlv: true, + IsNativeOnKlv: false, HasChainSpecificToken: true, EthTokenName: "EthUSDC", EthTokenSymbol: "USDC", @@ -40,39 +40,39 @@ func GenerateTestUSDCToken() framework.TestTokenParams { }, TestOperations: []framework.TokenOperations{ { - ValueToTransferToMvx: big.NewInt(5000), - ValueToSendFromMvX: big.NewInt(2500), + ValueToTransferToKlv: big.NewInt(5000), + ValueToSendFromKlv: big.NewInt(2500), }, { - ValueToTransferToMvx: big.NewInt(7000), - ValueToSendFromMvX: big.NewInt(300), + ValueToTransferToKlv: big.NewInt(7000), + ValueToSendFromKlv: big.NewInt(300), }, { - ValueToTransferToMvx: big.NewInt(1000), - ValueToSendFromMvX: nil, - MvxSCCallData: createScCallData("callPayable", 50000000), + ValueToTransferToKlv: big.NewInt(1000), + ValueToSendFromKlv: nil, + KlvSCCallData: createScCallData("callPayable", 50000000), }, }, - ESDTSafeExtraBalance: big.NewInt(100), // extra is just for the fees for the 2 transfers mvx->eth - EthTestAddrExtraBalance: big.NewInt(-5000 + 2500 - 50 - 7000 + 300 - 50 - 1000), // -(eth->mvx) + (mvx->eth) - fees + KDASafeExtraBalance: big.NewInt(100), // extra is just for the fees for the 2 transfers kda->eth + EthTestAddrExtraBalance: big.NewInt(-5000 + 2500 - 50 - 7000 + 300 - 50 - 1000), // -(eth->kda) + (kda->eth) - fees } } // GenerateTestMEMEToken will generate a test MEME token func GenerateTestMEMEToken() framework.TestTokenParams { - //MEME is ethNative = false, ethMintBurn = true, mvxNative = true, mvxMintBurn = false + //MEME is ethNative = false, ethMintBurn = true, kdaNative = true, kdaMintBurn = false return framework.TestTokenParams{ IssueTokenParams: framework.IssueTokenParams{ AbstractTokenIdentifier: "MEME", NumOfDecimalsUniversal: 1, NumOfDecimalsChainSpecific: 1, - MvxUniversalTokenTicker: "MEME", - MvxChainSpecificTokenTicker: "ETHMEME", - MvxUniversalTokenDisplayName: "WrappedMEME", - MvxChainSpecificTokenDisplayName: "EthereumWrappedMEME", - ValueToMintOnMvx: "10000000000", - IsMintBurnOnMvX: false, - IsNativeOnMvX: true, + KlvUniversalTokenTicker: "MEME", + KlvChainSpecificTokenTicker: "ETHMEME", + KlvUniversalTokenDisplayName: "WrappedMEME", + KlvChainSpecificTokenDisplayName: "EthereumWrappedMEME", + ValueToMintOnKlv: "10000000000", + IsMintBurnOnKlv: false, + IsNativeOnKlv: true, HasChainSpecificToken: true, EthTokenName: "EthMEME", EthTokenSymbol: "MEME", @@ -82,39 +82,39 @@ func GenerateTestMEMEToken() framework.TestTokenParams { }, TestOperations: []framework.TokenOperations{ { - ValueToTransferToMvx: big.NewInt(2400), - ValueToSendFromMvX: big.NewInt(4000), + ValueToTransferToKlv: big.NewInt(2400), + ValueToSendFromKlv: big.NewInt(4000), }, { - ValueToTransferToMvx: big.NewInt(200), - ValueToSendFromMvX: big.NewInt(6000), + ValueToTransferToKlv: big.NewInt(200), + ValueToSendFromKlv: big.NewInt(6000), }, { - ValueToTransferToMvx: big.NewInt(1000), - ValueToSendFromMvX: big.NewInt(2000), - MvxSCCallData: createScCallData("callPayable", 50000000), + ValueToTransferToKlv: big.NewInt(1000), + ValueToSendFromKlv: big.NewInt(2000), + KlvSCCallData: createScCallData("callPayable", 50000000), }, }, - ESDTSafeExtraBalance: big.NewInt(4000 + 6000 + 2000), // everything is locked in the safe esdt contract + KDASafeExtraBalance: big.NewInt(4000 + 6000 + 2000), // everything is locked in the safe kda contract EthTestAddrExtraBalance: big.NewInt(4000 - 50 + 6000 - 50 + 2000 - 50), } } // GenerateTestEUROCToken will generate a test EUROC token func GenerateTestEUROCToken() framework.TestTokenParams { - //EUROC is ethNative = true, ethMintBurn = true, mvxNative = false, mvxMintBurn = true + //EUROC is ethNative = true, ethMintBurn = true, kdaNative = false, kdaMintBurn = true return framework.TestTokenParams{ IssueTokenParams: framework.IssueTokenParams{ AbstractTokenIdentifier: "EUROC", NumOfDecimalsUniversal: 6, NumOfDecimalsChainSpecific: 6, - MvxUniversalTokenTicker: "EUROC", - MvxChainSpecificTokenTicker: "EUROC", - MvxUniversalTokenDisplayName: "TestEUROC", - MvxChainSpecificTokenDisplayName: "TestEUROC", - ValueToMintOnMvx: "10000000000", - IsMintBurnOnMvX: true, - IsNativeOnMvX: false, + KlvUniversalTokenTicker: "EUROC", + KlvChainSpecificTokenTicker: "EUROC", + KlvUniversalTokenDisplayName: "TestEUROC", + KlvChainSpecificTokenDisplayName: "TestEUROC", + ValueToMintOnKlv: "10000000000", + IsMintBurnOnKlv: true, + IsNativeOnKlv: false, HasChainSpecificToken: false, EthTokenName: "EthEuroC", EthTokenSymbol: "EUROC", @@ -124,39 +124,39 @@ func GenerateTestEUROCToken() framework.TestTokenParams { }, TestOperations: []framework.TokenOperations{ { - ValueToTransferToMvx: big.NewInt(5010), - ValueToSendFromMvX: big.NewInt(2510), + ValueToTransferToKlv: big.NewInt(5010), + ValueToSendFromKlv: big.NewInt(2510), }, { - ValueToTransferToMvx: big.NewInt(7010), - ValueToSendFromMvX: big.NewInt(310), + ValueToTransferToKlv: big.NewInt(7010), + ValueToSendFromKlv: big.NewInt(310), }, { - ValueToTransferToMvx: big.NewInt(1010), - ValueToSendFromMvX: nil, - MvxSCCallData: createScCallData("callPayable", 50000000), + ValueToTransferToKlv: big.NewInt(1010), + ValueToSendFromKlv: nil, + KlvSCCallData: createScCallData("callPayable", 50000000), }, }, - ESDTSafeExtraBalance: big.NewInt(100), // extra is just for the fees for the 2 transfers mvx->eth - EthTestAddrExtraBalance: big.NewInt(-5010 + 2510 - 50 - 7010 + 310 - 50 - 1010), // -(eth->mvx) + (mvx->eth) - fees + KDASafeExtraBalance: big.NewInt(100), // extra is just for the fees for the 2 transfers kda->eth + EthTestAddrExtraBalance: big.NewInt(-5010 + 2510 - 50 - 7010 + 310 - 50 - 1010), // -(eth->kda) + (kda->eth) - fees } } // GenerateTestMEXToken will generate a test EUROC token func GenerateTestMEXToken() framework.TestTokenParams { - //MEX is ethNative = false, ethMintBurn = true, mvxNative = true, mvxMintBurn = true + //MEX is ethNative = false, ethMintBurn = true, kdaNative = true, kdaMintBurn = true return framework.TestTokenParams{ IssueTokenParams: framework.IssueTokenParams{ AbstractTokenIdentifier: "MEX", NumOfDecimalsUniversal: 2, NumOfDecimalsChainSpecific: 2, - MvxUniversalTokenTicker: "MEX", - MvxChainSpecificTokenTicker: "MEX", - MvxUniversalTokenDisplayName: "TestMEX", - MvxChainSpecificTokenDisplayName: "TestMEX", - ValueToMintOnMvx: "10000000000", - IsMintBurnOnMvX: true, - IsNativeOnMvX: true, + KlvUniversalTokenTicker: "MEX", + KlvChainSpecificTokenTicker: "MEX", + KlvUniversalTokenDisplayName: "TestMEX", + KlvChainSpecificTokenDisplayName: "TestMEX", + ValueToMintOnKlv: "10000000000", + IsMintBurnOnKlv: true, + IsNativeOnKlv: true, HasChainSpecificToken: false, EthTokenName: "EthMex", EthTokenSymbol: "MEX", @@ -166,26 +166,26 @@ func GenerateTestMEXToken() framework.TestTokenParams { }, TestOperations: []framework.TokenOperations{ { - ValueToTransferToMvx: big.NewInt(2410), - ValueToSendFromMvX: big.NewInt(4010), + ValueToTransferToKlv: big.NewInt(2410), + ValueToSendFromKlv: big.NewInt(4010), }, { - ValueToTransferToMvx: big.NewInt(210), - ValueToSendFromMvX: big.NewInt(6010), + ValueToTransferToKlv: big.NewInt(210), + ValueToSendFromKlv: big.NewInt(6010), }, { - ValueToTransferToMvx: big.NewInt(1010), - ValueToSendFromMvX: big.NewInt(2010), - MvxSCCallData: createScCallData("callPayable", 50000000), + ValueToTransferToKlv: big.NewInt(1010), + ValueToSendFromKlv: big.NewInt(2010), + KlvSCCallData: createScCallData("callPayable", 50000000), }, }, - ESDTSafeExtraBalance: big.NewInt(150), // just the fees should be collected in ESDT safe + KDASafeExtraBalance: big.NewInt(150), // just the fees should be collected in KDA safe EthTestAddrExtraBalance: big.NewInt(4010 - 50 + 6010 - 50 + 2010 - 50), } } func createScCallData(function string, gasLimit uint64, args ...string) []byte { - codec := testsCommon.TestMultiversXCodec{} + codec := testsCommon.TestKCCodec{} callData := parsers.CallData{ Type: bridgeCore.DataPresentProtocolMarker, Function: function, diff --git a/integrationTests/relayers/slowTests/edgeCases_test.go b/integrationTests/relayers/slowTests/edgeCases_test.go index 4912f573..c7c66764 100644 --- a/integrationTests/relayers/slowTests/edgeCases_test.go +++ b/integrationTests/relayers/slowTests/edgeCases_test.go @@ -42,14 +42,14 @@ func TestRelayerShouldExecuteSimultaneousSwapsAndNotCatchErrors(t *testing.T) { usdcToken := GenerateTestUSDCToken() usdcToken.TestOperations = []framework.TokenOperations{ { - ValueToTransferToMvx: big.NewInt(5000), - ValueToSendFromMvX: big.NewInt(200), - MvxSCCallData: nil, - MvxFaultySCCall: false, - MvxForceSCCall: false, + ValueToTransferToKlv: big.NewInt(5000), + ValueToSendFromKlv: big.NewInt(200), + KlvSCCallData: nil, + KlvFaultySCCall: false, + KlvForceSCCall: false, }, } - usdcToken.ESDTSafeExtraBalance = big.NewInt(50) + usdcToken.KDASafeExtraBalance = big.NewInt(50) usdcToken.EthTestAddrExtraBalance = big.NewInt(-5000 - 5000 + 200 - 50) _ = testRelayersWithChainSimulatorAndTokensForSimultaneousSwaps( @@ -69,8 +69,8 @@ func testRelayersWithChainSimulatorAndTokensForSimultaneousSwaps(tb testing.TB, startsFromEthFlow.setup = setup setup.IssueAndConfigureTokens(tokens...) - setup.MultiversxHandler.CheckForZeroBalanceOnReceivers(setup.Ctx, tokens...) - setup.EthereumHandler.CreateBatchOnEthereum(setup.Ctx, setup.MultiversxHandler.TestCallerAddress, startsFromEthFlow.tokens...) + setup.KCHandler.CheckForZeroBalanceOnReceivers(setup.Ctx, tokens...) + setup.EthereumHandler.CreateBatchOnEthereum(setup.Ctx, setup.KCHandler.TestCallerAddress, startsFromEthFlow.tokens...) } processFunc := func(tb testing.TB, setup *framework.TestSetup) bool { diff --git a/integrationTests/relayers/slowTests/ethToMultiversXWithChainSimulator_test.go b/integrationTests/relayers/slowTests/ethToKcWithChainSimulator_test.go similarity index 80% rename from integrationTests/relayers/slowTests/ethToMultiversXWithChainSimulator_test.go rename to integrationTests/relayers/slowTests/ethToKcWithChainSimulator_test.go index 7521ff48..bb0c2445 100644 --- a/integrationTests/relayers/slowTests/ethToMultiversXWithChainSimulator_test.go +++ b/integrationTests/relayers/slowTests/ethToKcWithChainSimulator_test.go @@ -55,10 +55,10 @@ func TestRelayersShouldExecuteTransfersWithSCCallsWithArguments(t *testing.T) { callData := createScCallData("callPayableWithParams", 50000000, dummyUint64, dummyAddress) usdcToken := GenerateTestUSDCToken() - usdcToken.TestOperations[2].MvxSCCallData = callData + usdcToken.TestOperations[2].KlvSCCallData = callData memeToken := GenerateTestMEMEToken() - memeToken.TestOperations[2].MvxSCCallData = callData + memeToken.TestOperations[2].KlvSCCallData = callData testSetup := testRelayersWithChainSimulatorAndTokens( t, @@ -82,10 +82,10 @@ func TestRelayersShouldExecuteTransfersWithSCCallsWithArgumentsWithMintBurnToken callData := createScCallData("callPayableWithParams", 50000000, dummyUint64, dummyAddress) eurocToken := GenerateTestEUROCToken() - eurocToken.TestOperations[2].MvxSCCallData = callData + eurocToken.TestOperations[2].KlvSCCallData = callData mexToken := GenerateTestMEXToken() - mexToken.TestOperations[2].MvxSCCallData = callData + mexToken.TestOperations[2].KlvSCCallData = callData testSetup := testRelayersWithChainSimulatorAndTokens( t, @@ -150,25 +150,25 @@ func TestRelayersShouldExecuteTransfersWithInitSupply(t *testing.T) { } func testRelayersWithChainSimulatorAndTokens(tb testing.TB, manualStopChan chan error, tokens ...framework.TestTokenParams) *framework.TestSetup { - startsFromEthFlow, startsFromMvXFlow := createFlowsBasedOnToken(tb, tokens...) + startsFromEthFlow, startsFromKlvFlow := createFlowsBasedOnToken(tb, tokens...) setupFunc := func(tb testing.TB, setup *framework.TestSetup) { - startsFromMvXFlow.setup = setup + startsFromKlvFlow.setup = setup startsFromEthFlow.setup = setup setup.IssueAndConfigureTokens(tokens...) - setup.MultiversxHandler.CheckForZeroBalanceOnReceivers(setup.Ctx, tokens...) + setup.KCHandler.CheckForZeroBalanceOnReceivers(setup.Ctx, tokens...) if len(startsFromEthFlow.tokens) > 0 { - setup.EthereumHandler.CreateBatchOnEthereum(setup.Ctx, setup.MultiversxHandler.TestCallerAddress, startsFromEthFlow.tokens...) + setup.EthereumHandler.CreateBatchOnEthereum(setup.Ctx, setup.KCHandler.TestCallerAddress, startsFromEthFlow.tokens...) } - if len(startsFromMvXFlow.tokens) > 0 { - setup.CreateBatchOnMultiversX(startsFromMvXFlow.tokens...) + if len(startsFromKlvFlow.tokens) > 0 { + setup.CreateBatchOnKC(startsFromKlvFlow.tokens...) } } processFunc := func(tb testing.TB, setup *framework.TestSetup) bool { - if startsFromEthFlow.process() && startsFromMvXFlow.process() { - setup.TestWithdrawTotalFeesOnEthereumForTokens(startsFromMvXFlow.tokens...) + if startsFromEthFlow.process() && startsFromKlvFlow.process() { + setup.TestWithdrawTotalFeesOnEthereumForTokens(startsFromKlvFlow.tokens...) setup.TestWithdrawTotalFeesOnEthereumForTokens(startsFromEthFlow.tokens...) return true @@ -189,13 +189,13 @@ func testRelayersWithChainSimulatorAndTokens(tb testing.TB, manualStopChan chan ) } -func createFlowsBasedOnToken(tb testing.TB, tokens ...framework.TestTokenParams) (*startsFromEthereumFlow, *startsFromMultiversXFlow) { +func createFlowsBasedOnToken(tb testing.TB, tokens ...framework.TestTokenParams) (*startsFromEthereumFlow, *startsFromKCFlow) { startsFromEthFlow := &startsFromEthereumFlow{ TB: tb, tokens: make([]framework.TestTokenParams, 0, len(tokens)), } - startsFromMvXFlow := &startsFromMultiversXFlow{ + startsFromKlvFlow := &startsFromKCFlow{ TB: tb, tokens: make([]framework.TestTokenParams, 0, len(tokens)), } @@ -206,14 +206,14 @@ func createFlowsBasedOnToken(tb testing.TB, tokens ...framework.TestTokenParams) startsFromEthFlow.tokens = append(startsFromEthFlow.tokens, token) continue } - if token.IsNativeOnMvX { - startsFromMvXFlow.tokens = append(startsFromMvXFlow.tokens, token) + if token.IsNativeOnKlv { + startsFromKlvFlow.tokens = append(startsFromKlvFlow.tokens, token) continue } require.Fail(tb, "invalid setup, found a token that is not native on any chain", "abstract identifier", token.AbstractTokenIdentifier) } - return startsFromEthFlow, startsFromMvXFlow + return startsFromEthFlow, startsFromKlvFlow } func testRelayersWithChainSimulator(tb testing.TB, @@ -263,74 +263,74 @@ func createBadToken() framework.TestTokenParams { AbstractTokenIdentifier: "BAD", NumOfDecimalsUniversal: 6, NumOfDecimalsChainSpecific: 6, - MvxUniversalTokenTicker: "BAD", - MvxChainSpecificTokenTicker: "ETHBAD", - MvxUniversalTokenDisplayName: "WrappedBAD", - MvxChainSpecificTokenDisplayName: "EthereumWrappedBAD", - ValueToMintOnMvx: "10000000000", + KlvUniversalTokenTicker: "BAD", + KlvChainSpecificTokenTicker: "ETHBAD", + KlvUniversalTokenDisplayName: "WrappedBAD", + KlvChainSpecificTokenDisplayName: "EthereumWrappedBAD", + ValueToMintOnKlv: "10000000000", EthTokenName: "ETHTOKEN", EthTokenSymbol: "ETHT", ValueToMintOnEth: "10000000000", }, TestOperations: []framework.TokenOperations{ { - ValueToTransferToMvx: big.NewInt(5000), - ValueToSendFromMvX: big.NewInt(2500), + ValueToTransferToKlv: big.NewInt(5000), + ValueToSendFromKlv: big.NewInt(2500), }, { - ValueToTransferToMvx: big.NewInt(7000), - ValueToSendFromMvX: big.NewInt(300), + ValueToTransferToKlv: big.NewInt(7000), + ValueToSendFromKlv: big.NewInt(300), }, { - ValueToTransferToMvx: big.NewInt(1000), - ValueToSendFromMvX: nil, - MvxSCCallData: createScCallData("callPayable", 50000000), + ValueToTransferToKlv: big.NewInt(1000), + ValueToSendFromKlv: nil, + KlvSCCallData: createScCallData("callPayable", 50000000), }, }, - ESDTSafeExtraBalance: big.NewInt(0), + KDASafeExtraBalance: big.NewInt(0), EthTestAddrExtraBalance: big.NewInt(0), } } func TestRelayersShouldNotExecuteTransfers(t *testing.T) { - t.Run("isNativeOnEth = true, isMintBurnOnEth = false, isNativeOnMvX = true, isMintBurnOnMvX = false", func(t *testing.T) { + t.Run("isNativeOnEth = true, isMintBurnOnEth = false, isNativeOnKlv = true, isMintBurnOnKlv = false", func(t *testing.T) { badToken := createBadToken() badToken.IsNativeOnEth = true badToken.IsMintBurnOnEth = false - badToken.IsNativeOnMvX = true - badToken.IsMintBurnOnMvX = false + badToken.IsNativeOnKlv = true + badToken.IsMintBurnOnKlv = false badToken.HasChainSpecificToken = true - expectedStringInLogs := "error = invalid setup isNativeOnEthereum = true, isNativeOnMultiversX = true" + expectedStringInLogs := "error = invalid setup isNativeOnEthereum = true, isNativeOnKC = true" testRelayersShouldNotExecuteTransfers(t, expectedStringInLogs, badToken) }) - t.Run("isNativeOnEth = true, isMintBurnOnEth = false, isNativeOnMvX = true, isMintBurnOnMvX = true", func(t *testing.T) { + t.Run("isNativeOnEth = true, isMintBurnOnEth = false, isNativeOnKlv = true, isMintBurnOnKlv = true", func(t *testing.T) { badToken := createBadToken() badToken.IsNativeOnEth = true badToken.IsMintBurnOnEth = false - badToken.IsNativeOnMvX = true - badToken.IsMintBurnOnMvX = true + badToken.IsNativeOnKlv = true + badToken.IsMintBurnOnKlv = true badToken.HasChainSpecificToken = false - expectedStringInLogs := "error = invalid setup isNativeOnEthereum = true, isNativeOnMultiversX = true" + expectedStringInLogs := "error = invalid setup isNativeOnEthereum = true, isNativeOnKC = true" testRelayersShouldNotExecuteTransfers(t, expectedStringInLogs, badToken) }) - t.Run("isNativeOnEth = true, isMintBurnOnEth = true, isNativeOnMvX = true, isMintBurnOnMvX = false", func(t *testing.T) { + t.Run("isNativeOnEth = true, isMintBurnOnEth = true, isNativeOnKlv = true, isMintBurnOnKlv = false", func(t *testing.T) { badToken := createBadToken() badToken.IsNativeOnEth = true badToken.IsMintBurnOnEth = true - badToken.IsNativeOnMvX = true - badToken.IsMintBurnOnMvX = false + badToken.IsNativeOnKlv = true + badToken.IsMintBurnOnKlv = false badToken.HasChainSpecificToken = true testEthContractsShouldError(t, badToken) }) - t.Run("isNativeOnEth = false, isMintBurnOnEth = true, isNativeOnMvX = false, isMintBurnOnMvX = true", func(t *testing.T) { + t.Run("isNativeOnEth = false, isMintBurnOnEth = true, isNativeOnKlv = false, isMintBurnOnKlv = true", func(t *testing.T) { badToken := createBadToken() badToken.IsNativeOnEth = false badToken.IsMintBurnOnEth = true - badToken.IsNativeOnMvX = false - badToken.IsMintBurnOnMvX = true + badToken.IsNativeOnKlv = false + badToken.IsMintBurnOnKlv = true badToken.HasChainSpecificToken = true testEthContractsShouldError(t, badToken) @@ -342,24 +342,24 @@ func testRelayersShouldNotExecuteTransfers( expectedStringInLogs string, tokens ...framework.TestTokenParams, ) { - startsFromEthFlow, startsFromMvXFlow := createFlowsBasedOnToken(tb, tokens...) + startsFromEthFlow, startsFromKlvFlow := createFlowsBasedOnToken(tb, tokens...) setupFunc := func(tb testing.TB, setup *framework.TestSetup) { - startsFromMvXFlow.setup = setup + startsFromKlvFlow.setup = setup startsFromEthFlow.setup = setup setup.IssueAndConfigureTokens(tokens...) - setup.MultiversxHandler.CheckForZeroBalanceOnReceivers(setup.Ctx, tokens...) + setup.KCHandler.CheckForZeroBalanceOnReceivers(setup.Ctx, tokens...) if len(startsFromEthFlow.tokens) > 0 { - setup.EthereumHandler.CreateBatchOnEthereum(setup.Ctx, setup.MultiversxHandler.TestCallerAddress, startsFromEthFlow.tokens...) + setup.EthereumHandler.CreateBatchOnEthereum(setup.Ctx, setup.KCHandler.TestCallerAddress, startsFromEthFlow.tokens...) } - if len(startsFromMvXFlow.tokens) > 0 { - setup.CreateBatchOnMultiversX(startsFromMvXFlow.tokens...) + if len(startsFromKlvFlow.tokens) > 0 { + setup.CreateBatchOnKC(startsFromKlvFlow.tokens...) } } processFunc := func(tb testing.TB, setup *framework.TestSetup) bool { - if startsFromEthFlow.process() && startsFromMvXFlow.process() { + if startsFromEthFlow.process() && startsFromKlvFlow.process() { return true } @@ -416,9 +416,9 @@ func testEthContractsShouldError(tb testing.TB, testToken framework.TestTokenPar valueToMintOnEth, ok := big.NewInt(0).SetString(testToken.ValueToMintOnEth, 10) require.True(tb, ok) - receiverKeys := framework.GenerateMvxPrivatePublicKey(tb, projectedShardForTestKeys) + receiverKeys := framework.GenerateKlvPrivatePublicKey(tb, projectedShardForTestKeys) auth, _ := bind.NewKeyedTransactorWithChainID(setup.DepositorKeys.EthSK, setup.EthereumHandler.ChainID) - _, err := setup.EthereumHandler.SafeContract.Deposit(auth, token.EthErc20Address, valueToMintOnEth, receiverKeys.MvxAddress.AddressSlice()) + _, err := setup.EthereumHandler.SafeContract.Deposit(auth, token.EthErc20Address, valueToMintOnEth, receiverKeys.KlvAddress.AddressSlice()) require.Error(tb, err) } @@ -442,11 +442,11 @@ func testCallPayableWithParamsWasCalled(testSetup *framework.TestSetup, value ui universalTokens := make([]string, 0, len(tokens)) for _, identifier := range tokens { tkData := testSetup.TokensRegistry.GetTokenData(identifier) - universalTokens = append(universalTokens, tkData.MvxUniversalToken) + universalTokens = append(universalTokens, tkData.KlvUniversalToken) } vmRequest := &data.VmValueRequest{ - Address: testSetup.MultiversxHandler.TestCallerAddress.Bech32(), + Address: testSetup.KCHandler.TestCallerAddress.Bech32(), FuncName: "getCalledDataParams", } diff --git a/integrationTests/relayers/slowTests/framework/address.go b/integrationTests/relayers/slowTests/framework/address.go index 288050b4..bba83a2c 100644 --- a/integrationTests/relayers/slowTests/framework/address.go +++ b/integrationTests/relayers/slowTests/framework/address.go @@ -8,19 +8,19 @@ import ( "github.com/stretchr/testify/require" ) -// MvxAddress holds the different forms a MultiversX address might have -type MvxAddress struct { +// KlvAddress holds the different forms a Klever Blockchain address might have +type KlvAddress struct { address.Address bytes []byte bech32 string hex string } -// NewMvxAddressFromBytes return a new instance of MvxAddress from bytes -func NewMvxAddressFromBytes(tb testing.TB, bytes []byte) *MvxAddress { +// NewKlvAddressFromBytes return a new instance of KlvAddress from bytes +func NewKlvAddressFromBytes(tb testing.TB, bytes []byte) *KlvAddress { addr, err := address.NewAddressFromBytes(bytes) require.Nil(tb, err) - address := &MvxAddress{ + address := &KlvAddress{ bytes: make([]byte, len(bytes)), hex: hex.EncodeToString(bytes), Address: addr, @@ -33,12 +33,12 @@ func NewMvxAddressFromBytes(tb testing.TB, bytes []byte) *MvxAddress { return address } -// NewMvxAddressFromBech32 return a new instance of MvxAddress from the bech32 string -func NewMvxAddressFromBech32(tb testing.TB, bech32 string) *MvxAddress { +// NewKlvAddressFromBech32 return a new instance of KlvAddress from the bech32 string +func NewKlvAddressFromBech32(tb testing.TB, bech32 string) *KlvAddress { addressHandler, err := address.NewAddress(bech32) require.Nil(tb, err) - return &MvxAddress{ + return &KlvAddress{ bytes: addressHandler.Bytes(), hex: hex.EncodeToString(addressHandler.Bytes()), bech32: bech32, @@ -47,21 +47,21 @@ func NewMvxAddressFromBech32(tb testing.TB, bech32 string) *MvxAddress { } // Bytes returns the bytes format address -func (address *MvxAddress) Bytes() []byte { +func (address *KlvAddress) Bytes() []byte { return address.bytes } // Bech32 returns the bech32 string format address -func (address *MvxAddress) Bech32() string { +func (address *KlvAddress) Bech32() string { return address.bech32 } // Hex returns the hex string format address -func (address *MvxAddress) Hex() string { +func (address *KlvAddress) Hex() string { return address.hex } // String returns the address in bech32 format -func (address *MvxAddress) String() string { +func (address *KlvAddress) String() string { return address.bech32 } diff --git a/integrationTests/relayers/slowTests/framework/bridgeComponents.go b/integrationTests/relayers/slowTests/framework/bridgeComponents.go index 412968e5..a721d729 100644 --- a/integrationTests/relayers/slowTests/framework/bridgeComponents.go +++ b/integrationTests/relayers/slowTests/framework/bridgeComponents.go @@ -40,8 +40,8 @@ func NewBridgeComponents( ethBackend *simulated.Backend, numRelayers int, ethSafeContractAddress string, - mvxSafeAddress *MvxAddress, - mvxMultisigAddress *MvxAddress, + kdaSafeAddress *KlvAddress, + kdaMultisigAddress *KlvAddress, ) *BridgeComponents { bridge := &BridgeComponents{ TB: tb, @@ -81,8 +81,8 @@ func NewBridgeComponents( argsBridgeComponents.Configs.GeneralConfig.Eth.SafeContractAddress = ethSafeContractAddress argsBridgeComponents.Erc20ContractsHolder = erc20ContractsHolder argsBridgeComponents.Configs.GeneralConfig.Klever.NetworkAddress = chainSimulator.GetNetworkAddress() - argsBridgeComponents.Configs.GeneralConfig.Klever.SafeContractAddress = mvxSafeAddress.Bech32() - argsBridgeComponents.Configs.GeneralConfig.Klever.MultisigContractAddress = mvxMultisigAddress.Bech32() + argsBridgeComponents.Configs.GeneralConfig.Klever.SafeContractAddress = kdaSafeAddress.Bech32() + argsBridgeComponents.Configs.GeneralConfig.Klever.MultisigContractAddress = kdaMultisigAddress.Bech32() argsBridgeComponents.Configs.GeneralConfig.Klever.GasMap = config.KleverGasMapConfig{ Sign: 8000000, ProposeTransferBase: 11000000, diff --git a/integrationTests/relayers/slowTests/framework/chainSimulatorWrapper.go b/integrationTests/relayers/slowTests/framework/chainSimulatorWrapper.go index 67c307f4..baa4baa4 100644 --- a/integrationTests/relayers/slowTests/framework/chainSimulatorWrapper.go +++ b/integrationTests/relayers/slowTests/framework/chainSimulatorWrapper.go @@ -31,7 +31,7 @@ import ( const ( proxyURL = "http://127.0.0.1:8085" - thousandEgld = "1000000000000000000000" + thousandKlv = "1000000000000000000000" maxAllowedTimeout = time.Second setMultipleEndpoint = "simulator/set-state-overwrite" generateBlocksEndpoint = "simulator/generate-blocks/%d" @@ -63,9 +63,9 @@ type chainSimulatorWrapper struct { // CreateChainSimulatorWrapper creates a new instance of the chain simulator wrapper func CreateChainSimulatorWrapper(args ArgChainSimulatorWrapper) *chainSimulatorWrapper { // TODO: change this to use the real klever proxy when available - proxyInstance := mock.NewKleverChainMock() + proxyInstance := mock.NewKCMock() - pubKeyConverter, err := pubkeyConverter.NewBech32PubkeyConverter(32, "erd") + pubKeyConverter, err := pubkeyConverter.NewBech32PubkeyConverter(32, "klv") require.Nil(args.TB, err) instance := &chainSimulatorWrapper{ @@ -113,7 +113,7 @@ func (instance *chainSimulatorWrapper) GetNetworkAddress() string { } // DeploySC will deploy the provided smart contract and return its address -func (instance *chainSimulatorWrapper) DeploySC(ctx context.Context, wasmFilePath string, ownerSK []byte, gasLimit uint64, parameters []string) (*MvxAddress, string, *data.TransactionOnNetwork) { +func (instance *chainSimulatorWrapper) DeploySC(ctx context.Context, wasmFilePath string, ownerSK []byte, gasLimit uint64, parameters []string) (*KlvAddress, string, *data.TransactionOnNetwork) { networkConfig, err := instance.proxyInstance.GetNetworkConfig(ctx) require.Nil(instance.TB, err) @@ -136,7 +136,7 @@ func (instance *chainSimulatorWrapper) DeploySC(ctx context.Context, wasmFilePat hash := instance.signAndSend(ctx, ownerSK, tx, 1) txResult := instance.GetTransactionResult(ctx, hash) - return NewMvxAddressFromBech32(instance.TB, txResult.Logs.Events[0].Address), hash, txResult + return NewKlvAddressFromBech32(instance.TB, txResult.Logs.Events[0].Address), hash, txResult } // GetTransactionResult tries to get a transaction result. It may wait a few blocks @@ -188,12 +188,12 @@ func (instance *chainSimulatorWrapper) GenerateBlocksUntilTxProcessed(ctx contex } // ScCall will make the provided sc call -func (instance *chainSimulatorWrapper) ScCall(ctx context.Context, senderSK []byte, contract *MvxAddress, value string, gasLimit uint64, function string, parameters []string) (string, *data.TransactionOnNetwork) { +func (instance *chainSimulatorWrapper) ScCall(ctx context.Context, senderSK []byte, contract *KlvAddress, value string, gasLimit uint64, function string, parameters []string) (string, *data.TransactionOnNetwork) { return instance.SendTx(ctx, senderSK, contract, value, gasLimit, createTxData(function, parameters)) } // ScCallWithoutGenerateBlocks will make the provided sc call and do not trigger the generate blocks command -func (instance *chainSimulatorWrapper) ScCallWithoutGenerateBlocks(ctx context.Context, senderSK []byte, contract *MvxAddress, value string, gasLimit uint64, function string, parameters []string) string { +func (instance *chainSimulatorWrapper) ScCallWithoutGenerateBlocks(ctx context.Context, senderSK []byte, contract *KlvAddress, value string, gasLimit uint64, function string, parameters []string) string { return instance.SendTxWithoutGenerateBlocks(ctx, senderSK, contract, value, gasLimit, createTxData(function, parameters)) } @@ -206,7 +206,7 @@ func createTxData(function string, parameters []string) []byte { } // SendTx will build and send a transaction -func (instance *chainSimulatorWrapper) SendTx(ctx context.Context, senderSK []byte, receiver *MvxAddress, value string, gasLimit uint64, dataField []byte) (string, *data.TransactionOnNetwork) { +func (instance *chainSimulatorWrapper) SendTx(ctx context.Context, senderSK []byte, receiver *KlvAddress, value string, gasLimit uint64, dataField []byte) (string, *data.TransactionOnNetwork) { hash := instance.SendTxWithoutGenerateBlocks(ctx, senderSK, receiver, value, gasLimit, dataField) instance.GenerateBlocks(ctx, 1) txResult := instance.GetTransactionResult(ctx, hash) @@ -215,7 +215,7 @@ func (instance *chainSimulatorWrapper) SendTx(ctx context.Context, senderSK []by } // SendTxWithoutGenerateBlocks will build and send a transaction and won't call the generate blocks command -func (instance *chainSimulatorWrapper) SendTxWithoutGenerateBlocks(ctx context.Context, senderSK []byte, receiver *MvxAddress, value string, gasLimit uint64, dataField []byte) string { +func (instance *chainSimulatorWrapper) SendTxWithoutGenerateBlocks(ctx context.Context, senderSK []byte, receiver *KlvAddress, value string, gasLimit uint64, dataField []byte) string { networkConfig, err := instance.proxyInstance.GetNetworkConfig(ctx) require.Nil(instance, err) @@ -242,7 +242,7 @@ func (instance *chainSimulatorWrapper) FundWallets(ctx context.Context, wallets addressesState = append(addressesState, &dtos.AddressState{ Address: wallet, Nonce: new(uint64), - Balance: thousandEgld, + Balance: thousandKlv, }) } @@ -259,9 +259,9 @@ func (instance *chainSimulatorWrapper) FundWallets(ctx context.Context, wallets } } -// GetESDTBalance returns the balance of the esdt token for the provided address -func (instance *chainSimulatorWrapper) GetESDTBalance(ctx context.Context, address *MvxAddress, token string) string { - tokenData, err := instance.proxyInstance.GetESDTTokenData(ctx, address, token) +// GetKDABalance returns the balance of the kda token for the provided address +func (instance *chainSimulatorWrapper) GetKDABalance(ctx context.Context, address *KlvAddress, token string) string { + tokenData, err := instance.proxyInstance.GetKDATokenData(ctx, address, token) require.Nil(instance, err) return tokenData.Balance @@ -277,7 +277,7 @@ func (instance *chainSimulatorWrapper) GetBlockchainTimeStamp(ctx context.Contex resultStruct := struct { Data struct { Status struct { - ErdBlockTimestamp uint64 `json:"erd_block_timestamp"` + KlvBlockTimestamp uint64 `json:"klv_block_timestamp"` } `json:"status"` } `json:"data"` }{} @@ -285,7 +285,7 @@ func (instance *chainSimulatorWrapper) GetBlockchainTimeStamp(ctx context.Contex err = json.Unmarshal(resultBytes, &resultStruct) require.Nil(instance, err) - return resultStruct.Data.Status.ErdBlockTimestamp + return resultStruct.Data.Status.KlvBlockTimestamp } func (instance *chainSimulatorWrapper) getNonce(ctx context.Context, bech32Address string) (uint64, error) { @@ -357,7 +357,7 @@ func computeTransactionSignature(senderSk []byte, tx *transaction.Transaction) ( // ExecuteVMQuery will try to execute a VM query and return the results func (instance *chainSimulatorWrapper) ExecuteVMQuery( ctx context.Context, - scAddress *MvxAddress, + scAddress *KlvAddress, function string, hexParams []string, ) [][]byte { diff --git a/integrationTests/relayers/slowTests/framework/common.go b/integrationTests/relayers/slowTests/framework/common.go index 89902031..b4e1fb45 100644 --- a/integrationTests/relayers/slowTests/framework/common.go +++ b/integrationTests/relayers/slowTests/framework/common.go @@ -9,6 +9,6 @@ import ( var ( log = logger.GetOrCreate("integrationtests/slowtests") - addressPubkeyConverter, _ = pubkeyConverter.NewBech32PubkeyConverter(32, "erd") + addressPubkeyConverter, _ = pubkeyConverter.NewBech32PubkeyConverter(32, "klv") zeroValueBigInt = big.NewInt(0) ) diff --git a/integrationTests/relayers/slowTests/framework/ethereumHandler.go b/integrationTests/relayers/slowTests/framework/ethereumHandler.go index f4ba591c..6ae7e8e1 100644 --- a/integrationTests/relayers/slowTests/framework/ethereumHandler.go +++ b/integrationTests/relayers/slowTests/framework/ethereumHandler.go @@ -424,11 +424,11 @@ func (handler *EthereumHandler) createDepositsOnEthereumForToken( allowanceValue := big.NewInt(0) for _, operation := range params.TestOperations { - if operation.ValueToTransferToMvx == nil { + if operation.ValueToTransferToKlv == nil { continue } - allowanceValue.Add(allowanceValue, operation.ValueToTransferToMvx) + allowanceValue.Add(allowanceValue, operation.ValueToTransferToKlv) } if allowanceValue.Cmp(zeroValueBigInt) > 0 { @@ -440,21 +440,21 @@ func (handler *EthereumHandler) createDepositsOnEthereumForToken( var err error for _, operation := range params.TestOperations { - if operation.ValueToTransferToMvx == nil { + if operation.ValueToTransferToKlv == nil { continue } var tx *types.Transaction - if len(operation.MvxSCCallData) > 0 || operation.MvxForceSCCall { + if len(operation.KlvSCCallData) > 0 || operation.KlvForceSCCall { tx, err = handler.SafeContract.DepositWithSCExecution( auth, token.EthErc20Address, - operation.ValueToTransferToMvx, + operation.ValueToTransferToKlv, klvTestCallerAddress.AddressSlice(), - operation.MvxSCCallData, + operation.KlvSCCallData, ) } else { - tx, err = handler.SafeContract.Deposit(auth, token.EthErc20Address, operation.ValueToTransferToMvx, handler.TestKeys.MvxAddress.AddressSlice()) + tx, err = handler.SafeContract.Deposit(auth, token.EthErc20Address, operation.ValueToTransferToKlv, handler.TestKeys.KlvAddress.AddressSlice()) } require.NoError(handler, err) @@ -463,8 +463,8 @@ func (handler *EthereumHandler) createDepositsOnEthereumForToken( } } -// SendFromEthereumToMultiversX will create the deposit transactions on the Ethereum side -func (handler *EthereumHandler) SendFromEthereumToMultiversX( +// SendFromEthereumToKC will create the deposit transactions on the Ethereum side +func (handler *EthereumHandler) SendFromEthereumToKC( ctx context.Context, klvTestCallerAddress address.Address, tokensParams ...TestTokenParams, diff --git a/integrationTests/relayers/slowTests/framework/interface.go b/integrationTests/relayers/slowTests/framework/interface.go index a4da89e0..291446cb 100644 --- a/integrationTests/relayers/slowTests/framework/interface.go +++ b/integrationTests/relayers/slowTests/framework/interface.go @@ -31,18 +31,18 @@ type Relayer interface { type ChainSimulatorWrapper interface { Proxy() klever.Proxy GetNetworkAddress() string - DeploySC(ctx context.Context, path string, ownerSK []byte, gasLimit uint64, extraParams []string) (*MvxAddress, string, *data.TransactionOnNetwork) - ScCall(ctx context.Context, senderSK []byte, contract *MvxAddress, value string, gasLimit uint64, function string, parameters []string) (string, *data.TransactionOnNetwork) - ScCallWithoutGenerateBlocks(ctx context.Context, senderSK []byte, contract *MvxAddress, value string, gasLimit uint64, function string, parameters []string) string - SendTx(ctx context.Context, senderSK []byte, receiver *MvxAddress, value string, gasLimit uint64, dataField []byte) (string, *data.TransactionOnNetwork) - SendTxWithoutGenerateBlocks(ctx context.Context, senderSK []byte, receiver *MvxAddress, value string, gasLimit uint64, dataField []byte) string + DeploySC(ctx context.Context, path string, ownerSK []byte, gasLimit uint64, extraParams []string) (*KlvAddress, string, *data.TransactionOnNetwork) + ScCall(ctx context.Context, senderSK []byte, contract *KlvAddress, value string, gasLimit uint64, function string, parameters []string) (string, *data.TransactionOnNetwork) + ScCallWithoutGenerateBlocks(ctx context.Context, senderSK []byte, contract *KlvAddress, value string, gasLimit uint64, function string, parameters []string) string + SendTx(ctx context.Context, senderSK []byte, receiver *KlvAddress, value string, gasLimit uint64, dataField []byte) (string, *data.TransactionOnNetwork) + SendTxWithoutGenerateBlocks(ctx context.Context, senderSK []byte, receiver *KlvAddress, value string, gasLimit uint64, dataField []byte) string FundWallets(ctx context.Context, wallets []string) GenerateBlocksUntilEpochReached(ctx context.Context, epoch uint32) GenerateBlocks(ctx context.Context, numBlocks int) - GetESDTBalance(ctx context.Context, address *MvxAddress, token string) string + GetKDABalance(ctx context.Context, address *KlvAddress, token string) string GetBlockchainTimeStamp(ctx context.Context) uint64 GetTransactionResult(ctx context.Context, hash string) *data.TransactionOnNetwork - ExecuteVMQuery(ctx context.Context, scAddress *MvxAddress, function string, hexParams []string) [][]byte + ExecuteVMQuery(ctx context.Context, scAddress *KlvAddress, function string, hexParams []string) [][]byte } // EthereumBlockchainClient defines the operations supported by the Ethereum client @@ -70,8 +70,8 @@ type TokensRegistry interface { ethErc20Contract ERC20Contract, ) GetTokenData(abstractTokenIdentifier string) *TokenData - RegisterUniversalToken(abstractTokenIdentifier string, mvxUniversalToken string) - RegisterChainSpecificToken(abstractTokenIdentifier string, mvxChainSpecificToken string) + RegisterUniversalToken(abstractTokenIdentifier string, kdaUniversalToken string) + RegisterChainSpecificToken(abstractTokenIdentifier string, kdaChainSpecificToken string) } // SCCallerModule defines the operation for the module able to execute smart contract calls diff --git a/integrationTests/relayers/slowTests/framework/multiversxHandler.go b/integrationTests/relayers/slowTests/framework/kcHandler.go similarity index 64% rename from integrationTests/relayers/slowTests/framework/multiversxHandler.go rename to integrationTests/relayers/slowTests/framework/kcHandler.go index 66d1b617..24aea3d1 100644 --- a/integrationTests/relayers/slowTests/framework/multiversxHandler.go +++ b/integrationTests/relayers/slowTests/framework/kcHandler.go @@ -13,16 +13,16 @@ import ( ) const ( - minRelayerStake = "10000000000000000000" // 10 EGLD - esdtIssueCost = "50000000000000000" // 0.05 EGLD - emptyAddress = "erd1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq6gq4hu" - esdtSystemSCAddress = "erd1qqqqqqqqqqqqqqqpqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqzllls8a5w6u" + minRelayerStake = "10000000000000000000" // 10 KLV + kdaIssueCost = "50000000000000000" // 0.05 KLV + emptyAddress = "klv1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpgm89z" + kdaSystemSCAddress = "" // TODO: check if this address is available, or remove and change the tests slashAmount = "00" zeroStringValue = "0" canAddSpecialRoles = "canAddSpecialRoles" trueStr = "true" - esdtRoleLocalMint = "ESDTRoleLocalMint" - esdtRoleLocalBurn = "ESDTRoleLocalBurn" + kdaRoleLocalMint = "KDARoleLocalMint" + kdaRoleLocalBurn = "KDARoleLocalBurn" hexTrue = "01" hexFalse = "00" gwei = "GWEI" @@ -34,82 +34,82 @@ const ( generalSCCallGasLimit = 50000000 // 50 million gasLimitPerDataByte = 1500 - aggregatorContractPath = "testdata/contracts/mvx/multiversx-price-aggregator-sc.wasm" - wrapperContractPath = "testdata/contracts/mvx/bridged-tokens-wrapper.wasm" - multiTransferContractPath = "testdata/contracts/mvx/multi-transfer-esdt.wasm" - safeContractPath = "testdata/contracts/mvx/esdt-safe.wasm" - multisigContractPath = "testdata/contracts/mvx/multisig.wasm" - bridgeProxyContractPath = "testdata/contracts/mvx/bridge-proxy.wasm" - testCallerContractPath = "testdata/contracts/mvx/test-caller.wasm" - - setBridgeProxyContractAddressFunction = "setBridgeProxyContractAddress" - setWrappingContractAddressFunction = "setWrappingContractAddress" - changeOwnerAddressFunction = "ChangeOwnerAddress" - setEsdtSafeOnMultiTransferFunction = "setEsdtSafeOnMultiTransfer" - setEsdtSafeOnWrapperFunction = "setEsdtSafeContractAddress" - setEsdtSafeAddressFunction = "setEsdtSafeAddress" - stakeFunction = "stake" - unpauseFunction = "unpause" - unpauseEsdtSafeFunction = "unpauseEsdtSafe" - unpauseProxyFunction = "unpauseProxy" - pauseEsdtSafeFunction = "pauseEsdtSafe" - pauseFunction = "pause" - issueFunction = "issue" - setSpecialRoleFunction = "setSpecialRole" - esdtTransferFunction = "ESDTTransfer" - setPairDecimalsFunction = "setPairDecimals" - addWrappedTokenFunction = "addWrappedToken" - depositLiquidityFunction = "depositLiquidity" - whitelistTokenFunction = "whitelistToken" - addMappingFunction = "addMapping" - esdtSafeAddTokenToWhitelistFunction = "esdtSafeAddTokenToWhitelist" - esdtSafeSetMaxBridgedAmountForTokenFunction = "esdtSafeSetMaxBridgedAmountForToken" - multiTransferEsdtSetMaxBridgedAmountForTokenFunction = "multiTransferEsdtSetMaxBridgedAmountForToken" - submitBatchFunction = "submitBatch" - unwrapTokenCreateTransactionFunction = "unwrapTokenCreateTransaction" - createTransactionFunction = "createTransaction" - setBridgedTokensWrapperAddressFunction = "setBridgedTokensWrapperAddress" - setMultiTransferAddressFunction = "setMultiTransferAddress" - withdrawRefundFeesForEthereumFunction = "withdrawRefundFeesForEthereum" - getRefundFeesForEthereumFunction = "getRefundFeesForEthereum" - withdrawTransactionFeesFunction = "withdrawTransactionFees" - getTransactionFeesFunction = "getTransactionFees" - initSupplyMintBurnEsdtSafe = "initSupplyMintBurnEsdtSafe" - initSupplyEsdtSafe = "initSupplyEsdtSafe" + aggregatorContractPath = "testdata/contracts/kda/multiversx-price-aggregator-sc.wasm" + wrapperContractPath = "testdata/contracts/kda/bridged-tokens-wrapper.wasm" + multiTransferContractPath = "testdata/contracts/kda/multi-transfer-kda.wasm" + safeContractPath = "testdata/contracts/kda/kda-safe.wasm" + multisigContractPath = "testdata/contracts/kda/multisig.wasm" + bridgeProxyContractPath = "testdata/contracts/kda/bridge-proxy.wasm" + testCallerContractPath = "testdata/contracts/kda/test-caller.wasm" + + setBridgeProxyContractAddressFunction = "setBridgeProxyContractAddress" + setWrappingContractAddressFunction = "setWrappingContractAddress" + changeOwnerAddressFunction = "ChangeOwnerAddress" + setKdaSafeOnMultiTransferFunction = "setKdaSafeOnMultiTransfer" + setKdaSafeOnWrapperFunction = "setKdaSafeContractAddress" + setKdaSafeAddressFunction = "setKdaSafeAddress" + stakeFunction = "stake" + unpauseFunction = "unpause" + unpauseKdaSafeFunction = "unpauseKdaSafe" + unpauseProxyFunction = "unpauseProxy" + pauseKdaSafeFunction = "pauseKdaSafe" + pauseFunction = "pause" + issueFunction = "issue" + setSpecialRoleFunction = "setSpecialRole" + kdaTransferFunction = "KDATransfer" + setPairDecimalsFunction = "setPairDecimals" + addWrappedTokenFunction = "addWrappedToken" + depositLiquidityFunction = "depositLiquidity" + whitelistTokenFunction = "whitelistToken" + addMappingFunction = "addMapping" + kdaSafeAddTokenToWhitelistFunction = "kdaSafeAddTokenToWhitelist" + kdaSafeSetMaxBridgedAmountForTokenFunction = "kdaSafeSetMaxBridgedAmountForToken" + multiTransferKdaSetMaxBridgedAmountForTokenFunction = "multiTransferKdaSetMaxBridgedAmountForToken" + submitBatchFunction = "submitBatch" + unwrapTokenCreateTransactionFunction = "unwrapTokenCreateTransaction" + createTransactionFunction = "createTransaction" + setBridgedTokensWrapperAddressFunction = "setBridgedTokensWrapperAddress" + setMultiTransferAddressFunction = "setMultiTransferAddress" + withdrawRefundFeesForEthereumFunction = "withdrawRefundFeesForEthereum" + getRefundFeesForEthereumFunction = "getRefundFeesForEthereum" + withdrawTransactionFeesFunction = "withdrawTransactionFees" + getTransactionFeesFunction = "getTransactionFees" + initSupplyMintBurnKdaSafe = "initSupplyMintBurnKdaSafe" + initSupplyKdaSafe = "initSupplyKdaSafe" ) var ( feeInt = big.NewInt(50) ) -// MultiversxHandler will handle all the operations on the MultiversX side -type MultiversxHandler struct { +// KCHandler will handle all the operations on the Klever Blockchain side +type KCHandler struct { testing.TB *KeysStore Quorum string TokensRegistry TokensRegistry ChainSimulator ChainSimulatorWrapper - AggregatorAddress *MvxAddress - WrapperAddress *MvxAddress - SafeAddress *MvxAddress - MultisigAddress *MvxAddress - MultiTransferAddress *MvxAddress - ScProxyAddress *MvxAddress - TestCallerAddress *MvxAddress - ESDTSystemContractAddress *MvxAddress + AggregatorAddress *KlvAddress + WrapperAddress *KlvAddress + SafeAddress *KlvAddress + MultisigAddress *KlvAddress + MultiTransferAddress *KlvAddress + ScProxyAddress *KlvAddress + TestCallerAddress *KlvAddress + KDASystemContractAddress *KlvAddress } -// NewMultiversxHandler will create the handler that will adapt all test operations on MultiversX -func NewMultiversxHandler( +// NewKCHandler will create the handler that will adapt all test operations on KC +func NewKCHandler( tb testing.TB, ctx context.Context, keysStore *KeysStore, tokensRegistry TokensRegistry, chainSimulator ChainSimulatorWrapper, quorum string, -) *MultiversxHandler { - handler := &MultiversxHandler{ +) *KCHandler { + handler := &KCHandler{ TB: tb, KeysStore: keysStore, TokensRegistry: tokensRegistry, @@ -117,18 +117,18 @@ func NewMultiversxHandler( Quorum: quorum, } - handler.ESDTSystemContractAddress = NewMvxAddressFromBech32(handler, esdtSystemSCAddress) + handler.KDASystemContractAddress = NewKlvAddressFromBech32(handler, kdaSystemSCAddress) handler.ChainSimulator.GenerateBlocksUntilEpochReached(ctx, 1) - handler.ChainSimulator.FundWallets(ctx, handler.WalletsToFundOnMultiversX()) + handler.ChainSimulator.FundWallets(ctx, handler.WalletsToFundOnKC()) handler.ChainSimulator.GenerateBlocks(ctx, 1) return handler } -// DeployAndSetContracts will deploy all required contracts on MultiversX side and do the proper wiring -func (handler *MultiversxHandler) DeployAndSetContracts(ctx context.Context) { +// DeployAndSetContracts will deploy all required contracts on Klever Blockchain side and do the proper wiring +func (handler *KCHandler) DeployAndSetContracts(ctx context.Context) { handler.deployContracts(ctx) handler.wireMultiTransfer(ctx) @@ -139,11 +139,11 @@ func (handler *MultiversxHandler) DeployAndSetContracts(ctx context.Context) { handler.finishSettings(ctx) } -func (handler *MultiversxHandler) deployContracts(ctx context.Context) { +func (handler *KCHandler) deployContracts(ctx context.Context) { // deploy aggregator stakeValue, _ := big.NewInt(0).SetString(minRelayerStake, 10) aggregatorDeployParams := []string{ - hex.EncodeToString([]byte("EGLD")), + hex.EncodeToString([]byte("KLV")), hex.EncodeToString(stakeValue.Bytes()), "01", "02", @@ -151,14 +151,14 @@ func (handler *MultiversxHandler) deployContracts(ctx context.Context) { } for _, oracleKey := range handler.OraclesKeys { - aggregatorDeployParams = append(aggregatorDeployParams, oracleKey.MvxAddress.Hex()) + aggregatorDeployParams = append(aggregatorDeployParams, oracleKey.KlvAddress.Hex()) } hash := "" handler.AggregatorAddress, hash, _ = handler.ChainSimulator.DeploySC( ctx, aggregatorContractPath, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, deployGasLimit, aggregatorDeployParams, ) @@ -169,7 +169,7 @@ func (handler *MultiversxHandler) deployContracts(ctx context.Context) { handler.WrapperAddress, hash, _ = handler.ChainSimulator.DeploySC( ctx, wrapperContractPath, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, deployGasLimit, []string{}, ) @@ -180,7 +180,7 @@ func (handler *MultiversxHandler) deployContracts(ctx context.Context) { handler.MultiTransferAddress, hash, _ = handler.ChainSimulator.DeploySC( ctx, multiTransferContractPath, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, deployGasLimit, []string{}, ) @@ -191,7 +191,7 @@ func (handler *MultiversxHandler) deployContracts(ctx context.Context) { handler.SafeAddress, hash, _ = handler.ChainSimulator.DeploySC( ctx, safeContractPath, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, deployGasLimit, []string{ handler.AggregatorAddress.Hex(), @@ -206,7 +206,7 @@ func (handler *MultiversxHandler) deployContracts(ctx context.Context) { handler.ScProxyAddress, hash, _ = handler.ChainSimulator.DeploySC( ctx, bridgeProxyContractPath, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, deployGasLimit, []string{ handler.MultiTransferAddress.Hex(), @@ -226,12 +226,12 @@ func (handler *MultiversxHandler) deployContracts(ctx context.Context) { slashAmount, handler.Quorum} for _, relayerKeys := range handler.RelayersKeys { - params = append(params, relayerKeys.MvxAddress.Hex()) + params = append(params, relayerKeys.KlvAddress.Hex()) } handler.MultisigAddress, hash, _ = handler.ChainSimulator.DeploySC( ctx, multisigContractPath, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, deployGasLimit, params, ) @@ -242,7 +242,7 @@ func (handler *MultiversxHandler) deployContracts(ctx context.Context) { handler.TestCallerAddress, hash, _ = handler.ChainSimulator.DeploySC( ctx, testCallerContractPath, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, deployGasLimit, []string{}, ) @@ -250,11 +250,11 @@ func (handler *MultiversxHandler) deployContracts(ctx context.Context) { log.Info("Deploy: test-caller contract", "address", handler.TestCallerAddress, "transaction hash", hash) } -func (handler *MultiversxHandler) wireMultiTransfer(ctx context.Context) { +func (handler *KCHandler) wireMultiTransfer(ctx context.Context) { // setBridgeProxyContractAddress hash, txResult := handler.ChainSimulator.ScCall( ctx, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, handler.MultiTransferAddress, zeroStringValue, setCallsGasLimit, @@ -268,7 +268,7 @@ func (handler *MultiversxHandler) wireMultiTransfer(ctx context.Context) { // setWrappingContractAddress hash, txResult = handler.ChainSimulator.ScCall( ctx, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, handler.MultiTransferAddress, zeroStringValue, setCallsGasLimit, @@ -280,11 +280,11 @@ func (handler *MultiversxHandler) wireMultiTransfer(ctx context.Context) { log.Info("Set in multi-transfer contract the wrapper contract", "transaction hash", hash, "status", txResult.Status) } -func (handler *MultiversxHandler) wireSCProxy(ctx context.Context) { +func (handler *KCHandler) wireSCProxy(ctx context.Context) { // setBridgedTokensWrapper in SC bridge proxy hash, txResult := handler.ChainSimulator.ScCall( ctx, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, handler.ScProxyAddress, zeroStringValue, setCallsGasLimit, @@ -298,7 +298,7 @@ func (handler *MultiversxHandler) wireSCProxy(ctx context.Context) { // setMultiTransferAddress in SC bridge proxy hash, txResult = handler.ChainSimulator.ScCall( ctx, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, handler.ScProxyAddress, zeroStringValue, setCallsGasLimit, @@ -309,14 +309,14 @@ func (handler *MultiversxHandler) wireSCProxy(ctx context.Context) { ) log.Info("Set in SC proxy contract the multi-transfer contract", "transaction hash", hash, "status", txResult.Status) - // setEsdtSafeAddress on bridge proxy + // setKdaSafeAddress on bridge proxy hash, txResult = handler.ChainSimulator.ScCall( ctx, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, handler.ScProxyAddress, zeroStringValue, setCallsGasLimit, - setEsdtSafeAddressFunction, + setKdaSafeAddressFunction, []string{ handler.SafeAddress.Hex(), }, @@ -324,11 +324,11 @@ func (handler *MultiversxHandler) wireSCProxy(ctx context.Context) { log.Info("Set in SC proxy contract the safe contract", "transaction hash", hash, "status", txResult.Status) } -func (handler *MultiversxHandler) wireSafe(ctx context.Context) { +func (handler *KCHandler) wireSafe(ctx context.Context) { // setBridgedTokensWrapperAddress hash, txResult := handler.ChainSimulator.ScCall( ctx, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, handler.SafeAddress, zeroStringValue, setCallsGasLimit, @@ -342,7 +342,7 @@ func (handler *MultiversxHandler) wireSafe(ctx context.Context) { //setBridgeProxyContractAddress hash, txResult = handler.ChainSimulator.ScCall( ctx, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, handler.SafeAddress, zeroStringValue, setCallsGasLimit, @@ -354,11 +354,11 @@ func (handler *MultiversxHandler) wireSafe(ctx context.Context) { log.Info("Set in safe contract the SC proxy contract", "transaction hash", hash, "status", txResult.Status) } -func (handler *MultiversxHandler) changeOwners(ctx context.Context) { +func (handler *KCHandler) changeOwners(ctx context.Context) { // ChangeOwnerAddress for safe hash, txResult := handler.ChainSimulator.ScCall( ctx, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, handler.SafeAddress, zeroStringValue, setCallsGasLimit, @@ -372,7 +372,7 @@ func (handler *MultiversxHandler) changeOwners(ctx context.Context) { // ChangeOwnerAddress for multi-transfer hash, txResult = handler.ChainSimulator.ScCall( ctx, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, handler.MultiTransferAddress, zeroStringValue, setCallsGasLimit, @@ -386,7 +386,7 @@ func (handler *MultiversxHandler) changeOwners(ctx context.Context) { // ChangeOwnerAddress for bridge proxy hash, txResult = handler.ChainSimulator.ScCall( ctx, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, handler.ScProxyAddress, zeroStringValue, setCallsGasLimit, @@ -398,19 +398,19 @@ func (handler *MultiversxHandler) changeOwners(ctx context.Context) { log.Info("ChangeOwnerAddress for SC proxy contract", "transaction hash", hash, "status", txResult.Status) } -func (handler *MultiversxHandler) finishSettings(ctx context.Context) { +func (handler *KCHandler) finishSettings(ctx context.Context) { // unpause sc proxy hash, txResult := handler.callContractNoParams(ctx, handler.MultisigAddress, unpauseProxyFunction) log.Info("Un-paused SC proxy contract", "transaction hash", hash, "status", txResult.Status) - // setEsdtSafeOnMultiTransfer + // setKdaSafeOnMultiTransfer hash, txResult = handler.ChainSimulator.ScCall( ctx, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, handler.MultisigAddress, zeroStringValue, setCallsGasLimit, - setEsdtSafeOnMultiTransferFunction, + setKdaSafeOnMultiTransferFunction, []string{}, ) log.Info("Set in multisig contract the safe contract (automatically)", "transaction hash", hash, "status", txResult.Status) @@ -429,31 +429,31 @@ func (handler *MultiversxHandler) finishSettings(ctx context.Context) { } // CheckForZeroBalanceOnReceivers will check that the balances for all provided tokens are 0 for the test address and the test SC call address -func (handler *MultiversxHandler) CheckForZeroBalanceOnReceivers(ctx context.Context, tokens ...TestTokenParams) { +func (handler *KCHandler) CheckForZeroBalanceOnReceivers(ctx context.Context, tokens ...TestTokenParams) { for _, params := range tokens { handler.CheckForZeroBalanceOnReceiversForToken(ctx, params) } } // CheckForZeroBalanceOnReceiversForToken will check that the balance for the test address and the test SC call address is 0 -func (handler *MultiversxHandler) CheckForZeroBalanceOnReceiversForToken(ctx context.Context, token TestTokenParams) { - balance := handler.GetESDTUniversalTokenBalance(ctx, handler.TestKeys.MvxAddress, token.AbstractTokenIdentifier) +func (handler *KCHandler) CheckForZeroBalanceOnReceiversForToken(ctx context.Context, token TestTokenParams) { + balance := handler.GetKDAUniversalTokenBalance(ctx, handler.TestKeys.KlvAddress, token.AbstractTokenIdentifier) require.Equal(handler, big.NewInt(0).String(), balance.String()) - balance = handler.GetESDTUniversalTokenBalance(ctx, handler.TestCallerAddress, token.AbstractTokenIdentifier) + balance = handler.GetKDAUniversalTokenBalance(ctx, handler.TestCallerAddress, token.AbstractTokenIdentifier) require.Equal(handler, big.NewInt(0).String(), balance.String()) } -// GetESDTUniversalTokenBalance will return the universal ESDT token's balance -func (handler *MultiversxHandler) GetESDTUniversalTokenBalance( +// GetKDAUniversalTokenBalance will return the universal KDA token's balance +func (handler *KCHandler) GetKDAUniversalTokenBalance( ctx context.Context, - address *MvxAddress, + address *KlvAddress, abstractTokenIdentifier string, ) *big.Int { token := handler.TokensRegistry.GetTokenData(abstractTokenIdentifier) require.NotNil(handler, token) - balanceString := handler.ChainSimulator.GetESDTBalance(ctx, address, token.MvxUniversalToken) + balanceString := handler.ChainSimulator.GetKDABalance(ctx, address, token.KlvUniversalToken) balance, ok := big.NewInt(0).SetString(balanceString, 10) require.True(handler, ok) @@ -461,16 +461,16 @@ func (handler *MultiversxHandler) GetESDTUniversalTokenBalance( return balance } -// GetESDTChainSpecificTokenBalance will return the chain specific ESDT token's balance -func (handler *MultiversxHandler) GetESDTChainSpecificTokenBalance( +// GetKDAChainSpecificTokenBalance will return the chain specific KDA token's balance +func (handler *KCHandler) GetKDAChainSpecificTokenBalance( ctx context.Context, - address *MvxAddress, + address *KlvAddress, abstractTokenIdentifier string, ) *big.Int { token := handler.TokensRegistry.GetTokenData(abstractTokenIdentifier) require.NotNil(handler, token) - balanceString := handler.ChainSimulator.GetESDTBalance(ctx, address, token.MvxChainSpecificToken) + balanceString := handler.ChainSimulator.GetKDABalance(ctx, address, token.KlvChainSpecificToken) balance, ok := big.NewInt(0).SetString(balanceString, 10) require.True(handler, ok) @@ -478,10 +478,10 @@ func (handler *MultiversxHandler) GetESDTChainSpecificTokenBalance( return balance } -func (handler *MultiversxHandler) callContractNoParams(ctx context.Context, contract *MvxAddress, endpoint string) (string, *data.TransactionOnNetwork) { +func (handler *KCHandler) callContractNoParams(ctx context.Context, contract *KlvAddress, endpoint string) (string, *data.TransactionOnNetwork) { return handler.ChainSimulator.ScCall( ctx, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, contract, zeroStringValue, setCallsGasLimit, @@ -491,9 +491,9 @@ func (handler *MultiversxHandler) callContractNoParams(ctx context.Context, cont } // UnPauseContractsAfterTokenChanges can unpause contracts after token changes -func (handler *MultiversxHandler) UnPauseContractsAfterTokenChanges(ctx context.Context) { +func (handler *KCHandler) UnPauseContractsAfterTokenChanges(ctx context.Context) { // unpause safe - hash, txResult := handler.callContractNoParams(ctx, handler.MultisigAddress, unpauseEsdtSafeFunction) + hash, txResult := handler.callContractNoParams(ctx, handler.MultisigAddress, unpauseKdaSafeFunction) log.Info("unpaused safe executed", "hash", hash, "status", txResult.Status) // unpause wrapper @@ -506,9 +506,9 @@ func (handler *MultiversxHandler) UnPauseContractsAfterTokenChanges(ctx context. } // PauseContractsForTokenChanges can pause contracts for token changes -func (handler *MultiversxHandler) PauseContractsForTokenChanges(ctx context.Context) { +func (handler *KCHandler) PauseContractsForTokenChanges(ctx context.Context) { // pause safe - hash, txResult := handler.callContractNoParams(ctx, handler.MultisigAddress, pauseEsdtSafeFunction) + hash, txResult := handler.callContractNoParams(ctx, handler.MultisigAddress, pauseKdaSafeFunction) log.Info("paused safe executed", "hash", hash, "status", txResult.Status) // pause aggregator @@ -520,22 +520,22 @@ func (handler *MultiversxHandler) PauseContractsForTokenChanges(ctx context.Cont log.Info("paused wrapper executed", "hash", hash, "status", txResult.Status) } -func (handler *MultiversxHandler) stakeAddressesOnContract(ctx context.Context, contract *MvxAddress, allKeys []KeysHolder) { +func (handler *KCHandler) stakeAddressesOnContract(ctx context.Context, contract *KlvAddress, allKeys []KeysHolder) { for _, keys := range allKeys { hash, txResult := handler.ChainSimulator.SendTx( ctx, - keys.MvxSk, + keys.KlvSk, contract, minRelayerStake, setCallsGasLimit, []byte(stakeFunction), ) - log.Info(fmt.Sprintf("Address %s staked on contract %s with transaction hash %s, status %s", keys.MvxAddress, contract, hash, txResult.Status)) + log.Info(fmt.Sprintf("Address %s staked on contract %s with transaction hash %s, status %s", keys.KlvAddress, contract, hash, txResult.Status)) } } -// IssueAndWhitelistToken will issue and whitelist the token on MultiversX -func (handler *MultiversxHandler) IssueAndWhitelistToken(ctx context.Context, params IssueTokenParams) { +// IssueAndWhitelistToken will issue and whitelist the token on KC +func (handler *KCHandler) IssueAndWhitelistToken(ctx context.Context, params IssueTokenParams) { if params.HasChainSpecificToken { handler.issueAndWhitelistTokensWithChainSpecific(ctx, params) } else { @@ -543,7 +543,7 @@ func (handler *MultiversxHandler) IssueAndWhitelistToken(ctx context.Context, pa } } -func (handler *MultiversxHandler) issueAndWhitelistTokensWithChainSpecific(ctx context.Context, params IssueTokenParams) { +func (handler *KCHandler) issueAndWhitelistTokensWithChainSpecific(ctx context.Context, params IssueTokenParams) { handler.issueUniversalToken(ctx, params) handler.issueChainSpecificToken(ctx, params) handler.setLocalRolesForUniversalTokenOnWrapper(ctx, params) @@ -559,11 +559,11 @@ func (handler *MultiversxHandler) issueAndWhitelistTokensWithChainSpecific(ctx c handler.setMaxBridgeAmountOnMultitransfer(ctx, params) } -func (handler *MultiversxHandler) issueAndWhitelistTokens(ctx context.Context, params IssueTokenParams) { +func (handler *KCHandler) issueAndWhitelistTokens(ctx context.Context, params IssueTokenParams) { handler.issueUniversalToken(ctx, params) tkData := handler.TokensRegistry.GetTokenData(params.AbstractTokenIdentifier) - handler.TokensRegistry.RegisterChainSpecificToken(params.AbstractTokenIdentifier, tkData.MvxUniversalToken) + handler.TokensRegistry.RegisterChainSpecificToken(params.AbstractTokenIdentifier, tkData.KlvUniversalToken) handler.setRolesForSpecificTokenOnSafe(ctx, params) handler.addMappingInMultisig(ctx, params) @@ -574,79 +574,79 @@ func (handler *MultiversxHandler) issueAndWhitelistTokens(ctx context.Context, p handler.setMaxBridgeAmountOnMultitransfer(ctx, params) } -func (handler *MultiversxHandler) issueUniversalToken(ctx context.Context, params IssueTokenParams) { +func (handler *KCHandler) issueUniversalToken(ctx context.Context, params IssueTokenParams) { token := handler.TokensRegistry.GetTokenData(params.AbstractTokenIdentifier) require.NotNil(handler, token) - valueToMintInt, ok := big.NewInt(0).SetString(params.ValueToMintOnMvx, 10) + valueToMintInt, ok := big.NewInt(0).SetString(params.ValueToMintOnKlv, 10) require.True(handler, ok) // issue universal token hash, txResult := handler.ChainSimulator.ScCall( ctx, - handler.OwnerKeys.MvxSk, - handler.ESDTSystemContractAddress, - esdtIssueCost, + handler.OwnerKeys.KlvSk, + handler.KDASystemContractAddress, + kdaIssueCost, issueTokenGasLimit, issueFunction, []string{ - hex.EncodeToString([]byte(params.MvxUniversalTokenDisplayName)), - hex.EncodeToString([]byte(params.MvxUniversalTokenTicker)), + hex.EncodeToString([]byte(params.KlvUniversalTokenDisplayName)), + hex.EncodeToString([]byte(params.KlvUniversalTokenTicker)), hex.EncodeToString(valueToMintInt.Bytes()), fmt.Sprintf("%02x", params.NumOfDecimalsUniversal), hex.EncodeToString([]byte(canAddSpecialRoles)), hex.EncodeToString([]byte(trueStr))}) - mvxUniversalToken := handler.getTokenNameFromResult(*txResult) - require.Greater(handler, len(mvxUniversalToken), 0) - handler.TokensRegistry.RegisterUniversalToken(params.AbstractTokenIdentifier, mvxUniversalToken) - log.Info("issue universal token tx executed", "hash", hash, "status", txResult.Status, "token", mvxUniversalToken, "owner", handler.OwnerKeys.MvxAddress) + kdaUniversalToken := handler.getTokenNameFromResult(*txResult) + require.Greater(handler, len(kdaUniversalToken), 0) + handler.TokensRegistry.RegisterUniversalToken(params.AbstractTokenIdentifier, kdaUniversalToken) + log.Info("issue universal token tx executed", "hash", hash, "status", txResult.Status, "token", kdaUniversalToken, "owner", handler.OwnerKeys.KlvAddress) } -func (handler *MultiversxHandler) issueChainSpecificToken(ctx context.Context, params IssueTokenParams) { - valueToMintInt, ok := big.NewInt(0).SetString(params.ValueToMintOnMvx, 10) +func (handler *KCHandler) issueChainSpecificToken(ctx context.Context, params IssueTokenParams) { + valueToMintInt, ok := big.NewInt(0).SetString(params.ValueToMintOnKlv, 10) require.True(handler, ok) hash, txResult := handler.ChainSimulator.ScCall( ctx, - handler.OwnerKeys.MvxSk, - handler.ESDTSystemContractAddress, - esdtIssueCost, + handler.OwnerKeys.KlvSk, + handler.KDASystemContractAddress, + kdaIssueCost, issueTokenGasLimit, issueFunction, []string{ - hex.EncodeToString([]byte(params.MvxChainSpecificTokenDisplayName)), - hex.EncodeToString([]byte(params.MvxChainSpecificTokenTicker)), + hex.EncodeToString([]byte(params.KlvChainSpecificTokenDisplayName)), + hex.EncodeToString([]byte(params.KlvChainSpecificTokenTicker)), hex.EncodeToString(valueToMintInt.Bytes()), fmt.Sprintf("%02x", params.NumOfDecimalsChainSpecific), hex.EncodeToString([]byte(canAddSpecialRoles)), hex.EncodeToString([]byte(trueStr))}) - mvxChainSpecificToken := handler.getTokenNameFromResult(*txResult) - require.Greater(handler, len(mvxChainSpecificToken), 0) - handler.TokensRegistry.RegisterChainSpecificToken(params.AbstractTokenIdentifier, mvxChainSpecificToken) - log.Info("issue chain specific token tx executed", "hash", hash, "status", txResult.Status, "token", mvxChainSpecificToken, "owner", handler.OwnerKeys.MvxAddress) + kdaChainSpecificToken := handler.getTokenNameFromResult(*txResult) + require.Greater(handler, len(kdaChainSpecificToken), 0) + handler.TokensRegistry.RegisterChainSpecificToken(params.AbstractTokenIdentifier, kdaChainSpecificToken) + log.Info("issue chain specific token tx executed", "hash", hash, "status", txResult.Status, "token", kdaChainSpecificToken, "owner", handler.OwnerKeys.KlvAddress) } -func (handler *MultiversxHandler) setLocalRolesForUniversalTokenOnWrapper(ctx context.Context, params IssueTokenParams) { +func (handler *KCHandler) setLocalRolesForUniversalTokenOnWrapper(ctx context.Context, params IssueTokenParams) { tkData := handler.TokensRegistry.GetTokenData(params.AbstractTokenIdentifier) // set local roles bridged tokens wrapper hash, txResult := handler.ChainSimulator.ScCall( ctx, - handler.OwnerKeys.MvxSk, - handler.ESDTSystemContractAddress, + handler.OwnerKeys.KlvSk, + handler.KDASystemContractAddress, zeroStringValue, setCallsGasLimit, setSpecialRoleFunction, []string{ - hex.EncodeToString([]byte(tkData.MvxUniversalToken)), + hex.EncodeToString([]byte(tkData.KlvUniversalToken)), handler.WrapperAddress.Hex(), - hex.EncodeToString([]byte(esdtRoleLocalMint)), - hex.EncodeToString([]byte(esdtRoleLocalBurn))}) + hex.EncodeToString([]byte(kdaRoleLocalMint)), + hex.EncodeToString([]byte(kdaRoleLocalBurn))}) log.Info("set local roles bridged tokens wrapper tx executed", "hash", hash, "status", txResult.Status) } -func (handler *MultiversxHandler) transferChainSpecificTokenToSCs(ctx context.Context, params IssueTokenParams) { - valueToMintInt, ok := big.NewInt(0).SetString(params.ValueToMintOnMvx, 10) +func (handler *KCHandler) transferChainSpecificTokenToSCs(ctx context.Context, params IssueTokenParams) { + valueToMintInt, ok := big.NewInt(0).SetString(params.ValueToMintOnKlv, 10) require.True(handler, ok) tkData := handler.TokensRegistry.GetTokenData(params.AbstractTokenIdentifier) @@ -655,13 +655,13 @@ func (handler *MultiversxHandler) transferChainSpecificTokenToSCs(ctx context.Co initialMintValue := valueToMintInt.Div(valueToMintInt, big.NewInt(3)) hash, txResult := handler.ChainSimulator.ScCall( ctx, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, handler.WrapperAddress, zeroStringValue, setCallsGasLimit, - esdtTransferFunction, + kdaTransferFunction, []string{ - hex.EncodeToString([]byte(tkData.MvxChainSpecificToken)), + hex.EncodeToString([]byte(tkData.KlvChainSpecificToken)), hex.EncodeToString(initialMintValue.Bytes()), hex.EncodeToString([]byte(depositLiquidityFunction))}) log.Info("transfer to wrapper sc tx executed", "hash", hash, "status", txResult.Status) @@ -669,105 +669,105 @@ func (handler *MultiversxHandler) transferChainSpecificTokenToSCs(ctx context.Co // transfer to safe sc hash, txResult = handler.ChainSimulator.ScCall( ctx, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, handler.SafeAddress, zeroStringValue, setCallsGasLimit, - esdtTransferFunction, + kdaTransferFunction, []string{ - hex.EncodeToString([]byte(tkData.MvxChainSpecificToken)), + hex.EncodeToString([]byte(tkData.KlvChainSpecificToken)), hex.EncodeToString(initialMintValue.Bytes())}) log.Info("transfer to safe sc tx executed", "hash", hash, "status", txResult.Status) } -func (handler *MultiversxHandler) addUniversalTokenToWrapper(ctx context.Context, params IssueTokenParams) { +func (handler *KCHandler) addUniversalTokenToWrapper(ctx context.Context, params IssueTokenParams) { tkData := handler.TokensRegistry.GetTokenData(params.AbstractTokenIdentifier) // add wrapped token hash, txResult := handler.ChainSimulator.ScCall( ctx, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, handler.WrapperAddress, zeroStringValue, setCallsGasLimit, addWrappedTokenFunction, []string{ - hex.EncodeToString([]byte(tkData.MvxUniversalToken)), + hex.EncodeToString([]byte(tkData.KlvUniversalToken)), fmt.Sprintf("%02x", params.NumOfDecimalsUniversal), }) log.Info("add wrapped token tx executed", "hash", hash, "status", txResult.Status) } -func (handler *MultiversxHandler) whitelistTokenOnWrapper(ctx context.Context, params IssueTokenParams) { +func (handler *KCHandler) whitelistTokenOnWrapper(ctx context.Context, params IssueTokenParams) { tkData := handler.TokensRegistry.GetTokenData(params.AbstractTokenIdentifier) // wrapper whitelist token hash, txResult := handler.ChainSimulator.ScCall( ctx, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, handler.WrapperAddress, zeroStringValue, setCallsGasLimit, whitelistTokenFunction, []string{ - hex.EncodeToString([]byte(tkData.MvxChainSpecificToken)), + hex.EncodeToString([]byte(tkData.KlvChainSpecificToken)), fmt.Sprintf("%02x", params.NumOfDecimalsChainSpecific), - hex.EncodeToString([]byte(tkData.MvxUniversalToken))}) + hex.EncodeToString([]byte(tkData.KlvUniversalToken))}) log.Info("wrapper whitelist token tx executed", "hash", hash, "status", txResult.Status) } -func (handler *MultiversxHandler) setRolesForSpecificTokenOnSafe(ctx context.Context, params IssueTokenParams) { +func (handler *KCHandler) setRolesForSpecificTokenOnSafe(ctx context.Context, params IssueTokenParams) { tkData := handler.TokensRegistry.GetTokenData(params.AbstractTokenIdentifier) - // set local roles esdt safe + // set local roles kda safe hash, txResult := handler.ChainSimulator.ScCall( ctx, - handler.OwnerKeys.MvxSk, - handler.ESDTSystemContractAddress, + handler.OwnerKeys.KlvSk, + handler.KDASystemContractAddress, zeroStringValue, setCallsGasLimit, setSpecialRoleFunction, []string{ - hex.EncodeToString([]byte(tkData.MvxChainSpecificToken)), + hex.EncodeToString([]byte(tkData.KlvChainSpecificToken)), handler.SafeAddress.Hex(), - hex.EncodeToString([]byte(esdtRoleLocalMint)), - hex.EncodeToString([]byte(esdtRoleLocalBurn))}) - log.Info("set local roles esdt safe tx executed", "hash", hash, "status", txResult.Status) + hex.EncodeToString([]byte(kdaRoleLocalMint)), + hex.EncodeToString([]byte(kdaRoleLocalBurn))}) + log.Info("set local roles kda safe tx executed", "hash", hash, "status", txResult.Status) } -func (handler *MultiversxHandler) addMappingInMultisig(ctx context.Context, params IssueTokenParams) { +func (handler *KCHandler) addMappingInMultisig(ctx context.Context, params IssueTokenParams) { tkData := handler.TokensRegistry.GetTokenData(params.AbstractTokenIdentifier) // add mapping hash, txResult := handler.ChainSimulator.ScCall( ctx, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, handler.MultisigAddress, zeroStringValue, setCallsGasLimit, addMappingFunction, []string{ hex.EncodeToString(tkData.EthErc20Address.Bytes()), - hex.EncodeToString([]byte(tkData.MvxChainSpecificToken))}) + hex.EncodeToString([]byte(tkData.KlvChainSpecificToken))}) log.Info("add mapping tx executed", "hash", hash, "status", txResult.Status) } -func (handler *MultiversxHandler) whitelistTokenOnMultisig(ctx context.Context, params IssueTokenParams) { +func (handler *KCHandler) whitelistTokenOnMultisig(ctx context.Context, params IssueTokenParams) { tkData := handler.TokensRegistry.GetTokenData(params.AbstractTokenIdentifier) // whitelist token hash, txResult := handler.ChainSimulator.ScCall( ctx, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, handler.MultisigAddress, zeroStringValue, setCallsGasLimit, - esdtSafeAddTokenToWhitelistFunction, + kdaSafeAddTokenToWhitelistFunction, []string{ - hex.EncodeToString([]byte(tkData.MvxChainSpecificToken)), - hex.EncodeToString([]byte(params.MvxChainSpecificTokenTicker)), - getHexBool(params.IsMintBurnOnMvX), - getHexBool(params.IsNativeOnMvX), + hex.EncodeToString([]byte(tkData.KlvChainSpecificToken)), + hex.EncodeToString([]byte(params.KlvChainSpecificTokenTicker)), + getHexBool(params.IsMintBurnOnKlv), + getHexBool(params.IsNativeOnKlv), hex.EncodeToString(zeroValueBigInt.Bytes()), // total_balance hex.EncodeToString(zeroValueBigInt.Bytes()), // mint_balance hex.EncodeToString(zeroValueBigInt.Bytes()), // burn_balance @@ -775,7 +775,7 @@ func (handler *MultiversxHandler) whitelistTokenOnMultisig(ctx context.Context, log.Info("whitelist token tx executed", "hash", hash, "status", txResult.Status) } -func (handler *MultiversxHandler) setInitialSupply(ctx context.Context, params IssueTokenParams) { +func (handler *KCHandler) setInitialSupply(ctx context.Context, params IssueTokenParams) { tkData := handler.TokensRegistry.GetTokenData(params.AbstractTokenIdentifier) // set initial supply @@ -783,16 +783,16 @@ func (handler *MultiversxHandler) setInitialSupply(ctx context.Context, params I initialSupply, okConvert := big.NewInt(0).SetString(params.InitialSupplyValue, 10) require.True(handler, okConvert) - if params.IsMintBurnOnMvX { + if params.IsMintBurnOnKlv { hash, txResult := handler.ChainSimulator.ScCall( ctx, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, handler.MultisigAddress, zeroStringValue, setCallsGasLimit, - initSupplyMintBurnEsdtSafe, + initSupplyMintBurnKdaSafe, []string{ - hex.EncodeToString([]byte(tkData.MvxChainSpecificToken)), + hex.EncodeToString([]byte(tkData.KlvChainSpecificToken)), hex.EncodeToString(initialSupply.Bytes()), hex.EncodeToString([]byte{0}), }, @@ -802,16 +802,16 @@ func (handler *MultiversxHandler) setInitialSupply(ctx context.Context, params I } else { hash, txResult := handler.ChainSimulator.ScCall( ctx, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, handler.MultisigAddress, zeroStringValue, setCallsGasLimit, - esdtTransferFunction, + kdaTransferFunction, []string{ - hex.EncodeToString([]byte(tkData.MvxChainSpecificToken)), + hex.EncodeToString([]byte(tkData.KlvChainSpecificToken)), hex.EncodeToString(initialSupply.Bytes()), - hex.EncodeToString([]byte(initSupplyEsdtSafe)), - hex.EncodeToString([]byte(tkData.MvxChainSpecificToken)), + hex.EncodeToString([]byte(initSupplyKdaSafe)), + hex.EncodeToString([]byte(tkData.KlvChainSpecificToken)), hex.EncodeToString(initialSupply.Bytes()), }) @@ -821,59 +821,59 @@ func (handler *MultiversxHandler) setInitialSupply(ctx context.Context, params I } } -func (handler *MultiversxHandler) setPairDecimalsOnAggregator(ctx context.Context, params IssueTokenParams) { +func (handler *KCHandler) setPairDecimalsOnAggregator(ctx context.Context, params IssueTokenParams) { // setPairDecimals on aggregator hash, txResult := handler.ChainSimulator.ScCall( ctx, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, handler.AggregatorAddress, zeroStringValue, setCallsGasLimit, setPairDecimalsFunction, []string{ hex.EncodeToString([]byte(gwei)), - hex.EncodeToString([]byte(params.MvxChainSpecificTokenTicker)), + hex.EncodeToString([]byte(params.KlvChainSpecificTokenTicker)), fmt.Sprintf("%02x", params.NumOfDecimalsChainSpecific)}) log.Info("setPairDecimals tx executed", "hash", hash, "status", txResult.Status) } -func (handler *MultiversxHandler) setMaxBridgeAmountOnSafe(ctx context.Context, params IssueTokenParams) { +func (handler *KCHandler) setMaxBridgeAmountOnSafe(ctx context.Context, params IssueTokenParams) { tkData := handler.TokensRegistry.GetTokenData(params.AbstractTokenIdentifier) // safe set max bridge amount for token maxBridgedAmountForTokenInt, _ := big.NewInt(0).SetString(maxBridgedAmountForToken, 10) hash, txResult := handler.ChainSimulator.ScCall( ctx, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, handler.MultisigAddress, zeroStringValue, setCallsGasLimit, - esdtSafeSetMaxBridgedAmountForTokenFunction, + kdaSafeSetMaxBridgedAmountForTokenFunction, []string{ - hex.EncodeToString([]byte(tkData.MvxChainSpecificToken)), + hex.EncodeToString([]byte(tkData.KlvChainSpecificToken)), hex.EncodeToString(maxBridgedAmountForTokenInt.Bytes())}) log.Info("safe set max bridge amount for token tx executed", "hash", hash, "status", txResult.Status) } -func (handler *MultiversxHandler) setMaxBridgeAmountOnMultitransfer(ctx context.Context, params IssueTokenParams) { +func (handler *KCHandler) setMaxBridgeAmountOnMultitransfer(ctx context.Context, params IssueTokenParams) { tkData := handler.TokensRegistry.GetTokenData(params.AbstractTokenIdentifier) // multi-transfer set max bridge amount for token maxBridgedAmountForTokenInt, _ := big.NewInt(0).SetString(maxBridgedAmountForToken, 10) hash, txResult := handler.ChainSimulator.ScCall( ctx, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, handler.MultisigAddress, zeroStringValue, setCallsGasLimit, - multiTransferEsdtSetMaxBridgedAmountForTokenFunction, + multiTransferKdaSetMaxBridgedAmountForTokenFunction, []string{ - hex.EncodeToString([]byte(tkData.MvxChainSpecificToken)), + hex.EncodeToString([]byte(tkData.KlvChainSpecificToken)), hex.EncodeToString(maxBridgedAmountForTokenInt.Bytes())}) log.Info("multi-transfer set max bridge amount for token tx executed", "hash", hash, "status", txResult.Status) } -func (handler *MultiversxHandler) getTokenNameFromResult(txResult data.TransactionOnNetwork) string { +func (handler *KCHandler) getTokenNameFromResult(txResult data.TransactionOnNetwork) string { for _, event := range txResult.Logs.Events { if event.Identifier == issueFunction { require.Greater(handler, len(event.Topics), 1) @@ -887,7 +887,7 @@ func (handler *MultiversxHandler) getTokenNameFromResult(txResult data.Transacti } // SubmitAggregatorBatch will submit the aggregator batch -func (handler *MultiversxHandler) SubmitAggregatorBatch(ctx context.Context, params IssueTokenParams) { +func (handler *KCHandler) SubmitAggregatorBatch(ctx context.Context, params IssueTokenParams) { txHashes := make([]string, 0, len(handler.OraclesKeys)) for _, key := range handler.OraclesKeys { hash := handler.submitAggregatorBatchForKey(ctx, key, params) @@ -900,7 +900,7 @@ func (handler *MultiversxHandler) SubmitAggregatorBatch(ctx context.Context, par } } -func (handler *MultiversxHandler) submitAggregatorBatchForKey(ctx context.Context, key KeysHolder, params IssueTokenParams) string { +func (handler *KCHandler) submitAggregatorBatchForKey(ctx context.Context, key KeysHolder, params IssueTokenParams) string { timestamp := handler.ChainSimulator.GetBlockchainTimeStamp(ctx) require.Greater(handler, timestamp, uint64(0), "something went wrong and the chain simulator returned 0 for the current timestamp") @@ -908,25 +908,25 @@ func (handler *MultiversxHandler) submitAggregatorBatchForKey(ctx context.Contex hash := handler.ChainSimulator.ScCallWithoutGenerateBlocks( ctx, - key.MvxSk, + key.KlvSk, handler.AggregatorAddress, zeroStringValue, setCallsGasLimit, submitBatchFunction, []string{ hex.EncodeToString([]byte(gwei)), - hex.EncodeToString([]byte(params.MvxChainSpecificTokenTicker)), + hex.EncodeToString([]byte(params.KlvChainSpecificTokenTicker)), hex.EncodeToString(timestampAsBigInt.Bytes()), hex.EncodeToString(feeInt.Bytes()), fmt.Sprintf("%02x", params.NumOfDecimalsChainSpecific)}) - log.Info("submit aggregator batch tx sent", "transaction hash", hash, "submitter", key.MvxAddress.Bech32()) + log.Info("submit aggregator batch tx sent", "transaction hash", hash, "submitter", key.KlvAddress.Bech32()) return hash } -// SendDepositTransactionFromMultiversx will send the deposit transaction from MultiversX -func (handler *MultiversxHandler) SendDepositTransactionFromMultiversx(ctx context.Context, token *TokenData, params TestTokenParams, value *big.Int) { +// SendDepositTransactionFromKC will send the deposit transaction from KC +func (handler *KCHandler) SendDepositTransactionFromKC(ctx context.Context, token *TokenData, params TestTokenParams, value *big.Int) { if params.HasChainSpecificToken { handler.unwrapCreateTransaction(ctx, token, value) return @@ -935,10 +935,10 @@ func (handler *MultiversxHandler) SendDepositTransactionFromMultiversx(ctx conte handler.createTransactionWithoutUnwrap(ctx, token, value) } -func (handler *MultiversxHandler) createTransactionWithoutUnwrap(ctx context.Context, token *TokenData, value *big.Int) { +func (handler *KCHandler) createTransactionWithoutUnwrap(ctx context.Context, token *TokenData, value *big.Int) { // create transaction params params := []string{ - hex.EncodeToString([]byte(token.MvxUniversalToken)), + hex.EncodeToString([]byte(token.KlvUniversalToken)), hex.EncodeToString(value.Bytes()), hex.EncodeToString([]byte(createTransactionFunction)), hex.EncodeToString(handler.TestKeys.EthAddress.Bytes()), @@ -947,23 +947,23 @@ func (handler *MultiversxHandler) createTransactionWithoutUnwrap(ctx context.Con hash, txResult := handler.ChainSimulator.ScCall( ctx, - handler.TestKeys.MvxSk, + handler.TestKeys.KlvSk, handler.SafeAddress, zeroStringValue, createDepositGasLimit+gasLimitPerDataByte*uint64(len(dataField)), - esdtTransferFunction, + kdaTransferFunction, params, ) - log.Info("MultiversX->Ethereum createTransaction sent", "hash", hash, "token", token.MvxUniversalToken, "status", txResult.Status) + log.Info("KC->Ethereum createTransaction sent", "hash", hash, "token", token.KlvUniversalToken, "status", txResult.Status) } -func (handler *MultiversxHandler) unwrapCreateTransaction(ctx context.Context, token *TokenData, value *big.Int) { +func (handler *KCHandler) unwrapCreateTransaction(ctx context.Context, token *TokenData, value *big.Int) { // create transaction params params := []string{ - hex.EncodeToString([]byte(token.MvxUniversalToken)), + hex.EncodeToString([]byte(token.KlvUniversalToken)), hex.EncodeToString(value.Bytes()), hex.EncodeToString([]byte(unwrapTokenCreateTransactionFunction)), - hex.EncodeToString([]byte(token.MvxChainSpecificToken)), + hex.EncodeToString([]byte(token.KlvChainSpecificToken)), hex.EncodeToString(handler.SafeAddress.Bytes()), hex.EncodeToString(handler.TestKeys.EthAddress.Bytes()), } @@ -971,18 +971,18 @@ func (handler *MultiversxHandler) unwrapCreateTransaction(ctx context.Context, t hash, txResult := handler.ChainSimulator.ScCall( ctx, - handler.TestKeys.MvxSk, + handler.TestKeys.KlvSk, handler.WrapperAddress, zeroStringValue, createDepositGasLimit+gasLimitPerDataByte*uint64(len(dataField)), - esdtTransferFunction, + kdaTransferFunction, params, ) - log.Info("MultiversX->Ethereum unwrapCreateTransaction sent", "hash", hash, "token", token.MvxUniversalToken, "status", txResult.Status) + log.Info("KC->Ethereum unwrapCreateTransaction sent", "hash", hash, "token", token.KlvUniversalToken, "status", txResult.Status) } // TestWithdrawFees will try to withdraw the fees for the provided token from the safe contract to the owner -func (handler *MultiversxHandler) TestWithdrawFees( +func (handler *KCHandler) TestWithdrawFees( ctx context.Context, token string, expectedDeltaForRefund *big.Int, @@ -992,7 +992,7 @@ func (handler *MultiversxHandler) TestWithdrawFees( handler.withdrawFees(ctx, token, expectedDeltaForAccumulated, getTransactionFeesFunction, withdrawTransactionFeesFunction) } -func (handler *MultiversxHandler) withdrawFees(ctx context.Context, +func (handler *KCHandler) withdrawFees(ctx context.Context, token string, expectedDelta *big.Int, getFunction string, @@ -1009,13 +1009,13 @@ func (handler *MultiversxHandler) withdrawFees(ctx context.Context, } handler.ChainSimulator.GenerateBlocks(ctx, 5) // ensure block finality - initialBalanceStr := handler.ChainSimulator.GetESDTBalance(ctx, handler.OwnerKeys.MvxAddress, token) + initialBalanceStr := handler.ChainSimulator.GetKDABalance(ctx, handler.OwnerKeys.KlvAddress, token) initialBalance, ok := big.NewInt(0).SetString(initialBalanceStr, 10) require.True(handler, ok) handler.ChainSimulator.ScCall( ctx, - handler.OwnerKeys.MvxSk, + handler.OwnerKeys.KlvSk, handler.MultisigAddress, zeroStringValue, generalSCCallGasLimit, @@ -1026,7 +1026,7 @@ func (handler *MultiversxHandler) withdrawFees(ctx context.Context, ) handler.ChainSimulator.GenerateBlocks(ctx, 5) // ensure block finality - finalBalanceStr := handler.ChainSimulator.GetESDTBalance(ctx, handler.OwnerKeys.MvxAddress, token) + finalBalanceStr := handler.ChainSimulator.GetKDABalance(ctx, handler.OwnerKeys.KlvAddress, token) finalBalance, ok := big.NewInt(0).SetString(finalBalanceStr, 10) require.True(handler, ok) @@ -1035,26 +1035,26 @@ func (handler *MultiversxHandler) withdrawFees(ctx context.Context, withdrawFunction, initialBalanceStr, finalBalanceStr, expectedDelta.String())) } -// TransferToken is able to create an ESDT transfer -func (handler *MultiversxHandler) TransferToken(ctx context.Context, source KeysHolder, receiver KeysHolder, amount *big.Int, params TestTokenParams) { +// TransferToken is able to create an KDA transfer +func (handler *KCHandler) TransferToken(ctx context.Context, source KeysHolder, receiver KeysHolder, amount *big.Int, params TestTokenParams) { tkData := handler.TokensRegistry.GetTokenData(params.AbstractTokenIdentifier) // transfer to the test key, so it will have funds to carry on with the deposits hash, txResult := handler.ChainSimulator.ScCall( ctx, - source.MvxSk, - receiver.MvxAddress, + source.KlvSk, + receiver.KlvAddress, zeroStringValue, createDepositGasLimit, - esdtTransferFunction, + kdaTransferFunction, []string{ - hex.EncodeToString([]byte(tkData.MvxUniversalToken)), + hex.EncodeToString([]byte(tkData.KlvUniversalToken)), hex.EncodeToString(amount.Bytes())}) log.Info("transfer to tx executed", - "source address", source.MvxAddress.Bech32(), - "receiver", receiver.MvxAddress.Bech32(), - "token", tkData.MvxUniversalToken, + "source address", source.KlvAddress.Bech32(), + "receiver", receiver.KlvAddress.Bech32(), + "token", tkData.KlvUniversalToken, "amount", amount.String(), "hash", hash, "status", txResult.Status) } diff --git a/integrationTests/relayers/slowTests/framework/keys.go b/integrationTests/relayers/slowTests/framework/keys.go index ef832c8d..0620578f 100644 --- a/integrationTests/relayers/slowTests/framework/keys.go +++ b/integrationTests/relayers/slowTests/framework/keys.go @@ -28,8 +28,8 @@ const ( // KeysHolder holds a 2 pk-sk pairs for both chains type KeysHolder struct { - MvxAddress *MvxAddress - MvxSk []byte + KlvAddress *KlvAddress + KlvSk []byte EthSK *ecdsa.PrivateKey EthAddress common.Address } @@ -71,13 +71,13 @@ func NewKeysStore( keysStore.SCExecutorKeys = keysStore.generateKey("", projectedShardForBridgeSetup) keysStore.OwnerKeys = keysStore.generateKey(ethOwnerSK, projectedShardForBridgeSetup) log.Info("generated owner", - "MvX address", keysStore.OwnerKeys.MvxAddress.Bech32(), + "Klv address", keysStore.OwnerKeys.KlvAddress.Bech32(), "Eth address", keysStore.OwnerKeys.EthAddress.String()) keysStore.DepositorKeys = keysStore.generateKey(ethDepositorSK, projectedShardForDepositor) keysStore.TestKeys = keysStore.generateKey(ethTestSk, projectedShardForTestKeys) filename := path.Join(keysStore.workingDir, SCCallerFilename) - SaveMvxKey(keysStore, filename, keysStore.SCExecutorKeys) + SaveKlvKey(keysStore, filename, keysStore.SCExecutorKeys) return keysStore } @@ -89,14 +89,14 @@ func (keyStore *KeysStore) generateRelayersKeys(numKeys int) { relayerKeys := keyStore.generateKey(string(relayerETHSKBytes), projectedShardForBridgeSetup) log.Info("generated relayer", "index", i, - "MvX address", relayerKeys.MvxAddress.Bech32(), + "Klv address", relayerKeys.KlvAddress.Bech32(), "Eth address", relayerKeys.EthAddress.String()) keyStore.RelayersKeys = append(keyStore.RelayersKeys, relayerKeys) filename := path.Join(keyStore.workingDir, fmt.Sprintf(relayerPemPathFormat, i)) - SaveMvxKey(keyStore, filename, relayerKeys) + SaveKlvKey(keyStore, filename, relayerKeys) } } @@ -109,7 +109,7 @@ func (keyStore *KeysStore) generateKeys(numKeys int, message string, projectedSh key := keyStore.generateKey(hex.EncodeToString(ethPrivateKeyBytes), projectedShard) log.Info(message, "index", i, - "MvX address", key.MvxAddress.Bech32(), + "Klv address", key.KlvAddress.Bech32(), "Eth address", key.EthAddress.String()) keys = append(keys, key) @@ -121,7 +121,7 @@ func (keyStore *KeysStore) generateKeys(numKeys int, message string, projectedSh func (keyStore *KeysStore) generateKey(ethSkHex string, projectedShard byte) KeysHolder { var err error - keys := GenerateMvxPrivatePublicKey(keyStore, projectedShard) + keys := GenerateKlvPrivatePublicKey(keyStore, projectedShard) if len(ethSkHex) == 0 { // eth keys not required return keys @@ -150,7 +150,7 @@ func (keyStore *KeysStore) WalletsToFundOnEthereum() []common.Address { walletsToFund := make([]common.Address, 0, len(allKeys)) for _, key := range allKeys { - if len(key.MvxSk) == 0 { + if len(key.KlvSk) == 0 { continue } @@ -160,28 +160,28 @@ func (keyStore *KeysStore) WalletsToFundOnEthereum() []common.Address { return walletsToFund } -// WalletsToFundOnMultiversX will return the wallets to fund on MultiversX -func (keyStore *KeysStore) WalletsToFundOnMultiversX() []string { +// WalletsToFundOnKC will return the wallets to fund on KC +func (keyStore *KeysStore) WalletsToFundOnKC() []string { allKeys := keyStore.getAllKeys() walletsToFund := make([]string, 0, len(allKeys)) for _, key := range allKeys { - walletsToFund = append(walletsToFund, key.MvxAddress.Bech32()) + walletsToFund = append(walletsToFund, key.KlvAddress.Bech32()) } return walletsToFund } -// GenerateMvxPrivatePublicKey will generate a new keys holder instance that will hold only the MultiversX generated keys -func GenerateMvxPrivatePublicKey(tb testing.TB, projectedShard byte) KeysHolder { +// GenerateKlvPrivatePublicKey will generate a new keys holder instance that will hold only the KC generated keys +func GenerateKlvPrivatePublicKey(tb testing.TB, projectedShard byte) KeysHolder { sk, pkBytes := generateSkPkInShard(tb, projectedShard) skBytes, err := sk.ToByteArray() require.Nil(tb, err) return KeysHolder{ - MvxSk: skBytes, - MvxAddress: NewMvxAddressFromBytes(tb, pkBytes), + KlvSk: skBytes, + KlvAddress: NewKlvAddressFromBytes(tb, pkBytes), } } @@ -201,11 +201,11 @@ func generateSkPkInShard(tb testing.TB, projectedShard byte) (klvCrypto.PrivateK } } -// SaveMvxKey will save the MultiversX key -func SaveMvxKey(tb testing.TB, filename string, key KeysHolder) { +// SaveKlvKey will save the Klever Blockchain key +func SaveKlvKey(tb testing.TB, filename string, key KeysHolder) { blk := pem.Block{ - Type: "PRIVATE KEY for " + key.MvxAddress.Bech32(), - Bytes: []byte(hex.EncodeToString(key.MvxSk)), + Type: "PRIVATE KEY for " + key.KlvAddress.Bech32(), + Bytes: []byte(hex.EncodeToString(key.KlvSk)), } buff := bytes.NewBuffer(make([]byte, 0)) diff --git a/integrationTests/relayers/slowTests/framework/testSetup.go b/integrationTests/relayers/slowTests/framework/testSetup.go index 8e17e143..b6ff4d94 100644 --- a/integrationTests/relayers/slowTests/framework/testSetup.go +++ b/integrationTests/relayers/slowTests/framework/testSetup.go @@ -11,7 +11,7 @@ import ( "testing" "github.com/klever-io/klv-bridge-eth-go/config" - "github.com/klever-io/klv-bridge-eth-go/executors/kleverchain/module" + "github.com/klever-io/klv-bridge-eth-go/executors/kleverBlockchain/module" sdkCore "github.com/multiversx/mx-sdk-go/core" "github.com/stretchr/testify/require" ) @@ -33,7 +33,7 @@ type TestSetup struct { *KeysStore Bridge *BridgeComponents EthereumHandler *EthereumHandler - MultiversxHandler *MultiversxHandler + KCHandler *KCHandler WorkingDir string ChainSimulator ChainSimulatorWrapper ScCallerKeys KeysHolder @@ -42,7 +42,7 @@ type TestSetup struct { ctxCancel func() Ctx context.Context mutBalances sync.RWMutex - esdtBalanceForSafe map[string]*big.Int + kdaBalanceForSafe map[string]*big.Int ethBalanceTestAddress map[string]*big.Int numScCallsInTest uint32 } @@ -55,7 +55,7 @@ func NewTestSetup(tb testing.TB) *TestSetup { TB: tb, TokensRegistry: NewTokenRegistry(tb), WorkingDir: tb.TempDir(), - esdtBalanceForSafe: make(map[string]*big.Int), + kdaBalanceForSafe: make(map[string]*big.Int), ethBalanceTestAddress: make(map[string]*big.Int), } setup.KeysStore = NewKeysStore(tb, setup.WorkingDir, NumRelayers, NumOracles) @@ -67,8 +67,8 @@ func NewTestSetup(tb testing.TB) *TestSetup { setup.EthereumHandler.DeployContracts(setup.Ctx) setup.createChainSimulatorWrapper() - setup.MultiversxHandler = NewMultiversxHandler(tb, setup.Ctx, setup.KeysStore, setup.TokensRegistry, setup.ChainSimulator, quorum) - setup.MultiversxHandler.DeployAndSetContracts(setup.Ctx) + setup.KCHandler = NewKCHandler(tb, setup.Ctx, setup.KeysStore, setup.TokensRegistry, setup.ChainSimulator, quorum) + setup.KCHandler.DeployAndSetContracts(setup.Ctx) return setup } @@ -103,8 +103,8 @@ func (setup *TestSetup) StartRelayersAndScModule() { setup.EthereumHandler.SimulatedChain, NumRelayers, setup.EthereumHandler.SafeAddress.Hex(), - setup.MultiversxHandler.SafeAddress, - setup.MultiversxHandler.MultisigAddress, + setup.KCHandler.SafeAddress, + setup.KCHandler.MultisigAddress, ) setup.startScCallerModule() @@ -112,7 +112,7 @@ func (setup *TestSetup) StartRelayersAndScModule() { func (setup *TestSetup) startScCallerModule() { cfg := config.ScCallsModuleConfig{ - ScProxyBech32Address: setup.MultiversxHandler.ScProxyAddress.Bech32(), + ScProxyBech32Address: setup.KCHandler.ScProxyAddress.Bech32(), ExtraGasToExecute: 60_000_000, // 60 million: this ensures that a SC call with 0 gas limit is refunded MaxGasLimitToUse: 249_999_999, // max cross shard limit GasLimitForOutOfGasTransactions: 30_000_000, // gas to use when a higher than max allowed is encountered @@ -126,7 +126,7 @@ func (setup *TestSetup) startScCallerModule() { PollingIntervalInMillis: 1000, // 1 second Filter: config.PendingOperationsFilterConfig{ AllowedEthAddresses: []string{"*"}, - AllowedMvxAddresses: []string{"*"}, + AllowedKlvAddresses: []string{"*"}, AllowedTokens: []string{"*"}, }, TransactionChecks: config.TransactionChecksConfig{ @@ -140,7 +140,7 @@ func (setup *TestSetup) startScCallerModule() { var err error setup.ScCallerModuleInstance, err = module.NewScCallsModule(cfg, log, nil) require.Nil(setup, err) - log.Info("started SC calls module", "monitoring SC proxy address", setup.MultiversxHandler.ScProxyAddress) + log.Info("started SC calls module", "monitoring SC proxy address", setup.KCHandler.ScProxyAddress) } // IssueAndConfigureTokens will issue and configure the provided tokens on both chains @@ -150,37 +150,37 @@ func (setup *TestSetup) IssueAndConfigureTokens(tokens ...TestTokenParams) { require.Greater(setup, len(tokens), 0) setup.EthereumHandler.PauseContractsForTokenChanges(setup.Ctx) - setup.MultiversxHandler.PauseContractsForTokenChanges(setup.Ctx) + setup.KCHandler.PauseContractsForTokenChanges(setup.Ctx) for _, token := range tokens { setup.processNumScCallsOperations(token) setup.AddToken(token.IssueTokenParams) setup.EthereumHandler.IssueAndWhitelistToken(setup.Ctx, token.IssueTokenParams) - setup.MultiversxHandler.IssueAndWhitelistToken(setup.Ctx, token.IssueTokenParams) + setup.KCHandler.IssueAndWhitelistToken(setup.Ctx, token.IssueTokenParams) - esdtBalanceForSafe := setup.MultiversxHandler.GetESDTChainSpecificTokenBalance(setup.Ctx, setup.MultiversxHandler.SafeAddress, token.AbstractTokenIdentifier) + kdaBalanceForSafe := setup.KCHandler.GetKDAChainSpecificTokenBalance(setup.Ctx, setup.KCHandler.SafeAddress, token.AbstractTokenIdentifier) ethBalanceForTestAddr := setup.EthereumHandler.GetBalance(setup.TestKeys.EthAddress, token.AbstractTokenIdentifier) setup.mutBalances.Lock() - setup.esdtBalanceForSafe[token.AbstractTokenIdentifier] = esdtBalanceForSafe + setup.kdaBalanceForSafe[token.AbstractTokenIdentifier] = kdaBalanceForSafe setup.ethBalanceTestAddress[token.AbstractTokenIdentifier] = ethBalanceForTestAddr setup.mutBalances.Unlock() - log.Info("recorded the ESDT balance for safe contract", "token", token.AbstractTokenIdentifier, "balance", esdtBalanceForSafe.String()) + log.Info("recorded the KDA balance for safe contract", "token", token.AbstractTokenIdentifier, "balance", kdaBalanceForSafe.String()) log.Info("recorded the ETH balance for test address", "token", token.AbstractTokenIdentifier, "balance", ethBalanceForTestAddr.String()) } setup.EthereumHandler.UnPauseContractsAfterTokenChanges(setup.Ctx) - setup.MultiversxHandler.UnPauseContractsAfterTokenChanges(setup.Ctx) + setup.KCHandler.UnPauseContractsAfterTokenChanges(setup.Ctx) for _, token := range tokens { - setup.MultiversxHandler.SubmitAggregatorBatch(setup.Ctx, token.IssueTokenParams) + setup.KCHandler.SubmitAggregatorBatch(setup.Ctx, token.IssueTokenParams) } } func (setup *TestSetup) processNumScCallsOperations(token TestTokenParams) { for _, op := range token.TestOperations { - if len(op.MvxSCCallData) > 0 || op.MvxForceSCCall { + if len(op.KlvSCCallData) > 0 || op.KlvForceSCCall { atomic.AddUint32(&setup.numScCallsInTest, 1) } } @@ -191,7 +191,7 @@ func (setup *TestSetup) GetNumScCallsOperations() uint32 { return atomic.LoadUint32(&setup.numScCallsInTest) } -// IsTransferDoneFromEthereum returns true if all provided tokens are bridged from Ethereum towards MultiversX +// IsTransferDoneFromEthereum returns true if all provided tokens are bridged from Ethereum towards KC func (setup *TestSetup) IsTransferDoneFromEthereum(tokens ...TestTokenParams) bool { isDone := true for _, params := range tokens { @@ -205,29 +205,29 @@ func (setup *TestSetup) isTransferDoneFromEthereumForToken(params TestTokenParam expectedValueOnReceiver := big.NewInt(0) expectedValueOnContract := big.NewInt(0) for _, operation := range params.TestOperations { - if operation.ValueToTransferToMvx == nil { + if operation.ValueToTransferToKlv == nil { continue } - if len(operation.MvxSCCallData) > 0 || operation.MvxForceSCCall { - if !operation.MvxFaultySCCall { - expectedValueOnContract.Add(expectedValueOnContract, operation.ValueToTransferToMvx) + if len(operation.KlvSCCallData) > 0 || operation.KlvForceSCCall { + if !operation.KlvFaultySCCall { + expectedValueOnContract.Add(expectedValueOnContract, operation.ValueToTransferToKlv) } } else { - expectedValueOnReceiver.Add(expectedValueOnReceiver, operation.ValueToTransferToMvx) + expectedValueOnReceiver.Add(expectedValueOnReceiver, operation.ValueToTransferToKlv) } } - receiverBalance := setup.MultiversxHandler.GetESDTUniversalTokenBalance(setup.Ctx, setup.TestKeys.MvxAddress, params.AbstractTokenIdentifier) + receiverBalance := setup.KCHandler.GetKDAUniversalTokenBalance(setup.Ctx, setup.TestKeys.KlvAddress, params.AbstractTokenIdentifier) if receiverBalance.String() != expectedValueOnReceiver.String() { return false } - contractBalance := setup.MultiversxHandler.GetESDTUniversalTokenBalance(setup.Ctx, setup.MultiversxHandler.TestCallerAddress, params.AbstractTokenIdentifier) + contractBalance := setup.KCHandler.GetKDAUniversalTokenBalance(setup.Ctx, setup.KCHandler.TestCallerAddress, params.AbstractTokenIdentifier) return contractBalance.String() == expectedValueOnContract.String() } -// IsTransferDoneFromEthereumWithRefund returns true if all provided tokens are bridged from Ethereum towards MultiversX including refunds +// IsTransferDoneFromEthereumWithRefund returns true if all provided tokens are bridged from Ethereum towards Klever Blockchain including refunds func (setup *TestSetup) IsTransferDoneFromEthereumWithRefund(tokens ...TestTokenParams) bool { isDone := true for _, params := range tokens { @@ -240,23 +240,23 @@ func (setup *TestSetup) IsTransferDoneFromEthereumWithRefund(tokens ...TestToken func (setup *TestSetup) isTransferDoneFromEthereumWithRefundForToken(params TestTokenParams) bool { expectedValueOnReceiver := big.NewInt(0) for _, operation := range params.TestOperations { - valueToTransferToMvx := big.NewInt(0) - if operation.ValueToTransferToMvx != nil { - valueToTransferToMvx.Set(operation.ValueToTransferToMvx) + valueToTransferToKlv := big.NewInt(0) + if operation.ValueToTransferToKlv != nil { + valueToTransferToKlv.Set(operation.ValueToTransferToKlv) } - valueToSendFromMvX := big.NewInt(0) - if operation.ValueToSendFromMvX != nil { - valueToSendFromMvX.Set(operation.ValueToSendFromMvX) + valueToSendFromKlv := big.NewInt(0) + if operation.ValueToSendFromKlv != nil { + valueToSendFromKlv.Set(operation.ValueToSendFromKlv) // we subtract the fee also expectedValueOnReceiver.Sub(expectedValueOnReceiver, feeInt) } - expectedValueOnReceiver.Add(expectedValueOnReceiver, big.NewInt(0).Sub(valueToSendFromMvX, valueToTransferToMvx)) - if len(operation.MvxSCCallData) > 0 || operation.MvxForceSCCall { - if operation.MvxFaultySCCall { + expectedValueOnReceiver.Add(expectedValueOnReceiver, big.NewInt(0).Sub(valueToSendFromKlv, valueToTransferToKlv)) + if len(operation.KlvSCCallData) > 0 || operation.KlvForceSCCall { + if operation.KlvFaultySCCall { // the balance should be bridged back to the receiver on Ethereum - fee - expectedValueOnReceiver.Add(expectedValueOnReceiver, valueToTransferToMvx) + expectedValueOnReceiver.Add(expectedValueOnReceiver, valueToTransferToKlv) expectedValueOnReceiver.Sub(expectedValueOnReceiver, feeInt) } } @@ -266,60 +266,60 @@ func (setup *TestSetup) isTransferDoneFromEthereumWithRefundForToken(params Test return receiverBalance.String() == expectedValueOnReceiver.String() } -// IsTransferDoneFromMultiversX returns true if all provided tokens are bridged from MultiversX towards Ethereum -func (setup *TestSetup) IsTransferDoneFromMultiversX(tokens ...TestTokenParams) bool { +// IsTransferDoneFromKlever Blockchain returns true if all provided tokens are bridged from Klever Blockchain towards Ethereum +func (setup *TestSetup) IsTransferDoneFromKC(tokens ...TestTokenParams) bool { isDone := true for _, params := range tokens { - isDone = isDone && setup.isTransferDoneFromMultiversXForToken(params) + isDone = isDone && setup.isTransferDoneFromKCForToken(params) } return isDone } -func (setup *TestSetup) isTransferDoneFromMultiversXForToken(params TestTokenParams) bool { +func (setup *TestSetup) isTransferDoneFromKCForToken(params TestTokenParams) bool { setup.mutBalances.Lock() - initialBalanceForSafe := setup.esdtBalanceForSafe[params.AbstractTokenIdentifier] + initialBalanceForSafe := setup.kdaBalanceForSafe[params.AbstractTokenIdentifier] expectedReceiver := big.NewInt(0).Set(setup.ethBalanceTestAddress[params.AbstractTokenIdentifier]) expectedReceiver.Add(expectedReceiver, params.EthTestAddrExtraBalance) setup.mutBalances.Unlock() ethTestBalance := setup.EthereumHandler.GetBalance(setup.TestKeys.EthAddress, params.AbstractTokenIdentifier) - isTransferDoneFromMultiversX := ethTestBalance.String() == expectedReceiver.String() + isTransferDoneFromKC := ethTestBalance.String() == expectedReceiver.String() - expectedEsdtSafe := big.NewInt(0).Add(initialBalanceForSafe, params.ESDTSafeExtraBalance) - balanceForSafe := setup.MultiversxHandler.GetESDTChainSpecificTokenBalance(setup.Ctx, setup.MultiversxHandler.SafeAddress, params.AbstractTokenIdentifier) - isSafeContractOnCorrectBalance := expectedEsdtSafe.String() == balanceForSafe.String() + expectedKdaSafe := big.NewInt(0).Add(initialBalanceForSafe, params.KDASafeExtraBalance) + balanceForSafe := setup.KCHandler.GetKDAChainSpecificTokenBalance(setup.Ctx, setup.KCHandler.SafeAddress, params.AbstractTokenIdentifier) + isSafeContractOnCorrectBalance := expectedKdaSafe.String() == balanceForSafe.String() - return isTransferDoneFromMultiversX && isSafeContractOnCorrectBalance + return isTransferDoneFromKC && isSafeContractOnCorrectBalance } -// CreateBatchOnMultiversX will create deposits that will be gathered in a batch on MultiversX -func (setup *TestSetup) CreateBatchOnMultiversX(tokensParams ...TestTokenParams) { +// CreateBatchOnKC will create deposits that will be gathered in a batch on KC +func (setup *TestSetup) CreateBatchOnKC(tokensParams ...TestTokenParams) { for _, params := range tokensParams { - setup.createBatchOnMultiversXForToken(params) + setup.createBatchOnKCForToken(params) } } -func (setup *TestSetup) createBatchOnMultiversXForToken(params TestTokenParams) { +func (setup *TestSetup) createBatchOnKCForToken(params TestTokenParams) { token := setup.GetTokenData(params.AbstractTokenIdentifier) require.NotNil(setup, token) setup.transferTokensToTestKey(params) - valueToMintOnEthereum := setup.sendFromMultiversxToEthereumForToken(params) + valueToMintOnEthereum := setup.sendFromKCToEthereumForToken(params) setup.EthereumHandler.Mint(setup.Ctx, params, valueToMintOnEthereum) } func (setup *TestSetup) transferTokensToTestKey(params TestTokenParams) { depositValue := big.NewInt(0) for _, operation := range params.TestOperations { - if operation.ValueToSendFromMvX == nil { + if operation.ValueToSendFromKlv == nil { continue } - depositValue.Add(depositValue, operation.ValueToSendFromMvX) + depositValue.Add(depositValue, operation.ValueToSendFromKlv) } - setup.MultiversxHandler.TransferToken( + setup.KCHandler.TransferToken( setup.Ctx, setup.OwnerKeys, setup.TestKeys, @@ -328,25 +328,25 @@ func (setup *TestSetup) transferTokensToTestKey(params TestTokenParams) { ) } -// SendFromMultiversxToEthereum will create the deposits that will be gathered in a batch on MultiversX (without mint on Ethereum) -func (setup *TestSetup) SendFromMultiversxToEthereum(tokensParams ...TestTokenParams) { +// SendFromKCToEthereum will create the deposits that will be gathered in a batch on Klever Blockchain (without mint on Ethereum) +func (setup *TestSetup) SendFromKCToEthereum(tokensParams ...TestTokenParams) { for _, params := range tokensParams { - _ = setup.sendFromMultiversxToEthereumForToken(params) + _ = setup.sendFromKCToEthereumForToken(params) } } -func (setup *TestSetup) sendFromMultiversxToEthereumForToken(params TestTokenParams) *big.Int { +func (setup *TestSetup) sendFromKCToEthereumForToken(params TestTokenParams) *big.Int { token := setup.GetTokenData(params.AbstractTokenIdentifier) require.NotNil(setup, token) depositValue := big.NewInt(0) for _, operation := range params.TestOperations { - if operation.ValueToSendFromMvX == nil { + if operation.ValueToSendFromKlv == nil { continue } - depositValue.Add(depositValue, operation.ValueToSendFromMvX) - setup.MultiversxHandler.SendDepositTransactionFromMultiversx(setup.Ctx, token, params, operation.ValueToSendFromMvX) + depositValue.Add(depositValue, operation.ValueToSendFromKlv) + setup.KCHandler.SendDepositTransactionFromKC(setup.Ctx, token, params, operation.ValueToSendFromKlv) } return depositValue @@ -359,17 +359,17 @@ func (setup *TestSetup) TestWithdrawTotalFeesOnEthereumForTokens(tokensParams .. expectedAccumulated := big.NewInt(0) for _, operation := range param.TestOperations { - if operation.ValueToSendFromMvX == nil { + if operation.ValueToSendFromKlv == nil { continue } - if operation.ValueToSendFromMvX.Cmp(zeroValueBigInt) == 0 { + if operation.ValueToSendFromKlv.Cmp(zeroValueBigInt) == 0 { continue } expectedAccumulated.Add(expectedAccumulated, feeInt) } - setup.MultiversxHandler.TestWithdrawFees(setup.Ctx, token.MvxChainSpecificToken, zeroValueBigInt, expectedAccumulated) + setup.KCHandler.TestWithdrawFees(setup.Ctx, token.KlvChainSpecificToken, zeroValueBigInt, expectedAccumulated) } } diff --git a/integrationTests/relayers/slowTests/framework/tokensRegistry.go b/integrationTests/relayers/slowTests/framework/tokensRegistry.go index 5ee3bc39..f9a6fba9 100644 --- a/integrationTests/relayers/slowTests/framework/tokensRegistry.go +++ b/integrationTests/relayers/slowTests/framework/tokensRegistry.go @@ -32,8 +32,8 @@ func (registry *tokensRegistry) AddToken(params IssueTokenParams) { newToken := &TokenData{ AbstractTokenIdentifier: params.AbstractTokenIdentifier, - MvxUniversalTokenTicker: params.MvxUniversalTokenTicker, - MvxChainSpecificTokenTicker: params.MvxChainSpecificTokenDisplayName, + KlvUniversalTokenTicker: params.KlvUniversalTokenTicker, + KlvChainSpecificTokenTicker: params.KlvChainSpecificTokenDisplayName, EthTokenName: params.EthTokenName, EthTokenSymbol: params.EthTokenSymbol, } @@ -42,25 +42,25 @@ func (registry *tokensRegistry) AddToken(params IssueTokenParams) { } // RegisterUniversalToken will save the universal token identifier -func (registry *tokensRegistry) RegisterUniversalToken(abstractTokenIdentifier string, mvxUniversalToken string) { +func (registry *tokensRegistry) RegisterUniversalToken(abstractTokenIdentifier string, kdaUniversalToken string) { registry.mut.Lock() defer registry.mut.Unlock() data, found := registry.tokens[abstractTokenIdentifier] require.True(registry, found, "abstract token identifier not registered %s", abstractTokenIdentifier) - data.MvxUniversalToken = mvxUniversalToken + data.KlvUniversalToken = kdaUniversalToken } // RegisterChainSpecificToken will save the chain specific token identifier -func (registry *tokensRegistry) RegisterChainSpecificToken(abstractTokenIdentifier string, mvxChainSpecificToken string) { +func (registry *tokensRegistry) RegisterChainSpecificToken(abstractTokenIdentifier string, kdaChainSpecificToken string) { registry.mut.Lock() defer registry.mut.Unlock() data, found := registry.tokens[abstractTokenIdentifier] require.True(registry, found, "abstract token identifier not registered %s", abstractTokenIdentifier) - data.MvxChainSpecificToken = mvxChainSpecificToken + data.KlvChainSpecificToken = kdaChainSpecificToken } // RegisterEthAddressAndContract will save under the mutex lock the provided Ethereum address and contract diff --git a/integrationTests/relayers/slowTests/framework/types.go b/integrationTests/relayers/slowTests/framework/types.go index dc165fe4..1ec49ae7 100644 --- a/integrationTests/relayers/slowTests/framework/types.go +++ b/integrationTests/relayers/slowTests/framework/types.go @@ -11,16 +11,16 @@ type IssueTokenParams struct { InitialSupplyParams AbstractTokenIdentifier string - // MultiversX + // Klever Blockchain NumOfDecimalsUniversal int NumOfDecimalsChainSpecific byte - MvxUniversalTokenTicker string - MvxChainSpecificTokenTicker string - MvxUniversalTokenDisplayName string - MvxChainSpecificTokenDisplayName string - ValueToMintOnMvx string - IsMintBurnOnMvX bool - IsNativeOnMvX bool + KlvUniversalTokenTicker string + KlvChainSpecificTokenTicker string + KlvUniversalTokenDisplayName string + KlvChainSpecificTokenDisplayName string + ValueToMintOnKlv string + IsMintBurnOnKlv bool + IsNativeOnKlv bool HasChainSpecificToken bool // Ethereum @@ -38,18 +38,18 @@ type InitialSupplyParams struct { // TokenOperations defines a token operation in a test. Usually this can define one or to deposits in a batch type TokenOperations struct { - ValueToTransferToMvx *big.Int - ValueToSendFromMvX *big.Int - MvxSCCallData []byte - MvxFaultySCCall bool - MvxForceSCCall bool + ValueToTransferToKlv *big.Int + ValueToSendFromKlv *big.Int + KlvSCCallData []byte + KlvFaultySCCall bool + KlvForceSCCall bool } // TestTokenParams defines a token collection of operations in one or 2 batches type TestTokenParams struct { IssueTokenParams TestOperations []TokenOperations - ESDTSafeExtraBalance *big.Int + KDASafeExtraBalance *big.Int EthTestAddrExtraBalance *big.Int } @@ -57,13 +57,13 @@ type TestTokenParams struct { type TokenData struct { AbstractTokenIdentifier string - MvxUniversalTokenTicker string - MvxChainSpecificTokenTicker string + KlvUniversalTokenTicker string + KlvChainSpecificTokenTicker string EthTokenName string EthTokenSymbol string - MvxUniversalToken string - MvxChainSpecificToken string + KlvUniversalToken string + KlvChainSpecificToken string EthErc20Address common.Address EthErc20Contract ERC20Contract } diff --git a/integrationTests/relayers/slowTests/refundWithChainSimulator_test.go b/integrationTests/relayers/slowTests/refundWithChainSimulator_test.go index 23d0ad3f..6bf9f779 100644 --- a/integrationTests/relayers/slowTests/refundWithChainSimulator_test.go +++ b/integrationTests/relayers/slowTests/refundWithChainSimulator_test.go @@ -19,14 +19,14 @@ func TestRelayersShouldExecuteTransfersWithRefund(t *testing.T) { t.Run("unknown marker and malformed SC call data should refund", func(t *testing.T) { callData := []byte{5, 4, 55} usdcToken := GenerateTestUSDCToken() - usdcToken.TestOperations[2].MvxSCCallData = callData - usdcToken.TestOperations[2].MvxFaultySCCall = true - usdcToken.EthTestAddrExtraBalance = big.NewInt(-5000 + 2500 - 50 - 7000 + 300 - 50 - 1000 + 950) // -(eth->mvx) + (mvx->eth) - fees + revert after bad SC call - usdcToken.ESDTSafeExtraBalance = big.NewInt(150) // extra is just for the fees for the 2 transfers mvx->eth and the failed eth->mvx that needed refund + usdcToken.TestOperations[2].KlvSCCallData = callData + usdcToken.TestOperations[2].KlvFaultySCCall = true + usdcToken.EthTestAddrExtraBalance = big.NewInt(-5000 + 2500 - 50 - 7000 + 300 - 50 - 1000 + 950) // -(eth->kda) + (kda->eth) - fees + revert after bad SC call + usdcToken.KDASafeExtraBalance = big.NewInt(150) // extra is just for the fees for the 2 transfers kda->eth and the failed eth->kda that needed refund memeToken := GenerateTestMEMEToken() - memeToken.TestOperations[2].MvxSCCallData = callData - memeToken.TestOperations[2].MvxFaultySCCall = true + memeToken.TestOperations[2].KlvSCCallData = callData + memeToken.TestOperations[2].KlvFaultySCCall = true testRelayersWithChainSimulatorAndTokensAndRefund( t, @@ -38,8 +38,8 @@ func TestRelayersShouldExecuteTransfersWithRefund(t *testing.T) { t.Run("unknown marker and malformed SC call data should refund with MEX", func(t *testing.T) { callData := []byte{5, 4, 55} mexToken := GenerateTestMEXToken() - mexToken.TestOperations[2].MvxSCCallData = callData - mexToken.TestOperations[2].MvxFaultySCCall = true + mexToken.TestOperations[2].KlvSCCallData = callData + mexToken.TestOperations[2].KlvFaultySCCall = true testRelayersWithChainSimulatorAndTokensAndRefund( t, @@ -50,14 +50,14 @@ func TestRelayersShouldExecuteTransfersWithRefund(t *testing.T) { t.Run("malformed SC call data should refund", func(t *testing.T) { callData := []byte{bridgeCore.DataPresentProtocolMarker, 4, 55} usdcToken := GenerateTestUSDCToken() - usdcToken.TestOperations[2].MvxSCCallData = callData - usdcToken.TestOperations[2].MvxFaultySCCall = true - usdcToken.EthTestAddrExtraBalance = big.NewInt(-5000 + 2500 - 50 - 7000 + 300 - 50 - 1000 + 950) // -(eth->mvx) + (mvx->eth) - fees + revert after bad SC call - usdcToken.ESDTSafeExtraBalance = big.NewInt(150) // extra is just for the fees for the 2 transfers mvx->eth and the failed eth->mvx that needed refund + usdcToken.TestOperations[2].KlvSCCallData = callData + usdcToken.TestOperations[2].KlvFaultySCCall = true + usdcToken.EthTestAddrExtraBalance = big.NewInt(-5000 + 2500 - 50 - 7000 + 300 - 50 - 1000 + 950) // -(eth->kda) + (kda->eth) - fees + revert after bad SC call + usdcToken.KDASafeExtraBalance = big.NewInt(150) // extra is just for the fees for the 2 transfers kda->eth and the failed eth->kda that needed refund memeToken := GenerateTestMEMEToken() - memeToken.TestOperations[2].MvxSCCallData = callData - memeToken.TestOperations[2].MvxFaultySCCall = true + memeToken.TestOperations[2].KlvSCCallData = callData + memeToken.TestOperations[2].KlvFaultySCCall = true testRelayersWithChainSimulatorAndTokensAndRefund( t, @@ -69,14 +69,14 @@ func TestRelayersShouldExecuteTransfersWithRefund(t *testing.T) { t.Run("unknown function should refund", func(t *testing.T) { callData := createScCallData("unknownFunction", 50000000) usdcToken := GenerateTestUSDCToken() - usdcToken.TestOperations[2].MvxSCCallData = callData - usdcToken.TestOperations[2].MvxFaultySCCall = true - usdcToken.EthTestAddrExtraBalance = big.NewInt(-5000 + 2500 - 50 - 7000 + 300 - 50 - 1000 + 950) // -(eth->mvx) + (mvx->eth) - fees + revert after bad SC call - usdcToken.ESDTSafeExtraBalance = big.NewInt(150) // extra is just for the fees for the 2 transfers mvx->eth and the failed eth->mvx that needed refund + usdcToken.TestOperations[2].KlvSCCallData = callData + usdcToken.TestOperations[2].KlvFaultySCCall = true + usdcToken.EthTestAddrExtraBalance = big.NewInt(-5000 + 2500 - 50 - 7000 + 300 - 50 - 1000 + 950) // -(eth->kda) + (kda->eth) - fees + revert after bad SC call + usdcToken.KDASafeExtraBalance = big.NewInt(150) // extra is just for the fees for the 2 transfers kda->eth and the failed eth->kda that needed refund memeToken := GenerateTestMEMEToken() - memeToken.TestOperations[2].MvxSCCallData = callData - memeToken.TestOperations[2].MvxFaultySCCall = true + memeToken.TestOperations[2].KlvSCCallData = callData + memeToken.TestOperations[2].KlvFaultySCCall = true testRelayersWithChainSimulatorAndTokensAndRefund( t, @@ -87,16 +87,16 @@ func TestRelayersShouldExecuteTransfersWithRefund(t *testing.T) { }) t.Run("wrong deposit with empty sc call data should refund", func(t *testing.T) { usdcToken := GenerateTestUSDCToken() - usdcToken.TestOperations[2].MvxSCCallData = nil - usdcToken.TestOperations[2].MvxFaultySCCall = true - usdcToken.TestOperations[2].MvxForceSCCall = true - usdcToken.EthTestAddrExtraBalance = big.NewInt(-5000 + 2500 - 50 - 7000 + 300 - 50 - 1000 + 950) // -(eth->mvx) + (mvx->eth) - fees + revert after bad SC call - usdcToken.ESDTSafeExtraBalance = big.NewInt(150) // extra is just for the fees for the 2 transfers mvx->eth and the failed eth->mvx that needed refund + usdcToken.TestOperations[2].KlvSCCallData = nil + usdcToken.TestOperations[2].KlvFaultySCCall = true + usdcToken.TestOperations[2].KlvForceSCCall = true + usdcToken.EthTestAddrExtraBalance = big.NewInt(-5000 + 2500 - 50 - 7000 + 300 - 50 - 1000 + 950) // -(eth->kda) + (kda->eth) - fees + revert after bad SC call + usdcToken.KDASafeExtraBalance = big.NewInt(150) // extra is just for the fees for the 2 transfers kda->eth and the failed eth->kda that needed refund memeToken := GenerateTestMEMEToken() - memeToken.TestOperations[2].MvxSCCallData = nil - memeToken.TestOperations[2].MvxFaultySCCall = true - usdcToken.TestOperations[2].MvxForceSCCall = true + memeToken.TestOperations[2].KlvSCCallData = nil + memeToken.TestOperations[2].KlvFaultySCCall = true + memeToken.TestOperations[2].KlvForceSCCall = true testRelayersWithChainSimulatorAndTokensAndRefund( t, @@ -108,14 +108,14 @@ func TestRelayersShouldExecuteTransfersWithRefund(t *testing.T) { t.Run("0 gas limit should refund", func(t *testing.T) { callData := createScCallData("callPayable", 0) usdcToken := GenerateTestUSDCToken() - usdcToken.TestOperations[2].MvxSCCallData = callData - usdcToken.TestOperations[2].MvxFaultySCCall = true - usdcToken.EthTestAddrExtraBalance = big.NewInt(-5000 + 2500 - 50 - 7000 + 300 - 50 - 1000 + 950) // -(eth->mvx) + (mvx->eth) - fees + revert after bad SC call - usdcToken.ESDTSafeExtraBalance = big.NewInt(150) // extra is just for the fees for the 2 transfers mvx->eth and the failed eth->mvx that needed refund + usdcToken.TestOperations[2].KlvSCCallData = callData + usdcToken.TestOperations[2].KlvFaultySCCall = true + usdcToken.EthTestAddrExtraBalance = big.NewInt(-5000 + 2500 - 50 - 7000 + 300 - 50 - 1000 + 950) // -(eth->kda) + (kda->eth) - fees + revert after bad SC call + usdcToken.KDASafeExtraBalance = big.NewInt(150) // extra is just for the fees for the 2 transfers kda->eth and the failed eth->kda that needed refund memeToken := GenerateTestMEMEToken() - memeToken.TestOperations[2].MvxSCCallData = callData - memeToken.TestOperations[2].MvxFaultySCCall = true + memeToken.TestOperations[2].KlvSCCallData = callData + memeToken.TestOperations[2].KlvFaultySCCall = true testRelayersWithChainSimulatorAndTokensAndRefund( t, @@ -127,14 +127,14 @@ func TestRelayersShouldExecuteTransfersWithRefund(t *testing.T) { t.Run("small gas limit should refund", func(t *testing.T) { callData := createScCallData("callPayable", 2000) usdcToken := GenerateTestUSDCToken() - usdcToken.TestOperations[2].MvxSCCallData = callData - usdcToken.TestOperations[2].MvxFaultySCCall = true - usdcToken.EthTestAddrExtraBalance = big.NewInt(-5000 + 2500 - 50 - 7000 + 300 - 50 - 1000 + 950) // -(eth->mvx) + (mvx->eth) - fees + revert after bad SC call - usdcToken.ESDTSafeExtraBalance = big.NewInt(150) // extra is just for the fees for the 2 transfers mvx->eth and the failed eth->mvx that needed refund + usdcToken.TestOperations[2].KlvSCCallData = callData + usdcToken.TestOperations[2].KlvFaultySCCall = true + usdcToken.EthTestAddrExtraBalance = big.NewInt(-5000 + 2500 - 50 - 7000 + 300 - 50 - 1000 + 950) // -(eth->kda) + (kda->eth) - fees + revert after bad SC call + usdcToken.KDASafeExtraBalance = big.NewInt(150) // extra is just for the fees for the 2 transfers kda->eth and the failed eth->kda that needed refund memeToken := GenerateTestMEMEToken() - memeToken.TestOperations[2].MvxSCCallData = callData - memeToken.TestOperations[2].MvxFaultySCCall = true + memeToken.TestOperations[2].KlvSCCallData = callData + memeToken.TestOperations[2].KlvFaultySCCall = true testRelayersWithChainSimulatorAndTokensAndRefund( t, @@ -146,14 +146,14 @@ func TestRelayersShouldExecuteTransfersWithRefund(t *testing.T) { t.Run("extra parameter should refund", func(t *testing.T) { callData := createScCallData("callPayable", 50000000, "extra parameter") usdcToken := GenerateTestUSDCToken() - usdcToken.TestOperations[2].MvxSCCallData = callData - usdcToken.TestOperations[2].MvxFaultySCCall = true - usdcToken.EthTestAddrExtraBalance = big.NewInt(-5000 + 2500 - 50 - 7000 + 300 - 50 - 1000 + 950) // -(eth->mvx) + (mvx->eth) - fees + revert after bad SC call - usdcToken.ESDTSafeExtraBalance = big.NewInt(150) // extra is just for the fees for the 2 transfers mvx->eth and the failed eth->mvx that needed refund + usdcToken.TestOperations[2].KlvSCCallData = callData + usdcToken.TestOperations[2].KlvFaultySCCall = true + usdcToken.EthTestAddrExtraBalance = big.NewInt(-5000 + 2500 - 50 - 7000 + 300 - 50 - 1000 + 950) // -(eth->kda) + (kda->eth) - fees + revert after bad SC call + usdcToken.KDASafeExtraBalance = big.NewInt(150) // extra is just for the fees for the 2 transfers kda->eth and the failed eth->kda that needed refund memeToken := GenerateTestMEMEToken() - memeToken.TestOperations[2].MvxSCCallData = callData - memeToken.TestOperations[2].MvxFaultySCCall = true + memeToken.TestOperations[2].KlvSCCallData = callData + memeToken.TestOperations[2].KlvFaultySCCall = true testRelayersWithChainSimulatorAndTokensAndRefund( t, @@ -165,14 +165,14 @@ func TestRelayersShouldExecuteTransfersWithRefund(t *testing.T) { t.Run("no arguments should refund", func(t *testing.T) { callData := createScCallData("callPayableWithParams", 50000000) usdcToken := GenerateTestUSDCToken() - usdcToken.TestOperations[2].MvxSCCallData = callData - usdcToken.TestOperations[2].MvxFaultySCCall = true - usdcToken.EthTestAddrExtraBalance = big.NewInt(-5000 + 2500 - 50 - 7000 + 300 - 50 - 1000 + 950) // -(eth->mvx) + (mvx->eth) - fees + revert after bad SC call - usdcToken.ESDTSafeExtraBalance = big.NewInt(150) // extra is just for the fees for the 2 transfers mvx->eth and the failed eth->mvx that needed refund + usdcToken.TestOperations[2].KlvSCCallData = callData + usdcToken.TestOperations[2].KlvFaultySCCall = true + usdcToken.EthTestAddrExtraBalance = big.NewInt(-5000 + 2500 - 50 - 7000 + 300 - 50 - 1000 + 950) // -(eth->kda) + (kda->eth) - fees + revert after bad SC call + usdcToken.KDASafeExtraBalance = big.NewInt(150) // extra is just for the fees for the 2 transfers kda->eth and the failed eth->kda that needed refund memeToken := GenerateTestMEMEToken() - memeToken.TestOperations[2].MvxSCCallData = callData - memeToken.TestOperations[2].MvxFaultySCCall = true + memeToken.TestOperations[2].KlvSCCallData = callData + memeToken.TestOperations[2].KlvFaultySCCall = true testRelayersWithChainSimulatorAndTokensAndRefund( t, @@ -184,14 +184,14 @@ func TestRelayersShouldExecuteTransfersWithRefund(t *testing.T) { t.Run("wrong number of arguments should refund", func(t *testing.T) { callData := createScCallData("callPayableWithParams", 50000000, string([]byte{37})) usdcToken := GenerateTestUSDCToken() - usdcToken.TestOperations[2].MvxSCCallData = callData - usdcToken.TestOperations[2].MvxFaultySCCall = true - usdcToken.EthTestAddrExtraBalance = big.NewInt(-5000 + 2500 - 50 - 7000 + 300 - 50 - 1000 + 950) // -(eth->mvx) + (mvx->eth) - fees + revert after bad SC call - usdcToken.ESDTSafeExtraBalance = big.NewInt(150) // extra is just for the fees for the 2 transfers mvx->eth and the failed eth->mvx that needed refund + usdcToken.TestOperations[2].KlvSCCallData = callData + usdcToken.TestOperations[2].KlvFaultySCCall = true + usdcToken.EthTestAddrExtraBalance = big.NewInt(-5000 + 2500 - 50 - 7000 + 300 - 50 - 1000 + 950) // -(eth->kda) + (kda->eth) - fees + revert after bad SC call + usdcToken.KDASafeExtraBalance = big.NewInt(150) // extra is just for the fees for the 2 transfers kda->eth and the failed eth->kda that needed refund memeToken := GenerateTestMEMEToken() - memeToken.TestOperations[2].MvxSCCallData = callData - memeToken.TestOperations[2].MvxFaultySCCall = true + memeToken.TestOperations[2].KlvSCCallData = callData + memeToken.TestOperations[2].KlvFaultySCCall = true testRelayersWithChainSimulatorAndTokensAndRefund( t, @@ -206,14 +206,14 @@ func TestRelayersShouldExecuteTransfersWithRefund(t *testing.T) { callData := createScCallData("callPayableWithParams", 50000000, malformedUint64String, dummyAddress) usdcToken := GenerateTestUSDCToken() - usdcToken.TestOperations[2].MvxSCCallData = callData - usdcToken.TestOperations[2].MvxFaultySCCall = true - usdcToken.EthTestAddrExtraBalance = big.NewInt(-5000 + 2500 - 50 - 7000 + 300 - 50 - 1000 + 950) // -(eth->mvx) + (mvx->eth) - fees + revert after bad SC call - usdcToken.ESDTSafeExtraBalance = big.NewInt(150) // extra is just for the fees for the 2 transfers mvx->eth and the failed eth->mvx that needed refund + usdcToken.TestOperations[2].KlvSCCallData = callData + usdcToken.TestOperations[2].KlvFaultySCCall = true + usdcToken.EthTestAddrExtraBalance = big.NewInt(-5000 + 2500 - 50 - 7000 + 300 - 50 - 1000 + 950) // -(eth->kda) + (kda->eth) - fees + revert after bad SC call + usdcToken.KDASafeExtraBalance = big.NewInt(150) // extra is just for the fees for the 2 transfers kda->eth and the failed eth->kda that needed refund memeToken := GenerateTestMEMEToken() - memeToken.TestOperations[2].MvxSCCallData = callData - memeToken.TestOperations[2].MvxFaultySCCall = true + memeToken.TestOperations[2].KlvSCCallData = callData + memeToken.TestOperations[2].KlvFaultySCCall = true testRelayersWithChainSimulatorAndTokensAndRefund( t, @@ -230,14 +230,14 @@ func TestRelayersShouldExecuteTransfersWithRefund(t *testing.T) { callData = append(callData, []byte{5, 4, 55}...) usdcToken := GenerateTestUSDCToken() - usdcToken.TestOperations[2].MvxSCCallData = callData - usdcToken.TestOperations[2].MvxFaultySCCall = true - usdcToken.EthTestAddrExtraBalance = big.NewInt(-5000 + 2500 - 50 - 7000 + 300 - 50 - 1000 + 950) // -(eth->mvx) + (mvx->eth) - fees + revert after bad SC call - usdcToken.ESDTSafeExtraBalance = big.NewInt(150) // extra is just for the fees for the 2 transfers mvx->eth and the failed eth->mvx that needed refund + usdcToken.TestOperations[2].KlvSCCallData = callData + usdcToken.TestOperations[2].KlvFaultySCCall = true + usdcToken.EthTestAddrExtraBalance = big.NewInt(-5000 + 2500 - 50 - 7000 + 300 - 50 - 1000 + 950) // -(eth->kda) + (kda->eth) - fees + revert after bad SC call + usdcToken.KDASafeExtraBalance = big.NewInt(150) // extra is just for the fees for the 2 transfers kda->eth and the failed eth->kda that needed refund memeToken := GenerateTestMEMEToken() - memeToken.TestOperations[2].MvxSCCallData = callData - memeToken.TestOperations[2].MvxFaultySCCall = true + memeToken.TestOperations[2].KlvSCCallData = callData + memeToken.TestOperations[2].KlvFaultySCCall = true testRelayersWithChainSimulatorAndTokensAndRefund( t, @@ -249,24 +249,24 @@ func TestRelayersShouldExecuteTransfersWithRefund(t *testing.T) { } func testRelayersWithChainSimulatorAndTokensAndRefund(tb testing.TB, manualStopChan chan error, tokens ...framework.TestTokenParams) { - startsFromEthFlow, startsFromMvXFlow := createFlowsBasedOnToken(tb, tokens...) + startsFromEthFlow, startsFromKlvFlow := createFlowsBasedOnToken(tb, tokens...) setupFunc := func(tb testing.TB, setup *framework.TestSetup) { - startsFromMvXFlow.setup = setup + startsFromKlvFlow.setup = setup startsFromEthFlow.setup = setup setup.IssueAndConfigureTokens(tokens...) - setup.MultiversxHandler.CheckForZeroBalanceOnReceivers(setup.Ctx, tokens...) + setup.KCHandler.CheckForZeroBalanceOnReceivers(setup.Ctx, tokens...) if len(startsFromEthFlow.tokens) > 0 { - setup.EthereumHandler.CreateBatchOnEthereum(setup.Ctx, setup.MultiversxHandler.TestCallerAddress, startsFromEthFlow.tokens...) + setup.EthereumHandler.CreateBatchOnEthereum(setup.Ctx, setup.KCHandler.TestCallerAddress, startsFromEthFlow.tokens...) } - if len(startsFromMvXFlow.tokens) > 0 { - setup.CreateBatchOnMultiversX(startsFromMvXFlow.tokens...) + if len(startsFromKlvFlow.tokens) > 0 { + setup.CreateBatchOnKC(startsFromKlvFlow.tokens...) } } processFunc := func(tb testing.TB, setup *framework.TestSetup) bool { - if startsFromEthFlow.process() && startsFromMvXFlow.process() && startsFromMvXFlow.areTokensFullyRefunded() { + if startsFromEthFlow.process() && startsFromKlvFlow.process() && startsFromKlvFlow.areTokensFullyRefunded() { return true } diff --git a/integrationTests/relayers/slowTests/startsFromEthereumEdgecaseFlow.go b/integrationTests/relayers/slowTests/startsFromEthereumEdgecaseFlow.go index 572dcfd0..7e6ee068 100644 --- a/integrationTests/relayers/slowTests/startsFromEthereumEdgecaseFlow.go +++ b/integrationTests/relayers/slowTests/startsFromEthereumEdgecaseFlow.go @@ -12,8 +12,8 @@ import ( type startsFromEthereumEdgecaseFlow struct { testing.TB setup *framework.TestSetup - ethToMvxDone bool - mvxToEthDone bool + ethToKlvDone bool + kdaToEthDone bool tokens []framework.TestTokenParams } @@ -21,27 +21,27 @@ func (flow *startsFromEthereumEdgecaseFlow) process() (finished bool) { if len(flow.tokens) == 0 { return true } - if flow.mvxToEthDone && flow.ethToMvxDone { + if flow.kdaToEthDone && flow.ethToKlvDone { return true } isTransferDoneFromEthereum := flow.setup.IsTransferDoneFromEthereum(flow.tokens...) - if !flow.ethToMvxDone && isTransferDoneFromEthereum { - flow.ethToMvxDone = true - log.Info(fmt.Sprintf(framework.LogStepMarker, "Ethereum->MultiversX transfer finished, now sending back to Ethereum & another round from Ethereum...")) + if !flow.ethToKlvDone && isTransferDoneFromEthereum { + flow.ethToKlvDone = true + log.Info(fmt.Sprintf(framework.LogStepMarker, "Ethereum->Klever Blockchain transfer finished, now sending back to Ethereum & another round from Ethereum...")) - flow.setup.SendFromMultiversxToEthereum(flow.tokens...) - flow.setup.EthereumHandler.SendFromEthereumToMultiversX(flow.setup.Ctx, flow.setup.MultiversxHandler.TestCallerAddress, flow.tokens...) + flow.setup.SendFromKCToEthereum(flow.tokens...) + flow.setup.EthereumHandler.SendFromEthereumToKC(flow.setup.Ctx, flow.setup.KCHandler.TestCallerAddress, flow.tokens...) } - if !flow.ethToMvxDone { + if !flow.ethToKlvDone { // return here, no reason to check downwards return false } - isTransferDoneFromMultiversX := flow.setup.IsTransferDoneFromMultiversX(flow.tokens...) - if !flow.mvxToEthDone && isTransferDoneFromMultiversX { - flow.mvxToEthDone = true - log.Info(fmt.Sprintf(framework.LogStepMarker, "MultiversX<->Ethereum from Ethereum transfers done")) + isTransferDoneFromKC := flow.setup.IsTransferDoneFromKC(flow.tokens...) + if !flow.kdaToEthDone && isTransferDoneFromKC { + flow.kdaToEthDone = true + log.Info(fmt.Sprintf(framework.LogStepMarker, "Klever Blockchain<->Ethereum from Ethereum transfers done")) return true } diff --git a/integrationTests/relayers/slowTests/startsFromEthereumFlow.go b/integrationTests/relayers/slowTests/startsFromEthereumFlow.go index d7d980d6..b00edc73 100644 --- a/integrationTests/relayers/slowTests/startsFromEthereumFlow.go +++ b/integrationTests/relayers/slowTests/startsFromEthereumFlow.go @@ -12,8 +12,8 @@ import ( type startsFromEthereumFlow struct { testing.TB setup *framework.TestSetup - ethToMvxDone bool - mvxToEthDone bool + ethToKlvDone bool + kdaToEthDone bool tokens []framework.TestTokenParams } @@ -21,26 +21,26 @@ func (flow *startsFromEthereumFlow) process() (finished bool) { if len(flow.tokens) == 0 { return true } - if flow.mvxToEthDone && flow.ethToMvxDone { + if flow.kdaToEthDone && flow.ethToKlvDone { return true } isTransferDoneFromEthereum := flow.setup.IsTransferDoneFromEthereum(flow.tokens...) - if !flow.ethToMvxDone && isTransferDoneFromEthereum { - flow.ethToMvxDone = true - log.Info(fmt.Sprintf(framework.LogStepMarker, "Ethereum->MultiversX transfer finished, now sending back to Ethereum...")) + if !flow.ethToKlvDone && isTransferDoneFromEthereum { + flow.ethToKlvDone = true + log.Info(fmt.Sprintf(framework.LogStepMarker, "Ethereum->Klever Blockchain transfer finished, now sending back to Ethereum...")) - flow.setup.SendFromMultiversxToEthereum(flow.tokens...) + flow.setup.SendFromKCToEthereum(flow.tokens...) } - if !flow.ethToMvxDone { + if !flow.ethToKlvDone { // return here, no reason to check downwards return false } - isTransferDoneFromMultiversX := flow.setup.IsTransferDoneFromMultiversX(flow.tokens...) - if !flow.mvxToEthDone && isTransferDoneFromMultiversX { - flow.mvxToEthDone = true - log.Info(fmt.Sprintf(framework.LogStepMarker, "MultiversX<->Ethereum from Ethereum transfers done")) + isTransferDoneFromKC := flow.setup.IsTransferDoneFromKC(flow.tokens...) + if !flow.kdaToEthDone && isTransferDoneFromKC { + flow.kdaToEthDone = true + log.Info(fmt.Sprintf(framework.LogStepMarker, "Klever Blockchain<->Ethereum from Ethereum transfers done")) return true } diff --git a/integrationTests/relayers/slowTests/startsFromKcFlow.go b/integrationTests/relayers/slowTests/startsFromKcFlow.go new file mode 100644 index 00000000..d6783147 --- /dev/null +++ b/integrationTests/relayers/slowTests/startsFromKcFlow.go @@ -0,0 +1,59 @@ +//go:build slow + +package slowTests + +import ( + "fmt" + "testing" + + "github.com/klever-io/klv-bridge-eth-go/integrationTests/relayers/slowTests/framework" +) + +type startsFromKCFlow struct { + testing.TB + setup *framework.TestSetup + ethToKlvDone bool + kdaToEthDone bool + tokens []framework.TestTokenParams +} + +func (flow *startsFromKCFlow) process() (finished bool) { + if len(flow.tokens) == 0 { + return true + } + if flow.kdaToEthDone && flow.ethToKlvDone { + return true + } + + isTransferDoneFromKC := flow.setup.IsTransferDoneFromKC(flow.tokens...) + if !flow.kdaToEthDone && isTransferDoneFromKC { + flow.kdaToEthDone = true + log.Info(fmt.Sprintf(framework.LogStepMarker, "Klever Blockchain->Ethereum transfer finished, now sending back to Klever Blockchain...")) + + flow.setup.EthereumHandler.SendFromEthereumToKC(flow.setup.Ctx, flow.setup.KCHandler.TestCallerAddress, flow.tokens...) + } + if !flow.kdaToEthDone { + // return here, no reason to check downwards + return false + } + + isTransferDoneFromEthereum := flow.setup.IsTransferDoneFromEthereum(flow.tokens...) + if !flow.ethToKlvDone && isTransferDoneFromEthereum { + flow.ethToKlvDone = true + log.Info(fmt.Sprintf(framework.LogStepMarker, "Klever Blockchain<->Ethereum from Klever Blockchain transfers done")) + return true + } + + return false +} + +func (flow *startsFromKCFlow) areTokensFullyRefunded() bool { + if len(flow.tokens) == 0 { + return true + } + if !flow.ethToKlvDone { + return false // regular flow is not completed + } + + return flow.setup.IsTransferDoneFromEthereumWithRefund(flow.tokens...) +} diff --git a/integrationTests/relayers/slowTests/startsFromMultiversxFlow.go b/integrationTests/relayers/slowTests/startsFromMultiversxFlow.go deleted file mode 100644 index 1376897a..00000000 --- a/integrationTests/relayers/slowTests/startsFromMultiversxFlow.go +++ /dev/null @@ -1,59 +0,0 @@ -//go:build slow - -package slowTests - -import ( - "fmt" - "testing" - - "github.com/klever-io/klv-bridge-eth-go/integrationTests/relayers/slowTests/framework" -) - -type startsFromMultiversXFlow struct { - testing.TB - setup *framework.TestSetup - ethToMvxDone bool - mvxToEthDone bool - tokens []framework.TestTokenParams -} - -func (flow *startsFromMultiversXFlow) process() (finished bool) { - if len(flow.tokens) == 0 { - return true - } - if flow.mvxToEthDone && flow.ethToMvxDone { - return true - } - - isTransferDoneFromMultiversX := flow.setup.IsTransferDoneFromMultiversX(flow.tokens...) - if !flow.mvxToEthDone && isTransferDoneFromMultiversX { - flow.mvxToEthDone = true - log.Info(fmt.Sprintf(framework.LogStepMarker, "MultiversX->Ethereum transfer finished, now sending back to MultiversX...")) - - flow.setup.EthereumHandler.SendFromEthereumToMultiversX(flow.setup.Ctx, flow.setup.MultiversxHandler.TestCallerAddress, flow.tokens...) - } - if !flow.mvxToEthDone { - // return here, no reason to check downwards - return false - } - - isTransferDoneFromEthereum := flow.setup.IsTransferDoneFromEthereum(flow.tokens...) - if !flow.ethToMvxDone && isTransferDoneFromEthereum { - flow.ethToMvxDone = true - log.Info(fmt.Sprintf(framework.LogStepMarker, "MultiversX<->Ethereum from MultiversX transfers done")) - return true - } - - return false -} - -func (flow *startsFromMultiversXFlow) areTokensFullyRefunded() bool { - if len(flow.tokens) == 0 { - return true - } - if !flow.ethToMvxDone { - return false // regular flow is not completed - } - - return flow.setup.IsTransferDoneFromEthereumWithRefund(flow.tokens...) -} diff --git a/integrationTests/testscommon.go b/integrationTests/testscommon.go index 45b31472..a024235e 100644 --- a/integrationTests/testscommon.go +++ b/integrationTests/testscommon.go @@ -106,7 +106,7 @@ func CreateMessengerWithNoDiscovery() p2p.Messenger { }, KadDhtPeerDiscovery: p2pConfig.KadDhtPeerDiscoveryConfig{ Enabled: false, - ProtocolID: "/erd/relay/1.0.0", + ProtocolID: "/klv/relay/1.0.0", }, Sharding: p2pConfig.ShardingConfig{ Type: p2p.NilListSharder, diff --git a/p2p/broadcaster.go b/p2p/broadcaster.go index 4d3673b8..1ae7dabc 100644 --- a/p2p/broadcaster.go +++ b/p2p/broadcaster.go @@ -26,29 +26,29 @@ const ( // ArgsBroadcaster is the DTO used in the broadcaster constructor type ArgsBroadcaster struct { - Messenger NetMessenger - Log logger.Logger - MultiversXRoleProvider KleverChainRoleProvider - SignatureProcessor SignatureProcessor - KeyGen crypto.KeyGenerator - SingleSigner crypto.SingleSigner - PrivateKey crypto.PrivateKey - Name string - AntifloodComponents *factory.AntiFloodComponents + Messenger NetMessenger + Log logger.Logger + KCRoleProvider KCRoleProvider + SignatureProcessor SignatureProcessor + KeyGen crypto.KeyGenerator + SingleSigner crypto.SingleSigner + PrivateKey crypto.PrivateKey + Name string + AntifloodComponents *factory.AntiFloodComponents } type broadcaster struct { *relayerMessageHandler *noncesOfPublicKeys - messenger NetMessenger - log logger.Logger - multiversRoleProvider KleverChainRoleProvider - signatureProcessor SignatureProcessor - name string - mutClients sync.RWMutex - clients []core.BroadcastClient - joinTopicName string - signTopicName string + messenger NetMessenger + log logger.Logger + kleverRoleProvider KCRoleProvider + signatureProcessor SignatureProcessor + name string + mutClients sync.RWMutex + clients []core.BroadcastClient + joinTopicName string + signTopicName string } // NewBroadcaster will create a new broadcaster able to pass messages and signatures @@ -59,12 +59,12 @@ func NewBroadcaster(args ArgsBroadcaster) (*broadcaster, error) { } b := &broadcaster{ - name: args.Name, - messenger: args.Messenger, - noncesOfPublicKeys: newNoncesOfPublicKeys(), - log: args.Log, - multiversRoleProvider: args.MultiversXRoleProvider, - signatureProcessor: args.SignatureProcessor, + name: args.Name, + messenger: args.Messenger, + noncesOfPublicKeys: newNoncesOfPublicKeys(), + log: args.Log, + kleverRoleProvider: args.KCRoleProvider, + signatureProcessor: args.SignatureProcessor, relayerMessageHandler: &relayerMessageHandler{ marshalizer: &marshal.JsonMarshalizer{}, keyGen: args.KeyGen, @@ -102,8 +102,8 @@ func checkArgs(args ArgsBroadcaster) error { if check.IfNil(args.SingleSigner) { return ErrNilSingleSigner } - if check.IfNil(args.MultiversXRoleProvider) { - return ErrNilMultiversXRoleProvider + if check.IfNil(args.KCRoleProvider) { + return ErrNilKCRoleProvider } if check.IfNil(args.Messenger) { return ErrNilMessenger @@ -153,7 +153,7 @@ func (b *broadcaster) ProcessReceivedMessage(message p2p.MessageP2P, fromConnect } hexPkBytes := hex.EncodeToString(msg.PublicKeyBytes) - if !b.multiversRoleProvider.IsWhitelisted(addr) { + if !b.kleverRoleProvider.IsWhitelisted(addr) { return fmt.Errorf("%w for peer: %s", ErrPeerNotWhitelisted, hexPkBytes) } diff --git a/p2p/broadcaster_test.go b/p2p/broadcaster_test.go index d5a5f12a..ad8adef4 100644 --- a/p2p/broadcaster_test.go +++ b/p2p/broadcaster_test.go @@ -31,15 +31,15 @@ func createMockArgsBroadcaster() ArgsBroadcaster { } ac, _ := factory.NewP2PAntiFloodComponents(context.Background(), cfg, &statusHandler.AppStatusHandlerStub{}, "") return ArgsBroadcaster{ - Messenger: &p2pMocks.MessengerStub{}, - Log: logger.GetOrCreate("test"), - MultiversXRoleProvider: &roleProvidersMock.KleverRoleProviderStub{}, - KeyGen: &cryptoMocks.KeyGenStub{}, - SingleSigner: &cryptoMocks.SingleSignerStub{}, - PrivateKey: &cryptoMocks.PrivateKeyStub{}, - SignatureProcessor: &testsCommon.SignatureProcessorStub{}, - Name: "test", - AntifloodComponents: ac, + Messenger: &p2pMocks.MessengerStub{}, + Log: logger.GetOrCreate("test"), + KCRoleProvider: &roleProvidersMock.KleverRoleProviderStub{}, + KeyGen: &cryptoMocks.KeyGenStub{}, + SingleSigner: &cryptoMocks.SingleSignerStub{}, + PrivateKey: &cryptoMocks.PrivateKeyStub{}, + SignatureProcessor: &testsCommon.SignatureProcessorStub{}, + Name: "test", + AntifloodComponents: ac, } } @@ -86,13 +86,13 @@ func TestNewBroadcaster(t *testing.T) { assert.True(t, check.IfNil(b)) assert.Equal(t, ErrNilSingleSigner, err) }) - t.Run("nil MultiversX role provider should error", func(t *testing.T) { + t.Run("nil klever blockchain role provider should error", func(t *testing.T) { args := createMockArgsBroadcaster() - args.MultiversXRoleProvider = nil + args.KCRoleProvider = nil b, err := NewBroadcaster(args) assert.True(t, check.IfNil(b)) - assert.Equal(t, ErrNilMultiversXRoleProvider, err) + assert.Equal(t, ErrNilKCRoleProvider, err) }) t.Run("nil messenger should error", func(t *testing.T) { args := createMockArgsBroadcaster() @@ -221,7 +221,7 @@ func TestBroadcaster_ProcessReceivedMessage(t *testing.T) { isWhiteListedCalled := false msg, buff := createSignedMessageAndMarshaledBytes(0) - args.MultiversXRoleProvider = &roleProvidersMock.KleverRoleProviderStub{ + args.KCRoleProvider = &roleProvidersMock.KleverRoleProviderStub{ IsWhitelistedCalled: func(address address.Address) bool { assert.Equal(t, msg.PublicKeyBytes, address.Bytes()) isWhiteListedCalled = true @@ -242,7 +242,7 @@ func TestBroadcaster_ProcessReceivedMessage(t *testing.T) { args := createMockArgsBroadcaster() msg, buff := createSignedMessageAndMarshaledBytes(0) - args.MultiversXRoleProvider = &roleProvidersMock.KleverRoleProviderStub{} + args.KCRoleProvider = &roleProvidersMock.KleverRoleProviderStub{} b, _ := NewBroadcaster(args) b.nonces[string(msg.PublicKeyBytes)] = msg.Nonce + 1 diff --git a/p2p/errors.go b/p2p/errors.go index 0bf5676d..139e8a33 100644 --- a/p2p/errors.go +++ b/p2p/errors.go @@ -17,8 +17,8 @@ var ErrNilPrivateKey = errors.New("nil private key") // ErrNilSingleSigner signals that a nil single signer was provided var ErrNilSingleSigner = errors.New("nil single signer") -// ErrNilMultiversXRoleProvider signals that a nil MultiversX role provider was given -var ErrNilMultiversXRoleProvider = errors.New("nil MultiversX role provider") +// ErrNilKCRoleProvider signals that a nil klever blockchain role provider was given +var ErrNilKCRoleProvider = errors.New("nil klever blockchain role provider") // ErrNilMessenger signals that a nil network messenger was provided var ErrNilMessenger = errors.New("nil network messenger") diff --git a/p2p/interface.go b/p2p/interface.go index f129e98f..4cba64c6 100644 --- a/p2p/interface.go +++ b/p2p/interface.go @@ -24,8 +24,8 @@ type NetMessenger interface { IsInterfaceNil() bool } -// KleverChainRoleProvider defines the operations for an KleverChain role provider -type KleverChainRoleProvider interface { +// KCRoleProvider defines the operations for an Klever Blockchain role provider +type KCRoleProvider interface { IsWhitelisted(address address.Address) bool IsInterfaceNil() bool } diff --git a/parsers/errors.go b/parsers/errors.go index 0a774acd..824c0529 100644 --- a/parsers/errors.go +++ b/parsers/errors.go @@ -10,7 +10,7 @@ var ( errBufferTooShortForUint64 = errors.New("buffer too short for uint64") errBufferTooShortForUint32 = errors.New("buffer too short for uint32 length") errBufferTooShortForEthAddress = errors.New("buffer too short for Ethereum address") - errBufferTooShortForMvxAddress = errors.New("buffer too short for MultiversX address") + errBufferTooShortForKlvAddress = errors.New("buffer too short for Klever Blockchain address") errBufferTooShortForBigInt = errors.New("buffer too short while extracting the big.Int value") errBufferLenMismatch = errors.New("buffer length mismatch") ) diff --git a/parsers/multiversxCodec.go b/parsers/kcCodec.go similarity index 89% rename from parsers/multiversxCodec.go rename to parsers/kcCodec.go index cab55f4b..310b7356 100644 --- a/parsers/multiversxCodec.go +++ b/parsers/kcCodec.go @@ -11,10 +11,10 @@ import ( ) const lenEthAddress = 20 -const lenMvxAddress = 32 +const lenKlvAddress = 32 -// MultiversxCodec defines the codec operations to be used for MultiversX contracts -type MultiversxCodec struct { +// KCCodec defines the codec operations to be used for Klever Blockchain contracts +type KCCodec struct { } func partiallyDecodeCallData(buff []byte, marker byte) (CallData, error) { @@ -110,7 +110,7 @@ func ExtractUint32(buff []byte) ([]byte, int, error) { } // DecodeProxySCCompleteCallData will try to decode the provided bytes into a ProxySCCompleteCallData struct -func (codec *MultiversxCodec) DecodeProxySCCompleteCallData(buff []byte) (ProxySCCompleteCallData, error) { +func (codec *KCCodec) DecodeProxySCCompleteCallData(buff []byte) (ProxySCCompleteCallData, error) { result := ProxySCCompleteCallData{} if len(buff) < lenEthAddress { @@ -120,17 +120,17 @@ func (codec *MultiversxCodec) DecodeProxySCCompleteCallData(buff []byte) (ProxyS result.From.SetBytes(buff[:lenEthAddress]) buff = buff[lenEthAddress:] - if len(buff) < lenMvxAddress { - return ProxySCCompleteCallData{}, errBufferTooShortForMvxAddress + if len(buff) < lenKlvAddress { + return ProxySCCompleteCallData{}, errBufferTooShortForKlvAddress } - toAddress, err := address.NewAddressFromBytes(buff[:lenMvxAddress]) + toAddress, err := address.NewAddressFromBytes(buff[:lenKlvAddress]) if err != nil { return ProxySCCompleteCallData{}, fmt.Errorf("%w for token", err) } result.To = toAddress - buff = buff[lenMvxAddress:] + buff = buff[lenKlvAddress:] buff, token, err := ExtractString(buff) if err != nil { @@ -156,7 +156,7 @@ func (codec *MultiversxCodec) DecodeProxySCCompleteCallData(buff []byte) (ProxyS } // ExtractGasLimitFromRawCallData will try to extract the gas limit from the provided buffer -func (codec *MultiversxCodec) ExtractGasLimitFromRawCallData(buff []byte) (uint64, error) { +func (codec *KCCodec) ExtractGasLimitFromRawCallData(buff []byte) (uint64, error) { if len(buff) == 0 { return 0, errBufferTooShortForMarker } @@ -177,6 +177,6 @@ func (codec *MultiversxCodec) ExtractGasLimitFromRawCallData(buff []byte) (uint6 } // IsInterfaceNil returns true if there is no value under the interface -func (codec *MultiversxCodec) IsInterfaceNil() bool { +func (codec *KCCodec) IsInterfaceNil() bool { return codec == nil } diff --git a/parsers/multiversxCodec_test.go b/parsers/kcCodec_test.go similarity index 92% rename from parsers/multiversxCodec_test.go rename to parsers/kcCodec_test.go index 947b9b21..ff743790 100644 --- a/parsers/multiversxCodec_test.go +++ b/parsers/kcCodec_test.go @@ -27,20 +27,20 @@ func createTestProxySCCompleteCallData() ProxySCCompleteCallData { return completeCallData } -func TestMultiversxCodec_IsInterfaceNil(t *testing.T) { +func TestKCCodec_IsInterfaceNil(t *testing.T) { t.Parallel() - var instance *MultiversxCodec + var instance *KCCodec assert.True(t, instance.IsInterfaceNil()) - instance = &MultiversxCodec{} + instance = &KCCodec{} assert.False(t, instance.IsInterfaceNil()) } -func TestMultiversxCodec_ExtractGasLimitFromRawCallData(t *testing.T) { +func TestKCCodec_ExtractGasLimitFromRawCallData(t *testing.T) { t.Parallel() - codec := &MultiversxCodec{} + codec := &KCCodec{} t.Run("empty buffer should error", func(t *testing.T) { t.Parallel() @@ -149,10 +149,10 @@ func TestMultiversxCodec_ExtractGasLimitFromRawCallData(t *testing.T) { }) } -func TestMultiversxCodec_DecodeProxySCCompleteCallData(t *testing.T) { +func TestKCCodec_DecodeProxySCCompleteCallData(t *testing.T) { t.Parallel() - codec := MultiversxCodec{} + codec := KCCodec{} emptyCompleteCallData := ProxySCCompleteCallData{} t.Run("buffer to short for Ethereum address should error", func(t *testing.T) { @@ -163,20 +163,20 @@ func TestMultiversxCodec_DecodeProxySCCompleteCallData(t *testing.T) { assert.ErrorIs(t, err, errBufferTooShortForEthAddress) assert.Equal(t, emptyCompleteCallData, completeCallData) }) - t.Run("buffer to short for MultiversX address should error", func(t *testing.T) { + t.Run("buffer to short for Klever Blockchain address should error", func(t *testing.T) { t.Parallel() buff := bytes.Repeat([]byte{0x01}, 20) buff = append(buff, 0x1) completeCallData, err := codec.DecodeProxySCCompleteCallData(buff) - assert.ErrorIs(t, err, errBufferTooShortForMvxAddress) + assert.ErrorIs(t, err, errBufferTooShortForKlvAddress) assert.Equal(t, emptyCompleteCallData, completeCallData) }) t.Run("invalid token size bytes should error", func(t *testing.T) { t.Parallel() buff := bytes.Repeat([]byte{0x01}, 20) // Eth address - buff = append(buff, bytes.Repeat([]byte{0x01}, 32)...) // Mvx address + buff = append(buff, bytes.Repeat([]byte{0x01}, 32)...) // Klv address buff = append(buff, []byte{0x00, 0x01, 0x04}...) // invalid token completeCallData, err := codec.DecodeProxySCCompleteCallData(buff) @@ -188,7 +188,7 @@ func TestMultiversxCodec_DecodeProxySCCompleteCallData(t *testing.T) { t.Parallel() buff := bytes.Repeat([]byte{0x01}, 20) // Eth address - buff = append(buff, bytes.Repeat([]byte{0x01}, 32)...) // Mvx address + buff = append(buff, bytes.Repeat([]byte{0x01}, 32)...) // Klv address buff = append(buff, []byte{0x00, 0x00, 0x00, 0x02}...) // token length buff = append(buff, 0x04) // instead of 2 bytes for token we have only one @@ -201,7 +201,7 @@ func TestMultiversxCodec_DecodeProxySCCompleteCallData(t *testing.T) { t.Parallel() buff := bytes.Repeat([]byte{0x01}, 20) // Eth address - buff = append(buff, bytes.Repeat([]byte{0x01}, 32)...) // Mvx address + buff = append(buff, bytes.Repeat([]byte{0x01}, 32)...) // Klv address buff = append(buff, []byte{0x00, 0x00, 0x00, 0x02}...) // token size buff = append(buff, []byte{0x02, 0x03}...) // token buff = append(buff, []byte{0x00, 0x00, 0x00}...) // invalid amount size @@ -215,7 +215,7 @@ func TestMultiversxCodec_DecodeProxySCCompleteCallData(t *testing.T) { t.Parallel() buff := bytes.Repeat([]byte{0x01}, 20) // Eth address - buff = append(buff, bytes.Repeat([]byte{0x01}, 32)...) // Mvx address + buff = append(buff, bytes.Repeat([]byte{0x01}, 32)...) // Klv address buff = append(buff, []byte{0x00, 0x00, 0x00, 0x02}...) // token size buff = append(buff, []byte{0x02, 0x03}...) // token buff = append(buff, []byte{0x00, 0x00, 0x00, 0x05}...) // amount size @@ -230,7 +230,7 @@ func TestMultiversxCodec_DecodeProxySCCompleteCallData(t *testing.T) { t.Parallel() buff := bytes.Repeat([]byte{0x01}, 20) // Eth address - buff = append(buff, bytes.Repeat([]byte{0x01}, 32)...) // Mvx address + buff = append(buff, bytes.Repeat([]byte{0x01}, 32)...) // Klv address buff = append(buff, []byte{0x00, 0x00, 0x00, 0x02}...) // token size buff = append(buff, []byte{0x02, 0x03}...) // token buff = append(buff, []byte{0x00, 0x00, 0x00, 0x01}...) // amount size @@ -246,7 +246,7 @@ func TestMultiversxCodec_DecodeProxySCCompleteCallData(t *testing.T) { t.Parallel() buff := bytes.Repeat([]byte{0x01}, 20) // Eth address - buff = append(buff, bytes.Repeat([]byte{0x01}, 32)...) // Mvx address + buff = append(buff, bytes.Repeat([]byte{0x01}, 32)...) // Klv address buff = append(buff, []byte{0x00, 0x00, 0x00, 0x02}...) // token size buff = append(buff, []byte{0x02, 0x03}...) // token buff = append(buff, []byte{0x00, 0x00, 0x00, 0x00}...) // amount size = 0 => amount = 0 diff --git a/parsers/types.go b/parsers/types.go index a744cd59..78ab2a09 100644 --- a/parsers/types.go +++ b/parsers/types.go @@ -38,7 +38,7 @@ func (callData ProxySCCompleteCallData) String() string { amountString = callData.Amount.String() } - return fmt.Sprintf("Eth address: %s, MvX address: %s, token: %s, amount: %s, nonce: %d, raw call data: %x", + return fmt.Sprintf("Eth address: %s, Klv address: %s, token: %s, amount: %s, nonce: %d, raw call data: %x", callData.From.String(), toString, callData.Token, diff --git a/parsers/types_test.go b/parsers/types_test.go index 15bb3008..c83d3e82 100644 --- a/parsers/types_test.go +++ b/parsers/types_test.go @@ -25,7 +25,7 @@ func TestProxySCCompleteCallData_String(t *testing.T) { Nonce: 1, } - expectedString := "Eth address: 0x0000000000000000000000000000000000000000, MvX address: , token: tkn, amount: , nonce: 1, raw call data: 414243" + expectedString := "Eth address: 0x0000000000000000000000000000000000000000, Klv address: , token: tkn, amount: , nonce: 1, raw call data: 414243" assert.Equal(t, expectedString, callData.String()) }) t.Run("not a Valid Klever address should work", func(t *testing.T) { @@ -39,7 +39,7 @@ func TestProxySCCompleteCallData_String(t *testing.T) { Nonce: 1, } - expectedString := "Eth address: 0x0000000000000000000000000000000000000000, MvX address: , token: tkn, amount: , nonce: 1, raw call data: 414243" + expectedString := "Eth address: 0x0000000000000000000000000000000000000000, Klv address: , token: tkn, amount: , nonce: 1, raw call data: 414243" assert.Equal(t, expectedString, callData.String()) }) t.Run("with valid data should work", func(t *testing.T) { @@ -56,7 +56,7 @@ func TestProxySCCompleteCallData_String(t *testing.T) { callData.From.SetBytes(ethUnhexed) callData.To, _ = address.NewAddress("klv1qqqqqqqqqqqqqpgqh46r9zh78lry2py8tq723fpjdr4pp0zgsg8syf6mq0") - expectedString := "Eth address: 0x880EC53Af800b5Cd051531672EF4fc4De233bD5d, MvX address: klv1qqqqqqqqqqqqqpgqh46r9zh78lry2py8tq723fpjdr4pp0zgsg8syf6mq0, token: tkn, amount: 37, nonce: 1, raw call data: 414243" + expectedString := "Eth address: 0x880EC53Af800b5Cd051531672EF4fc4De233bD5d, Klv address: klv1qqqqqqqqqqqqqpgqh46r9zh78lry2py8tq723fpjdr4pp0zgsg8syf6mq0, token: tkn, amount: 37, nonce: 1, raw call data: 414243" assert.Equal(t, expectedString, callData.String()) }) } diff --git a/scCallsExecutor.Dockerfile b/scCallsExecutor.Dockerfile index f07085a6..c1287038 100644 --- a/scCallsExecutor.Dockerfile +++ b/scCallsExecutor.Dockerfile @@ -1,12 +1,12 @@ FROM golang:1.20.7-bookworm AS builder LABEL description="This Docker image builds the SC calls executor binary." -WORKDIR /multiversx +WORKDIR /kc COPY . . RUN go mod tidy -WORKDIR /multiversx/cmd/scCallsExecutor +WORKDIR /kc/cmd/scCallsExecutor RUN APPVERSION=$(git describe --tags --long --always | tail -c 11) && echo "package main\n\nfunc init() {\n\tappVersion = \"${APPVERSION}\"\n}" > local.go RUN go mod tidy @@ -19,8 +19,8 @@ RUN apt-get update \ && apt-get -y install git \ && apt-get clean -COPY --from=builder /multiversx/cmd/scCallsExecutor /multiversx +COPY --from=builder /kc/cmd/scCallsExecutor /kc -WORKDIR /multiversx +WORKDIR /kc ENTRYPOINT ["./scCallsExecutor"] diff --git a/testsCommon/addressGenerators.go b/testsCommon/addressGenerators.go index 3b3a675d..ac2e0f53 100644 --- a/testsCommon/addressGenerators.go +++ b/testsCommon/addressGenerators.go @@ -15,8 +15,8 @@ func CreateRandomEthereumAddress() common.Address { return common.BytesToAddress(buff) } -// CreateRandomMultiversXAddress will create a random MultiversX address -func CreateRandomMultiversXAddress() address.Address { +// CreateRandomKCAddress will create a random Klever Blockchain address +func CreateRandomKCAddress() address.Address { buff := make([]byte, 32) _, _ = rand.Read(buff) @@ -25,8 +25,8 @@ func CreateRandomMultiversXAddress() address.Address { return addr } -// CreateRandomMultiversXSCAddress will create a random MultiversX smart contract address -func CreateRandomMultiversXSCAddress() address.Address { +// CreateRandomKCSCAddress will create a random Klever Blockchain smart contract address +func CreateRandomKCSCAddress() address.Address { buff := make([]byte, 22) _, _ = rand.Read(buff) diff --git a/testsCommon/balanceValidatorStub.go b/testsCommon/balanceValidatorStub.go index c23672d7..3e4cc0e0 100644 --- a/testsCommon/balanceValidatorStub.go +++ b/testsCommon/balanceValidatorStub.go @@ -10,13 +10,13 @@ import ( // BalanceValidatorStub - type BalanceValidatorStub struct { - CheckTokenCalled func(ctx context.Context, ethToken common.Address, mvxToken []byte, amount *big.Int, direction batchProcessor.Direction) error + CheckTokenCalled func(ctx context.Context, ethToken common.Address, kdaToken []byte, amount *big.Int, direction batchProcessor.Direction) error } // CheckToken - -func (stub *BalanceValidatorStub) CheckToken(ctx context.Context, ethToken common.Address, mvxToken []byte, amount *big.Int, direction batchProcessor.Direction) error { +func (stub *BalanceValidatorStub) CheckToken(ctx context.Context, ethToken common.Address, kdaToken []byte, amount *big.Int, direction batchProcessor.Direction) error { if stub.CheckTokenCalled != nil { - return stub.CheckTokenCalled(ctx, ethToken, mvxToken, amount, direction) + return stub.CheckTokenCalled(ctx, ethToken, kdaToken, amount, direction) } return nil diff --git a/testsCommon/bridge/bridgeExecutorStub.go b/testsCommon/bridge/bridgeExecutorStub.go index 6dd8be4d..008d6c4e 100644 --- a/testsCommon/bridge/bridgeExecutorStub.go +++ b/testsCommon/bridge/bridgeExecutorStub.go @@ -20,44 +20,44 @@ type BridgeExecutorStub struct { mutExecutor sync.RWMutex fullPath string - PrintInfoCalled func(logLevel logger.LogLevel, message string, extras ...interface{}) - MyTurnAsLeaderCalled func() bool - GetBatchFromMultiversXCalled func(ctx context.Context) (*bridgeCore.TransferBatch, error) - StoreBatchFromMultiversXCalled func(batch *bridgeCore.TransferBatch) error - GetStoredBatchCalled func() *bridgeCore.TransferBatch - GetLastExecutedEthBatchIDFromMultiversXCalled func(ctx context.Context) (uint64, error) - VerifyLastDepositNonceExecutedOnEthereumBatchCalled func(ctx context.Context) error - GetAndStoreActionIDForProposeTransferOnMultiversXCalled func(ctx context.Context) (uint64, error) - GetAndStoreActionIDForProposeSetStatusFromMultiversXCalled func(ctx context.Context) (uint64, error) - GetStoredActionIDCalled func() uint64 - WasTransferProposedOnMultiversXCalled func(ctx context.Context) (bool, error) - ProposeTransferOnMultiversXCalled func(ctx context.Context) error - ProcessMaxRetriesOnWasTransferProposedOnMultiversXCalled func() bool - ResetRetriesOnWasTransferProposedOnMultiversXCalled func() - WasSetStatusProposedOnMultiversXCalled func(ctx context.Context) (bool, error) - ProposeSetStatusOnMultiversXCalled func(ctx context.Context) error - WasActionSignedOnMultiversXCalled func(ctx context.Context) (bool, error) - SignActionOnMultiversXCalled func(ctx context.Context) error - ProcessQuorumReachedOnMultiversXCalled func(ctx context.Context) (bool, error) - WasActionPerformedOnMultiversXCalled func(ctx context.Context) (bool, error) - PerformActionOnMultiversXCalled func(ctx context.Context) error - ResolveNewDepositsStatusesCalled func(numDeposits uint64) - ProcessMaxQuorumRetriesOnMultiversXCalled func() bool - ResetRetriesCountOnMultiversXCalled func() - GetAndStoreBatchFromEthereumCalled func(ctx context.Context, nonce uint64) error - WasTransferPerformedOnEthereumCalled func(ctx context.Context) (bool, error) - SignTransferOnEthereumCalled func() error - PerformTransferOnEthereumCalled func(ctx context.Context) error - ProcessQuorumReachedOnEthereumCalled func(ctx context.Context) (bool, error) - WaitForTransferConfirmationCalled func(ctx context.Context) - WaitAndReturnFinalBatchStatusesCalled func(ctx context.Context) []byte - GetBatchStatusesFromEthereumCalled func(ctx context.Context) ([]byte, error) - ProcessMaxQuorumRetriesOnEthereumCalled func() bool - ResetRetriesCountOnEthereumCalled func() - ClearStoredP2PSignaturesForEthereumCalled func() - CheckMultiversXClientAvailabilityCalled func(ctx context.Context) error - CheckEthereumClientAvailabilityCalled func(ctx context.Context) error - CheckAvailableTokensCalled func(ctx context.Context, ethTokens []common.Address, mvxTokens [][]byte, amounts []*big.Int, direction batchProcessor.Direction) error + PrintInfoCalled func(logLevel logger.LogLevel, message string, extras ...interface{}) + MyTurnAsLeaderCalled func() bool + GetBatchFromKCCalled func(ctx context.Context) (*bridgeCore.TransferBatch, error) + StoreBatchFromKCCalled func(batch *bridgeCore.TransferBatch) error + GetStoredBatchCalled func() *bridgeCore.TransferBatch + GetLastExecutedEthBatchIDFromKCCalled func(ctx context.Context) (uint64, error) + VerifyLastDepositNonceExecutedOnEthereumBatchCalled func(ctx context.Context) error + GetAndStoreActionIDForProposeTransferOnKCCalled func(ctx context.Context) (uint64, error) + GetAndStoreActionIDForProposeSetStatusFromKCCalled func(ctx context.Context) (uint64, error) + GetStoredActionIDCalled func() uint64 + WasTransferProposedOnKCCalled func(ctx context.Context) (bool, error) + ProposeTransferOnKCCalled func(ctx context.Context) error + ProcessMaxRetriesOnWasTransferProposedOnKCCalled func() bool + ResetRetriesOnWasTransferProposedOnKCCalled func() + WasSetStatusProposedOnKCCalled func(ctx context.Context) (bool, error) + ProposeSetStatusOnKCCalled func(ctx context.Context) error + WasActionSignedOnKCCalled func(ctx context.Context) (bool, error) + SignActionOnKCCalled func(ctx context.Context) error + ProcessQuorumReachedOnKCCalled func(ctx context.Context) (bool, error) + WasActionPerformedOnKCCalled func(ctx context.Context) (bool, error) + PerformActionOnKCCalled func(ctx context.Context) error + ResolveNewDepositsStatusesCalled func(numDeposits uint64) + ProcessMaxQuorumRetriesOnKCCalled func() bool + ResetRetriesCountOnKCCalled func() + GetAndStoreBatchFromEthereumCalled func(ctx context.Context, nonce uint64) error + WasTransferPerformedOnEthereumCalled func(ctx context.Context) (bool, error) + SignTransferOnEthereumCalled func() error + PerformTransferOnEthereumCalled func(ctx context.Context) error + ProcessQuorumReachedOnEthereumCalled func(ctx context.Context) (bool, error) + WaitForTransferConfirmationCalled func(ctx context.Context) + WaitAndReturnFinalBatchStatusesCalled func(ctx context.Context) []byte + GetBatchStatusesFromEthereumCalled func(ctx context.Context) ([]byte, error) + ProcessMaxQuorumRetriesOnEthereumCalled func() bool + ResetRetriesCountOnEthereumCalled func() + ClearStoredP2PSignaturesForEthereumCalled func() + CheckKCClientAvailabilityCalled func(ctx context.Context) error + CheckEthereumClientAvailabilityCalled func(ctx context.Context) error + CheckAvailableTokensCalled func(ctx context.Context, ethTokens []common.Address, kdaTokens [][]byte, amounts []*big.Int, direction batchProcessor.Direction) error } // NewBridgeExecutorStub creates a new BridgeExecutorStub instance @@ -85,20 +85,20 @@ func (stub *BridgeExecutorStub) MyTurnAsLeader() bool { return false } -// GetBatchFromMultiversX - -func (stub *BridgeExecutorStub) GetBatchFromMultiversX(ctx context.Context) (*bridgeCore.TransferBatch, error) { +// GetBatchFromKC - +func (stub *BridgeExecutorStub) GetBatchFromKC(ctx context.Context) (*bridgeCore.TransferBatch, error) { stub.incrementFunctionCounter() - if stub.GetBatchFromMultiversXCalled != nil { - return stub.GetBatchFromMultiversXCalled(ctx) + if stub.GetBatchFromKCCalled != nil { + return stub.GetBatchFromKCCalled(ctx) } return nil, notImplemented } -// StoreBatchFromMultiversX - -func (stub *BridgeExecutorStub) StoreBatchFromMultiversX(batch *bridgeCore.TransferBatch) error { +// StoreBatchFromKC - +func (stub *BridgeExecutorStub) StoreBatchFromKC(batch *bridgeCore.TransferBatch) error { stub.incrementFunctionCounter() - if stub.StoreBatchFromMultiversXCalled != nil { - return stub.StoreBatchFromMultiversXCalled(batch) + if stub.StoreBatchFromKCCalled != nil { + return stub.StoreBatchFromKCCalled(batch) } return notImplemented } @@ -112,11 +112,11 @@ func (stub *BridgeExecutorStub) GetStoredBatch() *bridgeCore.TransferBatch { return nil } -// GetLastExecutedEthBatchIDFromMultiversX - -func (stub *BridgeExecutorStub) GetLastExecutedEthBatchIDFromMultiversX(ctx context.Context) (uint64, error) { +// GetLastExecutedEthBatchIDFromKC - +func (stub *BridgeExecutorStub) GetLastExecutedEthBatchIDFromKC(ctx context.Context) (uint64, error) { stub.incrementFunctionCounter() - if stub.GetLastExecutedEthBatchIDFromMultiversXCalled != nil { - return stub.GetLastExecutedEthBatchIDFromMultiversXCalled(ctx) + if stub.GetLastExecutedEthBatchIDFromKCCalled != nil { + return stub.GetLastExecutedEthBatchIDFromKCCalled(ctx) } return 0, notImplemented } @@ -130,20 +130,20 @@ func (stub *BridgeExecutorStub) VerifyLastDepositNonceExecutedOnEthereumBatch(ct return notImplemented } -// GetAndStoreActionIDForProposeTransferOnMultiversX - -func (stub *BridgeExecutorStub) GetAndStoreActionIDForProposeTransferOnMultiversX(ctx context.Context) (uint64, error) { +// GetAndStoreActionIDForProposeTransferOnKC - +func (stub *BridgeExecutorStub) GetAndStoreActionIDForProposeTransferOnKC(ctx context.Context) (uint64, error) { stub.incrementFunctionCounter() - if stub.GetAndStoreActionIDForProposeTransferOnMultiversXCalled != nil { - return stub.GetAndStoreActionIDForProposeTransferOnMultiversXCalled(ctx) + if stub.GetAndStoreActionIDForProposeTransferOnKCCalled != nil { + return stub.GetAndStoreActionIDForProposeTransferOnKCCalled(ctx) } return 0, notImplemented } -// GetAndStoreActionIDForProposeSetStatusFromMultiversX - -func (stub *BridgeExecutorStub) GetAndStoreActionIDForProposeSetStatusFromMultiversX(ctx context.Context) (uint64, error) { +// GetAndStoreActionIDForProposeSetStatusFromKC - +func (stub *BridgeExecutorStub) GetAndStoreActionIDForProposeSetStatusFromKC(ctx context.Context) (uint64, error) { stub.incrementFunctionCounter() - if stub.GetAndStoreActionIDForProposeSetStatusFromMultiversXCalled != nil { - return stub.GetAndStoreActionIDForProposeSetStatusFromMultiversXCalled(ctx) + if stub.GetAndStoreActionIDForProposeSetStatusFromKCCalled != nil { + return stub.GetAndStoreActionIDForProposeSetStatusFromKCCalled(ctx) } return 0, notImplemented } @@ -157,100 +157,100 @@ func (stub *BridgeExecutorStub) GetStoredActionID() uint64 { return 0 } -// WasTransferProposedOnMultiversX - -func (stub *BridgeExecutorStub) WasTransferProposedOnMultiversX(ctx context.Context) (bool, error) { +// WasTransferProposedOnKC - +func (stub *BridgeExecutorStub) WasTransferProposedOnKC(ctx context.Context) (bool, error) { stub.incrementFunctionCounter() - if stub.WasTransferProposedOnMultiversXCalled != nil { - return stub.WasTransferProposedOnMultiversXCalled(ctx) + if stub.WasTransferProposedOnKCCalled != nil { + return stub.WasTransferProposedOnKCCalled(ctx) } return false, notImplemented } -// ProposeTransferOnMultiversX - -func (stub *BridgeExecutorStub) ProposeTransferOnMultiversX(ctx context.Context) error { +// ProposeTransferOnKC - +func (stub *BridgeExecutorStub) ProposeTransferOnKC(ctx context.Context) error { stub.incrementFunctionCounter() - if stub.ProposeTransferOnMultiversXCalled != nil { - return stub.ProposeTransferOnMultiversXCalled(ctx) + if stub.ProposeTransferOnKCCalled != nil { + return stub.ProposeTransferOnKCCalled(ctx) } return notImplemented } -// ProcessMaxRetriesOnWasTransferProposedOnMultiversX - -func (stub *BridgeExecutorStub) ProcessMaxRetriesOnWasTransferProposedOnMultiversX() bool { +// ProcessMaxRetriesOnWasTransferProposedOnKC - +func (stub *BridgeExecutorStub) ProcessMaxRetriesOnWasTransferProposedOnKC() bool { stub.incrementFunctionCounter() - if stub.ProcessMaxRetriesOnWasTransferProposedOnMultiversXCalled != nil { - return stub.ProcessMaxRetriesOnWasTransferProposedOnMultiversXCalled() + if stub.ProcessMaxRetriesOnWasTransferProposedOnKCCalled != nil { + return stub.ProcessMaxRetriesOnWasTransferProposedOnKCCalled() } return false } -// ResetRetriesOnWasTransferProposedOnMultiversX - -func (stub *BridgeExecutorStub) ResetRetriesOnWasTransferProposedOnMultiversX() { +// ResetRetriesOnWasTransferProposedOnKC - +func (stub *BridgeExecutorStub) ResetRetriesOnWasTransferProposedOnKC() { stub.incrementFunctionCounter() - if stub.ResetRetriesOnWasTransferProposedOnMultiversXCalled != nil { - stub.ResetRetriesOnWasTransferProposedOnMultiversXCalled() + if stub.ResetRetriesOnWasTransferProposedOnKCCalled != nil { + stub.ResetRetriesOnWasTransferProposedOnKCCalled() } } -// WasSetStatusProposedOnMultiversX - -func (stub *BridgeExecutorStub) WasSetStatusProposedOnMultiversX(ctx context.Context) (bool, error) { +// WasSetStatusProposedOnKC - +func (stub *BridgeExecutorStub) WasSetStatusProposedOnKC(ctx context.Context) (bool, error) { stub.incrementFunctionCounter() - if stub.WasSetStatusProposedOnMultiversXCalled != nil { - return stub.WasSetStatusProposedOnMultiversXCalled(ctx) + if stub.WasSetStatusProposedOnKCCalled != nil { + return stub.WasSetStatusProposedOnKCCalled(ctx) } return false, notImplemented } -// ProposeSetStatusOnMultiversX - -func (stub *BridgeExecutorStub) ProposeSetStatusOnMultiversX(ctx context.Context) error { +// ProposeSetStatusOnKC - +func (stub *BridgeExecutorStub) ProposeSetStatusOnKC(ctx context.Context) error { stub.incrementFunctionCounter() - if stub.ProposeSetStatusOnMultiversXCalled != nil { - return stub.ProposeSetStatusOnMultiversXCalled(ctx) + if stub.ProposeSetStatusOnKCCalled != nil { + return stub.ProposeSetStatusOnKCCalled(ctx) } return notImplemented } -// WasActionSignedOnMultiversX - -func (stub *BridgeExecutorStub) WasActionSignedOnMultiversX(ctx context.Context) (bool, error) { +// WasActionSignedOnKC - +func (stub *BridgeExecutorStub) WasActionSignedOnKC(ctx context.Context) (bool, error) { stub.incrementFunctionCounter() - if stub.WasActionSignedOnMultiversXCalled != nil { - return stub.WasActionSignedOnMultiversXCalled(ctx) + if stub.WasActionSignedOnKCCalled != nil { + return stub.WasActionSignedOnKCCalled(ctx) } return false, notImplemented } -// SignActionOnMultiversX - -func (stub *BridgeExecutorStub) SignActionOnMultiversX(ctx context.Context) error { +// SignActionOnKC - +func (stub *BridgeExecutorStub) SignActionOnKC(ctx context.Context) error { stub.incrementFunctionCounter() - if stub.SignActionOnMultiversXCalled != nil { - return stub.SignActionOnMultiversXCalled(ctx) + if stub.SignActionOnKCCalled != nil { + return stub.SignActionOnKCCalled(ctx) } return notImplemented } -// ProcessQuorumReachedOnMultiversX - -func (stub *BridgeExecutorStub) ProcessQuorumReachedOnMultiversX(ctx context.Context) (bool, error) { +// ProcessQuorumReachedOnKC - +func (stub *BridgeExecutorStub) ProcessQuorumReachedOnKC(ctx context.Context) (bool, error) { stub.incrementFunctionCounter() - if stub.ProcessQuorumReachedOnMultiversXCalled != nil { - return stub.ProcessQuorumReachedOnMultiversXCalled(ctx) + if stub.ProcessQuorumReachedOnKCCalled != nil { + return stub.ProcessQuorumReachedOnKCCalled(ctx) } return false, notImplemented } -// WasActionPerformedOnMultiversX - -func (stub *BridgeExecutorStub) WasActionPerformedOnMultiversX(ctx context.Context) (bool, error) { +// WasActionPerformedOnKC - +func (stub *BridgeExecutorStub) WasActionPerformedOnKC(ctx context.Context) (bool, error) { stub.incrementFunctionCounter() - if stub.WasActionPerformedOnMultiversXCalled != nil { - return stub.WasActionPerformedOnMultiversXCalled(ctx) + if stub.WasActionPerformedOnKCCalled != nil { + return stub.WasActionPerformedOnKCCalled(ctx) } return false, notImplemented } -// PerformActionOnMultiversX - -func (stub *BridgeExecutorStub) PerformActionOnMultiversX(ctx context.Context) error { +// PerformActionOnKC - +func (stub *BridgeExecutorStub) PerformActionOnKC(ctx context.Context) error { stub.incrementFunctionCounter() - if stub.PerformActionOnMultiversXCalled != nil { - return stub.PerformActionOnMultiversXCalled(ctx) + if stub.PerformActionOnKCCalled != nil { + return stub.PerformActionOnKCCalled(ctx) } return notImplemented } @@ -263,20 +263,20 @@ func (stub *BridgeExecutorStub) ResolveNewDepositsStatuses(numDeposits uint64) { } } -// ProcessMaxQuorumRetriesOnMultiversX - -func (stub *BridgeExecutorStub) ProcessMaxQuorumRetriesOnMultiversX() bool { +// ProcessMaxQuorumRetriesOnKC - +func (stub *BridgeExecutorStub) ProcessMaxQuorumRetriesOnKC() bool { stub.incrementFunctionCounter() - if stub.ProcessMaxQuorumRetriesOnMultiversXCalled != nil { - return stub.ProcessMaxQuorumRetriesOnMultiversXCalled() + if stub.ProcessMaxQuorumRetriesOnKCCalled != nil { + return stub.ProcessMaxQuorumRetriesOnKCCalled() } return false } -// ResetRetriesCountOnMultiversX - -func (stub *BridgeExecutorStub) ResetRetriesCountOnMultiversX() { +// ResetRetriesCountOnKC - +func (stub *BridgeExecutorStub) ResetRetriesCountOnKC() { stub.incrementFunctionCounter() - if stub.ResetRetriesCountOnMultiversXCalled != nil { - stub.ResetRetriesCountOnMultiversXCalled() + if stub.ResetRetriesCountOnKCCalled != nil { + stub.ResetRetriesCountOnKCCalled() } } @@ -376,10 +376,10 @@ func (stub *BridgeExecutorStub) ClearStoredP2PSignaturesForEthereum() { } } -// CheckMultiversXClientAvailability - -func (stub *BridgeExecutorStub) CheckMultiversXClientAvailability(ctx context.Context) error { - if stub.CheckMultiversXClientAvailabilityCalled != nil { - return stub.CheckMultiversXClientAvailabilityCalled(ctx) +// CheckKCClientAvailability - +func (stub *BridgeExecutorStub) CheckKCClientAvailability(ctx context.Context) error { + if stub.CheckKCClientAvailabilityCalled != nil { + return stub.CheckKCClientAvailabilityCalled(ctx) } return notImplemented } @@ -418,9 +418,9 @@ func (stub *BridgeExecutorStub) GetFunctionCounter(function string) int { } // CheckAvailableTokens - -func (stub *BridgeExecutorStub) CheckAvailableTokens(ctx context.Context, ethTokens []common.Address, mvxTokens [][]byte, amounts []*big.Int, direction batchProcessor.Direction) error { +func (stub *BridgeExecutorStub) CheckAvailableTokens(ctx context.Context, ethTokens []common.Address, kdaTokens [][]byte, amounts []*big.Int, direction batchProcessor.Direction) error { if stub.CheckAvailableTokensCalled != nil { - return stub.CheckAvailableTokensCalled(ctx, ethTokens, mvxTokens, amounts, direction) + return stub.CheckAvailableTokensCalled(ctx, ethTokens, kdaTokens, amounts, direction) } return nil diff --git a/testsCommon/bridge/multiversxClientStub.go b/testsCommon/bridge/kcClientStub.go similarity index 68% rename from testsCommon/bridge/multiversxClientStub.go rename to testsCommon/bridge/kcClientStub.go index bec63412..5a816512 100644 --- a/testsCommon/bridge/multiversxClientStub.go +++ b/testsCommon/bridge/kcClientStub.go @@ -10,8 +10,8 @@ import ( var errNotImplemented = errors.New("not implemented") -// MultiversXClientStub - -type MultiversXClientStub struct { +// KCClientStub - +type KCClientStub struct { GetPendingBatchCalled func(ctx context.Context) (*bridgeCore.TransferBatch, error) GetBatchCalled func(ctx context.Context, batchID uint64) (*bridgeCore.TransferBatch, error) GetCurrentBatchAsDataBytesCalled func(ctx context.Context) ([][]byte, error) @@ -38,12 +38,12 @@ type MultiversXClientStub struct { MintBalancesCalled func(ctx context.Context, token []byte) (*big.Int, error) BurnBalancesCalled func(ctx context.Context, token []byte) (*big.Int, error) CheckRequiredBalanceCalled func(ctx context.Context, token []byte, value *big.Int) error - GetLastMvxBatchIDCalled func(ctx context.Context) (uint64, error) + GetLastKCBatchIDCalled func(ctx context.Context) (uint64, error) CloseCalled func() error } // GetPendingBatch - -func (stub *MultiversXClientStub) GetPendingBatch(ctx context.Context) (*bridgeCore.TransferBatch, error) { +func (stub *KCClientStub) GetPendingBatch(ctx context.Context) (*bridgeCore.TransferBatch, error) { if stub.GetPendingBatchCalled != nil { return stub.GetPendingBatchCalled(ctx) } @@ -52,7 +52,7 @@ func (stub *MultiversXClientStub) GetPendingBatch(ctx context.Context) (*bridgeC } // GetBatch - -func (stub *MultiversXClientStub) GetBatch(ctx context.Context, batchID uint64) (*bridgeCore.TransferBatch, error) { +func (stub *KCClientStub) GetBatch(ctx context.Context, batchID uint64) (*bridgeCore.TransferBatch, error) { if stub.GetBatchCalled != nil { return stub.GetBatchCalled(ctx, batchID) } @@ -61,7 +61,7 @@ func (stub *MultiversXClientStub) GetBatch(ctx context.Context, batchID uint64) } // GetCurrentBatchAsDataBytes - -func (stub *MultiversXClientStub) GetCurrentBatchAsDataBytes(ctx context.Context) ([][]byte, error) { +func (stub *KCClientStub) GetCurrentBatchAsDataBytes(ctx context.Context) ([][]byte, error) { if stub.GetCurrentBatchAsDataBytesCalled != nil { return stub.GetCurrentBatchAsDataBytesCalled(ctx) } @@ -70,7 +70,7 @@ func (stub *MultiversXClientStub) GetCurrentBatchAsDataBytes(ctx context.Context } // WasProposedTransfer - -func (stub *MultiversXClientStub) WasProposedTransfer(ctx context.Context, batch *bridgeCore.TransferBatch) (bool, error) { +func (stub *KCClientStub) WasProposedTransfer(ctx context.Context, batch *bridgeCore.TransferBatch) (bool, error) { if stub.WasProposedTransferCalled != nil { return stub.WasProposedTransferCalled(ctx, batch) } @@ -79,7 +79,7 @@ func (stub *MultiversXClientStub) WasProposedTransfer(ctx context.Context, batch } // QuorumReached - -func (stub *MultiversXClientStub) QuorumReached(ctx context.Context, actionID uint64) (bool, error) { +func (stub *KCClientStub) QuorumReached(ctx context.Context, actionID uint64) (bool, error) { if stub.QuorumReachedCalled != nil { return stub.QuorumReachedCalled(ctx, actionID) } @@ -88,7 +88,7 @@ func (stub *MultiversXClientStub) QuorumReached(ctx context.Context, actionID ui } // WasExecuted - -func (stub *MultiversXClientStub) WasExecuted(ctx context.Context, actionID uint64) (bool, error) { +func (stub *KCClientStub) WasExecuted(ctx context.Context, actionID uint64) (bool, error) { if stub.WasExecutedCalled != nil { return stub.WasExecutedCalled(ctx, actionID) } @@ -97,7 +97,7 @@ func (stub *MultiversXClientStub) WasExecuted(ctx context.Context, actionID uint } // GetActionIDForProposeTransfer - -func (stub *MultiversXClientStub) GetActionIDForProposeTransfer(ctx context.Context, batch *bridgeCore.TransferBatch) (uint64, error) { +func (stub *KCClientStub) GetActionIDForProposeTransfer(ctx context.Context, batch *bridgeCore.TransferBatch) (uint64, error) { if stub.GetActionIDForProposeTransferCalled != nil { return stub.GetActionIDForProposeTransferCalled(ctx, batch) } @@ -106,7 +106,7 @@ func (stub *MultiversXClientStub) GetActionIDForProposeTransfer(ctx context.Cont } // WasProposedSetStatus - -func (stub *MultiversXClientStub) WasProposedSetStatus(ctx context.Context, batch *bridgeCore.TransferBatch) (bool, error) { +func (stub *KCClientStub) WasProposedSetStatus(ctx context.Context, batch *bridgeCore.TransferBatch) (bool, error) { if stub.WasProposedSetStatusCalled != nil { return stub.WasProposedSetStatusCalled(ctx, batch) } @@ -115,7 +115,7 @@ func (stub *MultiversXClientStub) WasProposedSetStatus(ctx context.Context, batc } // GetTransactionsStatuses - -func (stub *MultiversXClientStub) GetTransactionsStatuses(ctx context.Context, batchID uint64) ([]byte, error) { +func (stub *KCClientStub) GetTransactionsStatuses(ctx context.Context, batchID uint64) ([]byte, error) { if stub.GetTransactionsStatusesCalled != nil { return stub.GetTransactionsStatusesCalled(ctx, batchID) } @@ -124,7 +124,7 @@ func (stub *MultiversXClientStub) GetTransactionsStatuses(ctx context.Context, b } // GetActionIDForSetStatusOnPendingTransfer - -func (stub *MultiversXClientStub) GetActionIDForSetStatusOnPendingTransfer(ctx context.Context, batch *bridgeCore.TransferBatch) (uint64, error) { +func (stub *KCClientStub) GetActionIDForSetStatusOnPendingTransfer(ctx context.Context, batch *bridgeCore.TransferBatch) (uint64, error) { if stub.GetActionIDForSetStatusOnPendingTransferCalled != nil { return stub.GetActionIDForSetStatusOnPendingTransferCalled(ctx, batch) } @@ -133,7 +133,7 @@ func (stub *MultiversXClientStub) GetActionIDForSetStatusOnPendingTransfer(ctx c } // GetLastExecutedEthBatchID - -func (stub *MultiversXClientStub) GetLastExecutedEthBatchID(ctx context.Context) (uint64, error) { +func (stub *KCClientStub) GetLastExecutedEthBatchID(ctx context.Context) (uint64, error) { if stub.GetLastExecutedEthBatchIDCalled != nil { return stub.GetLastExecutedEthBatchIDCalled(ctx) } @@ -142,7 +142,7 @@ func (stub *MultiversXClientStub) GetLastExecutedEthBatchID(ctx context.Context) } // GetLastExecutedEthTxID - -func (stub *MultiversXClientStub) GetLastExecutedEthTxID(ctx context.Context) (uint64, error) { +func (stub *KCClientStub) GetLastExecutedEthTxID(ctx context.Context) (uint64, error) { if stub.GetLastExecutedEthTxIDCalled != nil { return stub.GetLastExecutedEthTxIDCalled(ctx) } @@ -151,7 +151,7 @@ func (stub *MultiversXClientStub) GetLastExecutedEthTxID(ctx context.Context) (u } // GetCurrentNonce - -func (stub *MultiversXClientStub) GetCurrentNonce(ctx context.Context) (uint64, error) { +func (stub *KCClientStub) GetCurrentNonce(ctx context.Context) (uint64, error) { if stub.GetCurrentNonceCalled != nil { return stub.GetCurrentNonceCalled(ctx) } @@ -160,7 +160,7 @@ func (stub *MultiversXClientStub) GetCurrentNonce(ctx context.Context) (uint64, } // ProposeSetStatus - -func (stub *MultiversXClientStub) ProposeSetStatus(ctx context.Context, batch *bridgeCore.TransferBatch) (string, error) { +func (stub *KCClientStub) ProposeSetStatus(ctx context.Context, batch *bridgeCore.TransferBatch) (string, error) { if stub.ProposeSetStatusCalled != nil { return stub.ProposeSetStatusCalled(ctx, batch) } @@ -169,7 +169,7 @@ func (stub *MultiversXClientStub) ProposeSetStatus(ctx context.Context, batch *b } // ProposeTransfer - -func (stub *MultiversXClientStub) ProposeTransfer(ctx context.Context, batch *bridgeCore.TransferBatch) (string, error) { +func (stub *KCClientStub) ProposeTransfer(ctx context.Context, batch *bridgeCore.TransferBatch) (string, error) { if stub.ProposeTransferCalled != nil { return stub.ProposeTransferCalled(ctx, batch) } @@ -178,7 +178,7 @@ func (stub *MultiversXClientStub) ProposeTransfer(ctx context.Context, batch *br } // Sign - -func (stub *MultiversXClientStub) Sign(ctx context.Context, actionID uint64) (string, error) { +func (stub *KCClientStub) Sign(ctx context.Context, actionID uint64) (string, error) { if stub.SignCalled != nil { return stub.SignCalled(ctx, actionID) } @@ -187,7 +187,7 @@ func (stub *MultiversXClientStub) Sign(ctx context.Context, actionID uint64) (st } // WasSigned - -func (stub *MultiversXClientStub) WasSigned(ctx context.Context, actionID uint64) (bool, error) { +func (stub *KCClientStub) WasSigned(ctx context.Context, actionID uint64) (bool, error) { if stub.WasSignedCalled != nil { return stub.WasSignedCalled(ctx, actionID) } @@ -196,7 +196,7 @@ func (stub *MultiversXClientStub) WasSigned(ctx context.Context, actionID uint64 } // PerformAction - -func (stub *MultiversXClientStub) PerformAction(ctx context.Context, actionID uint64, batch *bridgeCore.TransferBatch) (string, error) { +func (stub *KCClientStub) PerformAction(ctx context.Context, actionID uint64, batch *bridgeCore.TransferBatch) (string, error) { if stub.PerformActionCalled != nil { return stub.PerformActionCalled(ctx, actionID, batch) } @@ -205,7 +205,7 @@ func (stub *MultiversXClientStub) PerformAction(ctx context.Context, actionID ui } // CheckClientAvailability - -func (stub *MultiversXClientStub) CheckClientAvailability(ctx context.Context) error { +func (stub *KCClientStub) CheckClientAvailability(ctx context.Context) error { if stub.CheckClientAvailabilityCalled != nil { return stub.CheckClientAvailabilityCalled(ctx) } @@ -214,7 +214,7 @@ func (stub *MultiversXClientStub) CheckClientAvailability(ctx context.Context) e } // IsMintBurnToken - -func (stub *MultiversXClientStub) IsMintBurnToken(ctx context.Context, token []byte) (bool, error) { +func (stub *KCClientStub) IsMintBurnToken(ctx context.Context, token []byte) (bool, error) { if stub.IsMintBurnTokenCalled != nil { return stub.IsMintBurnTokenCalled(ctx, token) } @@ -222,7 +222,7 @@ func (stub *MultiversXClientStub) IsMintBurnToken(ctx context.Context, token []b } // IsNativeToken - -func (stub *MultiversXClientStub) IsNativeToken(ctx context.Context, token []byte) (bool, error) { +func (stub *KCClientStub) IsNativeToken(ctx context.Context, token []byte) (bool, error) { if stub.IsNativeTokenCalled != nil { return stub.IsNativeTokenCalled(ctx, token) } @@ -230,7 +230,7 @@ func (stub *MultiversXClientStub) IsNativeToken(ctx context.Context, token []byt } // TotalBalances - -func (stub *MultiversXClientStub) TotalBalances(ctx context.Context, token []byte) (*big.Int, error) { +func (stub *KCClientStub) TotalBalances(ctx context.Context, token []byte) (*big.Int, error) { if stub.TotalBalancesCalled != nil { return stub.TotalBalancesCalled(ctx, token) } @@ -238,7 +238,7 @@ func (stub *MultiversXClientStub) TotalBalances(ctx context.Context, token []byt } // MintBalances - -func (stub *MultiversXClientStub) MintBalances(ctx context.Context, token []byte) (*big.Int, error) { +func (stub *KCClientStub) MintBalances(ctx context.Context, token []byte) (*big.Int, error) { if stub.MintBalancesCalled != nil { return stub.MintBalancesCalled(ctx, token) } @@ -246,7 +246,7 @@ func (stub *MultiversXClientStub) MintBalances(ctx context.Context, token []byte } // BurnBalances - -func (stub *MultiversXClientStub) BurnBalances(ctx context.Context, token []byte) (*big.Int, error) { +func (stub *KCClientStub) BurnBalances(ctx context.Context, token []byte) (*big.Int, error) { if stub.BurnBalancesCalled != nil { return stub.BurnBalancesCalled(ctx, token) } @@ -254,24 +254,24 @@ func (stub *MultiversXClientStub) BurnBalances(ctx context.Context, token []byte } // CheckRequiredBalance - -func (stub *MultiversXClientStub) CheckRequiredBalance(ctx context.Context, token []byte, value *big.Int) error { +func (stub *KCClientStub) CheckRequiredBalance(ctx context.Context, token []byte, value *big.Int) error { if stub.CheckRequiredBalanceCalled != nil { return stub.CheckRequiredBalanceCalled(ctx, token, value) } return nil } -// GetLastMvxBatchID - -func (stub *MultiversXClientStub) GetLastMvxBatchID(ctx context.Context) (uint64, error) { - if stub.GetLastMvxBatchIDCalled != nil { - return stub.GetLastMvxBatchIDCalled(ctx) +// GetLastKCBatchID - +func (stub *KCClientStub) GetLastKCBatchID(ctx context.Context) (uint64, error) { + if stub.GetLastKCBatchIDCalled != nil { + return stub.GetLastKCBatchIDCalled(ctx) } return 0, nil } // Close - -func (stub *MultiversXClientStub) Close() error { +func (stub *KCClientStub) Close() error { if stub.CloseCalled != nil { return stub.CloseCalled() } @@ -280,6 +280,6 @@ func (stub *MultiversXClientStub) Close() error { } // IsInterfaceNil - -func (stub *MultiversXClientStub) IsInterfaceNil() bool { +func (stub *KCClientStub) IsInterfaceNil() bool { return stub == nil } diff --git a/testsCommon/multiversxCodecStub.go b/testsCommon/kcCodecStub.go similarity index 66% rename from testsCommon/multiversxCodecStub.go rename to testsCommon/kcCodecStub.go index eb9e89de..96c0747d 100644 --- a/testsCommon/multiversxCodecStub.go +++ b/testsCommon/kcCodecStub.go @@ -2,14 +2,14 @@ package testsCommon import "github.com/klever-io/klv-bridge-eth-go/parsers" -// MultiversxCodecStub - -type MultiversxCodecStub struct { +// KCCodecStub - +type KCCodecStub struct { DecodeProxySCCompleteCallDataCalled func(buff []byte) (parsers.ProxySCCompleteCallData, error) ExtractGasLimitFromRawCallDataCalled func(buff []byte) (uint64, error) } // DecodeProxySCCompleteCallData - -func (stub *MultiversxCodecStub) DecodeProxySCCompleteCallData(buff []byte) (parsers.ProxySCCompleteCallData, error) { +func (stub *KCCodecStub) DecodeProxySCCompleteCallData(buff []byte) (parsers.ProxySCCompleteCallData, error) { if stub.DecodeProxySCCompleteCallDataCalled != nil { return stub.DecodeProxySCCompleteCallDataCalled(buff) } @@ -18,7 +18,7 @@ func (stub *MultiversxCodecStub) DecodeProxySCCompleteCallData(buff []byte) (par } // ExtractGasLimitFromRawCallData - -func (stub *MultiversxCodecStub) ExtractGasLimitFromRawCallData(buff []byte) (uint64, error) { +func (stub *KCCodecStub) ExtractGasLimitFromRawCallData(buff []byte) (uint64, error) { if stub.ExtractGasLimitFromRawCallDataCalled != nil { return stub.ExtractGasLimitFromRawCallDataCalled(buff) } @@ -27,6 +27,6 @@ func (stub *MultiversxCodecStub) ExtractGasLimitFromRawCallData(buff []byte) (ui } // IsInterfaceNil - -func (stub *MultiversxCodecStub) IsInterfaceNil() bool { +func (stub *KCCodecStub) IsInterfaceNil() bool { return stub == nil } diff --git a/testsCommon/roleProviders/multiversXRoleProviderStub.go b/testsCommon/roleProviders/kcRoleProviderStub.go similarity index 94% rename from testsCommon/roleProviders/multiversXRoleProviderStub.go rename to testsCommon/roleProviders/kcRoleProviderStub.go index 6684468b..69c456bf 100644 --- a/testsCommon/roleProviders/multiversXRoleProviderStub.go +++ b/testsCommon/roleProviders/kcRoleProviderStub.go @@ -4,7 +4,7 @@ import ( "github.com/klever-io/klv-bridge-eth-go/clients/klever/blockchain/address" ) -// MultiversXRoleProviderStub - +// KleverRoleProviderStub - type KleverRoleProviderStub struct { IsWhitelistedCalled func(address address.Address) bool } diff --git a/testsCommon/testMultiversxCodec.go b/testsCommon/testKcCodec.go similarity index 90% rename from testsCommon/testMultiversxCodec.go rename to testsCommon/testKcCodec.go index 1dbb432d..373d1791 100644 --- a/testsCommon/testMultiversxCodec.go +++ b/testsCommon/testKcCodec.go @@ -8,12 +8,12 @@ import ( "github.com/klever-io/klv-bridge-eth-go/parsers" ) -// TestMultiversXCodec is the codec helper used in testing -type TestMultiversXCodec struct { +// TestKCCodec is the codec helper used in testing +type TestKCCodec struct { } // EncodeCallDataWithLenAndMarker will provide a valid data byte slice with encoded call data parameters along with the length and marker -func (codec *TestMultiversXCodec) EncodeCallDataWithLenAndMarker(callData parsers.CallData) []byte { +func (codec *TestKCCodec) EncodeCallDataWithLenAndMarker(callData parsers.CallData) []byte { initialAlloc := 1024 * 1024 // 1MB initial buffer result := make([]byte, 0, initialAlloc) buff32Bits := make([]byte, 4) @@ -30,7 +30,7 @@ func (codec *TestMultiversXCodec) EncodeCallDataWithLenAndMarker(callData parser } // EncodeCallDataStrict will encode just the provided call data. No length or marker will be added -func (codec *TestMultiversXCodec) EncodeCallDataStrict(callData parsers.CallData) []byte { +func (codec *TestKCCodec) EncodeCallDataStrict(callData parsers.CallData) []byte { initialAlloc := 1024 * 1024 // 1MB initial buffer result := make([]byte, 0, initialAlloc) @@ -60,7 +60,7 @@ func (codec *TestMultiversXCodec) EncodeCallDataStrict(callData parsers.CallData return result } -func (codec *TestMultiversXCodec) encodeArgs(args []string) []byte { +func (codec *TestKCCodec) encodeArgs(args []string) []byte { buff32Bits := make([]byte, 4) initialAlloc := 1024 * 1024 // 1MB initial buffer @@ -80,7 +80,7 @@ func (codec *TestMultiversXCodec) encodeArgs(args []string) []byte { } // DecodeCallData will try to decode the provided bytes into a CallData struct -func (codec *TestMultiversXCodec) DecodeCallData(buff []byte) parsers.CallData { +func (codec *TestKCCodec) DecodeCallData(buff []byte) parsers.CallData { if len(buff) == 0 { panic("empty buffer") }