Skip to content

Commit 537c17c

Browse files
committed
#700 Fixed handling of .netconfig files (sourceDirectories, reportTypes, plugins, assemblyFilters, etc.)
1 parent b92ea55 commit 537c17c

File tree

3 files changed

+38
-34
lines changed

3 files changed

+38
-34
lines changed

README.md

+25-25
Original file line numberDiff line numberDiff line change
@@ -128,33 +128,33 @@ section. Examples:
128128

129129
```gitconfig
130130
[ReportGenerator]
131-
reports = coverage.xml
131+
reports = "coverage.xml"
132132
targetdir = "C:\\report"
133-
reporttypes = Latex,HtmlSummary
134-
assemblyfilters = +Test,-Test
135-
classfilters = +Test2,-Test2
133+
reporttypes = "Latex;HtmlSummary"
134+
assemblyfilters = "+Test;-Test"
135+
classfilters = "+Test2;-Test2"
136136
```
137137

138138
All the plural options can also be specified as multiple singular entries, like:
139139

140140
```gitconfig
141141
[ReportGenerator]
142-
report = coverage1.xml
143-
report = coverage2.xml
144-
reporttype = Latex
145-
reporttype = HtmlSummary
146-
assemblyfilter = +Test
147-
assemblyfilter = -Test
148-
classfilter = +Test2
149-
classfilter = -Test2
150-
filefilter = +cs
151-
filefilter = -vb
152-
riskhotspotassemblyfilter = +Test
153-
riskhotspotassemblyfilter = -Test
154-
riskhotspotclassfilter = +Test2
155-
riskhotspotclassfilter = -Test2
156-
sourcedir = src
157-
sourcedir = test
142+
report = "coverage1.xml"
143+
report = "coverage2.xml"
144+
reporttype = "Latex"
145+
reporttype = "HtmlSummary"
146+
assemblyfilter = "+Test"
147+
assemblyfilter = "-Test"
148+
classfilter = "+Test2"
149+
classfilter = "-Test2"
150+
filefilter = "+cs"
151+
filefilter = "-vb"
152+
riskhotspotassemblyfilter = "+Test"
153+
riskhotspotassemblyfilter = "-Test"
154+
riskhotspotclassfilter = "+Test2"
155+
riskhotspotclassfilter = "-Test2"
156+
sourcedir = "src"
157+
sourcedir = "test"
158158
```
159159

160160
Adding/removing values is trivial using the [dotnet-config](https://dotnetconfig.org) CLI:
@@ -197,11 +197,11 @@ Given the following `.netconfig`:
197197

198198
```gitconfig
199199
[ReportGenerator]
200-
reporttypes = Html;Latex
201-
targetdirectory = report
202-
historydirectory = history
203-
assemblyfilters = +Include;-Excluded
204-
verbosityLevel = Verbose
200+
reporttypes = "Html;Latex"
201+
targetdirectory = "report"
202+
historydirectory = "history"
203+
assemblyfilters = "+Include;-Excluded"
204+
verbosityLevel = "Verbose"
205205
```
206206

207207
The above target could be simplified as:

src/Readme.txt

+4
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,10 @@ For further details take a look at LICENSE.txt.
6767

6868
CHANGELOG
6969

70+
5.4.2.0
71+
72+
* Fix: #700 Fixed handling of .netconfig files (sourceDirectories, reportTypes, plugins, assemblyFilters, etc.)
73+
7074
5.4.1.0
7175

7276
* Fix: #707 Fixed issue with file filters

src/ReportGenerator.Core/ReportConfigurationBuilder.cs

+9-9
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ public ReportConfiguration Create(Dictionary<string, string> cliArguments)
5252
}
5353
else if (config.TryGetString(DotNetConfigSettingNames.Reports, out value))
5454
{
55-
reportFilePatterns = value.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
55+
reportFilePatterns = value.Split(new[] { ';', ',' }, StringSplitOptions.RemoveEmptyEntries);
5656
}
5757
else
5858
{
@@ -78,7 +78,7 @@ public ReportConfiguration Create(Dictionary<string, string> cliArguments)
7878
}
7979
else if (config.TryGetString(DotNetConfigSettingNames.SourceDirectories, out value))
8080
{
81-
sourceDirectories = value.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
81+
sourceDirectories = value.Split(new[] { ';', ',' }, StringSplitOptions.RemoveEmptyEntries);
8282
}
8383
else
8484
{
@@ -108,7 +108,7 @@ public ReportConfiguration Create(Dictionary<string, string> cliArguments)
108108
}
109109
else if (config.TryGetString(DotNetConfigSettingNames.ReportTypes, out value))
110110
{
111-
reportTypes = value.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
111+
reportTypes = value.Split(new[] { ';', ',' }, StringSplitOptions.RemoveEmptyEntries);
112112
}
113113
else
114114
{
@@ -125,7 +125,7 @@ public ReportConfiguration Create(Dictionary<string, string> cliArguments)
125125
}
126126
else if (config.TryGetString(DotNetConfigSettingNames.Plugins, out value))
127127
{
128-
plugins = value.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
128+
plugins = value.Split(new[] { ';', ',' }, StringSplitOptions.RemoveEmptyEntries);
129129
}
130130
else
131131
{
@@ -146,7 +146,7 @@ public ReportConfiguration Create(Dictionary<string, string> cliArguments)
146146
}
147147
else if (config.TryGetString(DotNetConfigSettingNames.AssemblyFilters, out value))
148148
{
149-
assemblyFilters = value.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
149+
assemblyFilters = value.Split(new[] { ';', ',' }, StringSplitOptions.RemoveEmptyEntries);
150150
}
151151
else
152152
{
@@ -163,7 +163,7 @@ public ReportConfiguration Create(Dictionary<string, string> cliArguments)
163163
}
164164
else if (config.TryGetString(DotNetConfigSettingNames.ClassFilters, out value))
165165
{
166-
classFilters = value.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
166+
classFilters = value.Split(new[] { ';', ',' }, StringSplitOptions.RemoveEmptyEntries);
167167
}
168168
else
169169
{
@@ -180,7 +180,7 @@ public ReportConfiguration Create(Dictionary<string, string> cliArguments)
180180
}
181181
else if (config.TryGetString(DotNetConfigSettingNames.FileFilters, out value))
182182
{
183-
fileFilters = value.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
183+
fileFilters = value.Split(new[] { ';', ',' }, StringSplitOptions.RemoveEmptyEntries);
184184
}
185185
else
186186
{
@@ -197,7 +197,7 @@ public ReportConfiguration Create(Dictionary<string, string> cliArguments)
197197
}
198198
else if (config.TryGetString(DotNetConfigSettingNames.RiskHotspotAssemblyFilters, out value))
199199
{
200-
riskHotspotAssemblyFilters = value.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
200+
riskHotspotAssemblyFilters = value.Split(new[] { ';', ',' }, StringSplitOptions.RemoveEmptyEntries);
201201
}
202202
else
203203
{
@@ -214,7 +214,7 @@ public ReportConfiguration Create(Dictionary<string, string> cliArguments)
214214
}
215215
else if (config.TryGetString(DotNetConfigSettingNames.RiskHotspotClassFilters, out value))
216216
{
217-
riskHotspotClassFilters = value.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
217+
riskHotspotClassFilters = value.Split(new[] { ';', ',' }, StringSplitOptions.RemoveEmptyEntries);
218218
}
219219
else
220220
{

0 commit comments

Comments
 (0)