-
Notifications
You must be signed in to change notification settings - Fork 35
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Test fixture that starts one Go node added. Configuration option to disable mining on Go node added. Configuration option to enable mining on Scala node converted to the option that disables mining on it. Existing tests changed accordingly. * Genesis and key-block snapshot hashes generation added. Messages sequence implemented. Score calculation added. * Added config options to configure preactivated featuers and absence period. * Fix genesis block snapshot hash calculation. Added delay before sending key-block. * Test refactoring. * Linter issues fixed. * Rename test suite. * Better function naming. Constant extracted. * TaskGroup goroutine manager added in pkg/execution package. Tests on TaskGroup added. * Networking package with a new connection handler Session added. * Logger interface removed from networking package. Standard slog package is used instead. * WIP. Simple connection replaced with NetClient. NetClient usage moved into Universal client. Handshake proto updated to compatibility with Handshake interface from networking package. * Fixed NetClient closing issue. Configuration option to set KeepAliveInterval added to networking.Config. * Redundant log removed. * Move save int conversion to safecast lib. * Accidentially added files removed. * Fixed handshake issue for the single node test suite. * Fix data race error in 'networking_test' package Implement 'io.Stringer' for 'Session' struct. Data race happens because 'clientHandler' mock in 'TestSessionTimeoutOnHandshake' test reads 'Session' structure at the same time as 'clientSession.Close' call. * Refactofing of test containers shutdown. Explicit test containers removal. Quorum incrased to 2 for itest nodes because of constant test network connection. Level of Session logging set to INFO for itests. * Paralles start and shutdown of test nodes implemented. * Add parallelizm to some Docker functions. * Support native itest container building for Gowaves node. * Fix linter issues. * Replace atomic.Uint32 with atomic.Bool and use CompareAndSwap there it's possible. Replace random delay with constan to make test not blink. Simplify assertion in test to make it stable. * Assertions added. Style fixed. * Simplified closing and close logic in NetClient. Added logs on handshake rejection to clarify the reason of rejections. Added and used function to configure Session with list of Slog attributes. * Prepare for new timer in Go 1.23 Co-authored-by: Nikolay Eskov <[email protected]> * Move constant into function were it used. Proper error declaration. * Better way to prevent from running multiple receiveLoops. Shutdown lock replaced with sync.Once. * Better data emptyness checks. * Better read error handling. Co-authored-by: Nikolay Eskov <[email protected]> * Use constructor. * Wrap heavy logging into log level checks. Fix data lock and data access order. * Session configuration accepts slog handler to set up logging. Discarding slog handler implemented and used instead of setting default slog logger. Checks on interval values added to Session constructor. * Close error channel on sending data successfully. Better error channel passing. Reset receiving buffer by deffering. * Better error handling while reading. Co-authored-by: Nikolay Eskov <[email protected]> * Fine error assertions. * Fix blinking test. * Better configuration handling. Co-authored-by: Nikolay Eskov <[email protected]> * Fixed blinking test TestCloseParentContext. Wait group added to wait for client to finish sending handshake. Better wait groups naming. * Better test workflow. Better wait group naming. * Fix deadlock in test by introducing wait group instead of sleep. * Function to disable IPv6 in itest docker containers added. Healthcheck instruction added to itest docker container. * Functions to subscribe and wait for network messages of specifed types added to itest network client. SimpleSnapshot test reimplemented using assertions for expected messages instead of sleeping for some time. * Better error messages. Close of handler's channel added. Unnecessary sleep removed. * Internal sendPacket reimplemented using io.Reader. Data restoration function removed. Handler's OnReceive use io.Reader to pass received data. Tests updated. Mocks regenerated. * Handler implementation updated. * Itest network client handler updated. * Fix multiple containers removal issue. --------- Co-authored-by: Nikolay Eskov <[email protected]>
- Loading branch information
1 parent
14ae6e5
commit 4001464
Showing
19 changed files
with
840 additions
and
238 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.