64 lines
1.6 KiB
C#
64 lines
1.6 KiB
C#
using DistTestCore;
|
|
using DistTestCore.Codex;
|
|
using DistTestCore.Helpers;
|
|
using NUnit.Framework;
|
|
using Utils;
|
|
|
|
namespace Tests.PeerDiscoveryTests
|
|
{
|
|
[TestFixture]
|
|
public class PeerDiscoveryTests : AutoBootstrapDistTest
|
|
{
|
|
[TestCase(2)]
|
|
[TestCase(3)]
|
|
[TestCase(10)]
|
|
public void VariableNodes(int number)
|
|
{
|
|
SetupCodexNodes(number);
|
|
|
|
AssertAllNodesConnected();
|
|
}
|
|
|
|
[TestCase(2)]
|
|
[TestCase(3)]
|
|
[TestCase(10)]
|
|
public void VariableNodesInPods(int number)
|
|
{
|
|
for (var i = 0; i < number; i++)
|
|
{
|
|
SetupCodexNode();
|
|
}
|
|
|
|
AssertAllNodesConnected();
|
|
}
|
|
|
|
[TestCase(3, 3)]
|
|
[TestCase(3, 5)]
|
|
[TestCase(3, 10)]
|
|
[TestCase(5, 10)]
|
|
[TestCase(3, 20)]
|
|
[TestCase(5, 20)]
|
|
public void StagedVariableNodes(int numberOfNodes, int numberOfStages)
|
|
{
|
|
for (var i = 0; i < numberOfStages; i++)
|
|
{
|
|
SetupCodexNodes(numberOfNodes, s => s.WithLogLevel(CodexLogLevel.Trace));
|
|
|
|
AssertAllNodesConnected();
|
|
}
|
|
|
|
for (int i = 0; i < 5; i++)
|
|
{
|
|
Time.Sleep(TimeSpan.FromSeconds(30));
|
|
AssertAllNodesConnected();
|
|
}
|
|
}
|
|
|
|
private void AssertAllNodesConnected()
|
|
{
|
|
PeerConnectionTestHelpers.AssertFullyConnected(GetAllOnlineCodexNodes());
|
|
PeerDownloadTestHelpers.AssertFullDownloadInterconnectivity(GetAllOnlineCodexNodes());
|
|
}
|
|
}
|
|
}
|