Skip to content
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

Complete NodeManager tests from decentralised nodes refactor #642

Closed
tegefaulkes opened this issue Dec 4, 2023 · 0 comments · Fixed by #655
Closed

Complete NodeManager tests from decentralised nodes refactor #642

tegefaulkes opened this issue Dec 4, 2023 · 0 comments · Fixed by #655
Assignees
Labels
development Standard development r&d:polykey:core activity 4 End to End Networking behind Consumer NAT Devices

Comments

@tegefaulkes
Copy link
Contributor

tegefaulkes commented Dec 4, 2023

Specification

In a rush to get #618 complete, we didn't finish or convert all the tests we wanted. Theses need to be completed but can be done along side manual integration testing with the testnet.

#618 (comment) contains a description of the tests that still need to be done. The tests already exist within the test files as test.todo()s.

Additional context

Tasks

    1. findNode operations handle offline nodes/connection failures. Make sure that a single failing connection wont take up the full timeout of the process.
    1. Network entry with syncNodeGraph, connects to 2 seed nodes and check we discover all active nodes in the network. Include active connection and direct connection links.
    1. network entry with syncNodegraph handles offline nodes - just checking if we can handle offline nodes for the initial connections. The other connections are done by findNode. Also check that including our own NodeId in the initial connections list wont break.
    1. refresh buckets - simple test, check that a scheduled refreshBucket triggers a findNode operation within that bucket. Not really worth the test.
    1. checking NodeGraph updates when a connection is made.
    1. test MDNS functionality. On that note, we need a way to disable it for testing so it doesn't break the findNode tests. Maybe just mock it out for most tests.
    1. bunch of tests for adding new nodes and the background pinging tasks.
    1. tests for signalling non-blocking and rate limiting logic.
@tegefaulkes tegefaulkes added the development Standard development label Dec 4, 2023
@tegefaulkes tegefaulkes mentioned this issue Dec 4, 2023
22 tasks
@tegefaulkes tegefaulkes self-assigned this Dec 14, 2023
@CMCDragonkai CMCDragonkai added the r&d:polykey:core activity 4 End to End Networking behind Consumer NAT Devices label Aug 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
development Standard development r&d:polykey:core activity 4 End to End Networking behind Consumer NAT Devices
Development

Successfully merging a pull request may close this issue.

2 participants