Skip to content

Commit 7010bbc

Browse files
committed
Fix more tests
1 parent 550c1c9 commit 7010bbc

File tree

4 files changed

+65
-2
lines changed

4 files changed

+65
-2
lines changed

src/Tests/Microsoft.Diagnostics.Monitoring.Tool.UnitTests/CollectionRuleDescriptionPipelineTests.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77
using Microsoft.Diagnostics.Monitoring.Tool.UnitTests.CollectionRules.Triggers;
88
using Microsoft.Diagnostics.Monitoring.WebApi;
99
using Microsoft.Diagnostics.Monitoring.WebApi.Models;
10+
using Microsoft.Diagnostics.Tools.Monitor;
11+
using Strings = Microsoft.Diagnostics.Monitoring.WebApi.Strings;
1012
using Microsoft.Diagnostics.Tools.Monitor.CollectionRules;
1113
using Microsoft.Diagnostics.Tools.Monitor.CollectionRules.Options;
1214
using Microsoft.Extensions.DependencyInjection;
@@ -337,6 +339,7 @@ public Task CollectionRuleDescriptionPipeline_ReachedRuleDuration(TargetFramewor
337339
{
338340
services.RegisterManualTrigger(triggerService);
339341
services.RegisterTestAction(callbackService);
342+
TestValidatableTypes.AddValidation(services);
340343
});
341344
}
342345

src/Tests/Microsoft.Diagnostics.Monitoring.Tool.UnitTests/Microsoft.Diagnostics.Monitoring.Tool.UnitTests.csproj

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
<PropertyGroup>
44
<TargetFrameworks>$(ToolTargetFrameworks)</TargetFrameworks>
55
<DisableCompileTimeOpenApiXmlGenerator>true</DisableCompileTimeOpenApiXmlGenerator>
6+
<EmitCompilerGeneratedFiles>true</EmitCompilerGeneratedFiles>
67
</PropertyGroup>
78

89
<ItemGroup>
@@ -189,4 +190,10 @@
189190
<KnownFrameworkReference Update="Microsoft.AspNetCore.App" TargetingPackVersion="$(AspNetCoreAppVersion)" DefaultRuntimeFrameworkVersion="$(AspNetCoreAppVersion)" LatestRuntimeFrameworkVersion="$(AspNetCoreAppVersion)" />
190191
</ItemGroup>
191192

193+
<Target Name="RemoveAnalyzer" BeforeTargets="CoreCompile">
194+
<ItemGroup>
195+
<Analyzer Remove="@(Analyzer)" Condition="'%(Analyzer.FileName)' == 'Microsoft.AspNetCore.Http.ValidationsGenerator'" />
196+
</ItemGroup>
197+
</Target>
198+
192199
</Project>

