Speedtest respect user-set core type (#8856)

* Respect user-set core type

* Allow test group
This commit is contained in:
DHR60
2026-03-01 08:11:40 +00:00
committed by GitHub
parent 99d67ca3f1
commit 9f6237fb21
8 changed files with 35 additions and 28 deletions
+6
View File
@@ -242,6 +242,12 @@ public sealed class AppManager
.ToListAsync();
}
public async Task<Dictionary<string, ProfileItem>> GetProfileItemsByIndexIdsAsMap(IEnumerable<string> indexIds)
{
var items = await GetProfileItemsByIndexIds(indexIds);
return items.ToDictionary(it => it.IndexId);
}
public async Task<ProfileItem?> GetProfileItemViaRemarks(string? remarks)
{
if (remarks.IsNullOrEmpty())
+1 -1
View File
@@ -98,7 +98,7 @@ public class CoreManager
public async Task<ProcessService?> LoadCoreConfigSpeedtest(List<ServerTestItem> selecteds)
{
var coreType = selecteds.Any(t => Global.SingboxOnlyConfigType.Contains(t.ConfigType)) ? ECoreType.sing_box : ECoreType.Xray;
var coreType = selecteds.FirstOrDefault()?.CoreType == ECoreType.sing_box ? ECoreType.sing_box : ECoreType.Xray;
var fileName = string.Format(Global.CoreSpeedtestConfigFileName, Utils.GetGuid(false));
var configPath = Utils.GetBinConfigPath(fileName);
var result = await CoreConfigHandler.GenerateClientSpeedtestConfig(_config, configPath, selecteds, coreType);
@@ -103,16 +103,7 @@ public class GroupProfileManager
return [];
}
var childProfiles = await AppManager.Instance.GetProfileItemsByIndexIds(childProfileIds);
if (childProfiles == null || childProfiles.Count == 0)
{
return [];
}
var profileMap = childProfiles
.Where(p => p != null && !p.IndexId.IsNullOrEmpty())
.GroupBy(p => p!.IndexId!)
.ToDictionary(g => g.Key, g => g.First());
var profileMap = await AppManager.Instance.GetProfileItemsByIndexIdsAsMap(childProfileIds);
var ordered = new List<ProfileItem>(childProfileIds.Count);
foreach (var id in childProfileIds)