private async Task FetchSessionsAsync() { var retries = 0; const int maxRetries = 30; const int delay = 2000; ConsumerSessionForRpc session = null; while (session is null && retries < maxRetries) { Log("* Fetching active sessions *"); var sessions = await ExecuteAsync <ConsumerSessionForRpc[]>("ndm_getActiveConsumerSessions"); session = sessions?.FirstOrDefault(); if (session is {})
private static void VerifyConsumerSession(ConsumerSessionForRpc session) { session.Id.Should().Be(Keccak.Zero); session.DepositId.Should().Be(TestItem.KeccakA); session.DataAssetId.Should().Be(TestItem.KeccakB); session.ConsumerAddress.Should().Be(TestItem.AddressA); session.ConsumerNodeId.Should().Be(TestItem.PublicKeyA); session.ProviderAddress.Should().Be(TestItem.AddressB); session.ProviderNodeId.Should().Be(TestItem.PublicKeyB); session.State.Should().Be(SessionState.Started.ToString().ToLowerInvariant()); session.StartUnitsFromConsumer.Should().Be(0); session.StartUnitsFromProvider.Should().Be(0); session.StartTimestamp.Should().Be(0); session.FinishTimestamp.Should().Be(0); session.ConsumedUnits.Should().Be(0); session.UnpaidUnits.Should().Be(0); session.PaidUnits.Should().Be(0); session.SettledUnits.Should().Be(0); session.ConsumedUnitsFromProvider.Should().Be(0); session.DataAvailability.Should().Be(DataAvailability.Available.ToString().ToLowerInvariant()); }