| File: tests\testproject\Common\TestResourceNames.cs | Web Access |
| Project: src\tests\Aspire.Hosting.Testing.Tests\Aspire.Hosting.Testing.Tests.csproj (Aspire.Hosting.Testing.Tests) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. namespace Aspire.TestProject; [Flags] public enum TestResourceNames { None = 0, dashboard = 1 << 1, postgres = 1 << 7, redis = 1 << 9, efnpgsql = 1 << 11, All = dashboard | postgres | redis | efnpgsql } public static class TestResourceNamesExtensions { public static TestResourceNames Parse(IEnumerable<string> resourceNames) { TestResourceNames resourcesToSkip = TestResourceNames.None; foreach (var resourceName in resourceNames) { if (Enum.TryParse<TestResourceNames>(resourceName, ignoreCase: true, out var name)) { resourcesToSkip |= name; } else { throw new ArgumentException($"Unknown resource name: {resourceName}"); } } return resourcesToSkip; } public static string ToCSVString(this TestResourceNames resourceNames) { return string.Join(',', Enum.GetValues<TestResourceNames>() .Where(ename => ename != TestResourceNames.None && resourceNames.HasFlag(ename))); } }