src/Tools/dotnet-monitor/CollectionRules/Configuration/CollectionRulePostConfigureNamedOptions.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,7 @@ private void ResolveActionList(CollectionRuleOptions ruleOptions, IConfiguration
6464
{
6565
CollectionRuleActionOptions actionOptions = new();
6666

67+
actionSection.Bind(actionOptions);
6768

6869
CollectionRuleBindingHelper.BindActionSettings(actionSection, actionOptions, _actionOperations);
6970

src/Tools/dotnet-monitor/CommonOptionsMapper.cs

Lines changed: 54 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -149,10 +149,10 @@ private void MapDictionary_String_CollectionRuleOptions(IDictionary<string, Coll
149149
private void MapCollectionRuleOptions(CollectionRuleOptions obj, string valueName, string separator, IDictionary<string, string> map)
150150
{
151151
string prefix = FormattableString.Invariant($"{valueName}{separator}");
152-
// MapFilters(obj.Filters, FormattableString.Invariant($"{prefix}{nameof(obj.Filters)}"), separator, map);
152+
MapFilters(obj.Filters, FormattableString.Invariant($"{prefix}{nameof(obj.Filters)}"), separator, map);
153153
MapCollectionRuleTriggerOptions(obj.Trigger, FormattableString.Invariant($"{prefix}{nameof(obj.Trigger)}"), separator, map);
154154
MapActions(obj.Actions, FormattableString.Invariant($"{prefix}{nameof(obj.Actions)}"), separator, map);
155-
// MapLimits(obj.Limits, FormattableString.Invariant($"{prefix}{nameof(obj.Limits)}"), separator, map);
155+
MapLimits(obj.Limits, FormattableString.Invariant($"{prefix}{nameof(obj.Limits)}"), separator, map);
156156
}
157157

158158
private void MapActions(List<CollectionRuleActionOptions> obj, string valueName, string separator, IDictionary<string, string> map)
@@ -238,6 +238,17 @@ private void MapCollectionRuleActionOptions_Settings(string type, object? settin
238238
}
239239
}
240240

241+
private static void MapLimits(CollectionRuleLimitsOptions? obj, string valueName, string separator, IDictionary<string, string> map)
242+
{
243+
if (null != obj)
244+
{
245+
string prefix = FormattableString.Invariant($"{valueName}{separator}");
246+
MapInt(obj.ActionCount, FormattableString.Invariant($"{prefix}{nameof(obj.ActionCount)}"), map);
247+
MapTimeSpan(obj.ActionCountSlidingWindowDuration, FormattableString.Invariant($"{prefix}{nameof(obj.ActionCountSlidingWindowDuration)}"), map);
248+
MapTimeSpan(obj.RuleDuration, FormattableString.Invariant($"{prefix}{nameof(obj.RuleDuration)}"), map);
249+
}
250+
}
251+
241252
private static void MapCollectDumpOptions(CollectDumpOptions? obj, string valueName, string separator, IDictionary<string, string> map)
242253
{
243254
if (null != obj)
@@ -520,6 +531,47 @@ private static void MapDumpType(DumpType? value, string valueName, IDictionary<s
520531
}
521532
}
522533

534+
private static void MapFilters(List<ProcessFilterDescriptor>? obj, string valueName, string separator, IDictionary<string, string> map)
535+
{
536+
if (null != obj)
537+
{
538+
string prefix = FormattableString.Invariant($"{valueName}{separator}");
539+
for (int index = 0; index < obj.Count; index++)
540+
{
541+
ProcessFilterDescriptor value = obj[index];
542+
MapProcessFilterDescriptor(value, FormattableString.Invariant($"{prefix}{index}"), separator, map);
543+
}
544+
}
545+
}
546+
547+
private static void MapProcessFilterDescriptor(ProcessFilterDescriptor obj, string valueName, string separator, IDictionary<string, string> map)
548+
{
549+
string prefix = FormattableString.Invariant($"{valueName}{separator}");
550+
MapProcessFilterKey(obj.Key, FormattableString.Invariant($"{prefix}{nameof(obj.Key)}"), map);
551+
MapString(obj.Value, FormattableString.Invariant($"{prefix}{nameof(obj.Value)}"), map);
552+
MapProcessFilterType(obj.MatchType, FormattableString.Invariant($"{prefix}{nameof(obj.MatchType)}"), map);
553+
MapString(obj.ProcessName, FormattableString.Invariant($"{prefix}{nameof(obj.ProcessName)}"), map);
554+
MapString(obj.ProcessId, FormattableString.Invariant($"{prefix}{nameof(obj.ProcessId)}"), map);
555+
MapString(obj.CommandLine, FormattableString.Invariant($"{prefix}{nameof(obj.CommandLine)}"), map);
556+
MapString(obj.ManagedEntryPointAssemblyName, FormattableString.Invariant($"{prefix}{nameof(obj.ManagedEntryPointAssemblyName)}"), map);
557+
}
558+
559+
private static void MapProcessFilterKey(ProcessFilterKey? value, string valueName, IDictionary<string, string> map)
560+
{
561+
if (null != value)
562+
{
563+
map.Add(valueName, ConvertUtils.ToString(value, CultureInfo.InvariantCulture));
564+
}
565+
}
566+
567+
private static void MapProcessFilterType(ProcessFilterType? value, string valueName, IDictionary<string, string> map)
568+
{
569+
if (null != value)
570+
{
571+
map.Add(valueName, ConvertUtils.ToString(value, CultureInfo.InvariantCulture));
572+
}
573+
}
574+
523575
private static void MapCollectionRuleTriggerOptions(CollectionRuleTriggerOptions? obj, string valueName, string separator, IDictionary<string, string> map)
524576
{
525577
if (null != obj)

0 commit comments

Comments
 (0)