-
Notifications
You must be signed in to change notification settings - Fork 1.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[TT-1345] option to use predeployed contracts in OCR tests #13758
Conversation
Quality Gate passedIssues Measures |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If that is a new change/feature, and there is no info about this in README, it would be nice to update the later and explain how it works. Thanks.
2b5d0d4
to
09960cf
Compare
time.Sleep(2 * time.Second) | ||
} else { | ||
// Load contract wrappers | ||
for _, address := range ocrContractsConfig.OffChainAggregatorsContractsAddresses() { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Tofel, out of curiosity, why do we use an interface like OffChainAggregatorsConfig? Wouldn’t it be simpler to use config methods or fields directly?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have some logic underneath that returns empty array if contracts are disabled on some level. That way the caller doesn't have to know anything about that logic.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Tofel added few questions but overall lgtm
Please stop mentioning me in these tickets and spamming my notifications, thank you. |
87f10b9
…tractkit/chainlink into re-2964/goreleaser-ccip * 're-2964/goreleaser-ccip' of https://github.com/smartcontractkit/chainlink: Fix data race in TestLogPoller_Replay (#14431) Fix CCIP Load Test Faulty Fund Return (#14499) use tx in insertLogsWithinTx (#14361) Bring KMS client and multiclient over to chainlink (#14484) CCIP-3420: Fix IsRequestTriggeredWithinTimeframe (#1445) (#14498) [TT-1345] option to use predeployed contracts in OCR tests (#13758) CCIP-3428 Enabling ccip smoke test for testnet (#14452)
This PR adds the ability to use existing LINK token and OCRv1 / OCRv2 contracts in OCR soak/smoke & load tests. It allows to specify number of OCR contracts to deploy as well as deciding whether existing contracts should be use as-is or whether they should be configured.
This functionality is crucial for testing OCR on chains like zkSync, where we cannot deploy contracts using our testing code, but we can do it using other tools. Since interaction with zkSync contracts is possible using geth wrappers we can execute test logic there.
Tests executed:
New contract number configuration format:
In nutshell: previously we could configure number of contracts only for Soak tests, now we can configure it for ALL tests, because it's no longer tightly coupled to test type.