about summary refs log tree commit diff
path: root/Tests/TestDataGenerator/Bot/DataFetcher.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Tests/TestDataGenerator/Bot/DataFetcher.cs')
-rw-r--r--Tests/TestDataGenerator/Bot/DataFetcher.cs27
1 files changed, 9 insertions, 18 deletions
diff --git a/Tests/TestDataGenerator/Bot/DataFetcher.cs b/Tests/TestDataGenerator/Bot/DataFetcher.cs
index b1f8402..5e8c1a1 100644
--- a/Tests/TestDataGenerator/Bot/DataFetcher.cs
+++ b/Tests/TestDataGenerator/Bot/DataFetcher.cs
@@ -1,25 +1,17 @@
-using System.Text;
-using System.Threading.Channels;
 using ArcaneLibs.Extensions;
 using LibMatrix.EventTypes.Spec;
-using LibMatrix.EventTypes.Spec.State;
-using LibMatrix.Helpers;
 using LibMatrix.Homeservers;
-using LibMatrix.Interfaces;
 using LibMatrix.RoomTypes;
-using LibMatrix.Services;
-using LibMatrix.Tests;
 using LibMatrix.Utilities.Bot;
-using LibMatrix.Utilities.Bot.Interfaces;
 using Microsoft.Extensions.Hosting;
 using Microsoft.Extensions.Logging;
 
-namespace PluralContactBotPoC.Bot;
+#pragma warning disable CS1998 // Async method lacks 'await' operators and will run synchronously
 
-public class DataFetcher(AuthenticatedHomeserverGeneric hs, ILogger<DataFetcher> logger, LibMatrixBotConfiguration botConfiguration,
-    // DataFetcherConfiguration configuration,
-    HomeserverResolverService hsResolver) : IHostedService {
-    private Task _listenerTask;
+namespace TestDataGenerator.Bot;
+
+public class DataFetcher(AuthenticatedHomeserverGeneric hs, ILogger<DataFetcher> logger, LibMatrixBotConfiguration botConfiguration) : IHostedService {
+    private Task? _listenerTask;
 
     private GenericRoom? _logRoom;
 
@@ -32,7 +24,7 @@ public class DataFetcher(AuthenticatedHomeserverGeneric hs, ILogger<DataFetcher>
 
     private async Task Run(CancellationToken cancellationToken) {
         Directory.GetFiles("bot_data/cache").ToList().ForEach(File.Delete);
-        _logRoom = hs.GetRoom(botConfiguration.LogRoom);
+        _logRoom = hs.GetRoom(botConfiguration.LogRoom!);
 
         await _logRoom.SendMessageEventAsync(new RoomMessageEventContent(body: "Test data collector started!"));
         await _logRoom.SendMessageEventAsync(new RoomMessageEventContent(body: "Fetching rooms..."));
@@ -42,16 +34,14 @@ public class DataFetcher(AuthenticatedHomeserverGeneric hs, ILogger<DataFetcher>
 
         await _logRoom.SendMessageEventAsync(new RoomMessageEventContent(body: "Fetching room data..."));
 
-        Config cfg = new Config();
-
         var roomAliasTasks = rooms.Select(room => room.GetCanonicalAliasAsync()).ToAsyncEnumerable();
         List<Task<(string, string)>> aliasResolutionTasks = new();
         await foreach (var @event in roomAliasTasks) {
             if (@event?.Alias != null) {
                 await _logRoom.SendMessageEventAsync(new RoomMessageEventContent(body: $"Fetched room alias {(@event).Alias}!"));
-                aliasResolutionTasks.Add(Task<(string, string)>.Run(async () => {
+                aliasResolutionTasks.Add(Task.Run(async () => {
                     var alias = await hs.ResolveRoomAliasAsync(@event.Alias);
-                    return (@event.Alias, @alias.RoomId);
+                    return (@event.Alias, alias.RoomId);
                 }, cancellationToken));
             }
         }
@@ -65,5 +55,6 @@ public class DataFetcher(AuthenticatedHomeserverGeneric hs, ILogger<DataFetcher>
     /// <param name="cancellationToken">Indicates that the shutdown process should no longer be graceful.</param>
     public async Task StopAsync(CancellationToken cancellationToken) {
         logger.LogInformation("Shutting down bot!");
+        _listenerTask?.Dispose();
     }
 }