You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
🔧 add skip benchmarks option for benchmark runner
📝 add guidance to avoid internalsvisibleto in test projects
🔬 rename benchmark class and update report with new results
⬆️ bump dependecies
📦️ updated NuGet package definition
📝 add nuget prompt for populating PackageReleaseNotes.txt files
Copy file name to clipboardExpand all lines: .github/copilot-instructions.md
+31Lines changed: 31 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -152,6 +152,37 @@ namespace Cuemon
152
152
For further examples, refer to existing test files such as
153
153
[`test/Cuemon.Core.Tests/DisposableTest.cs`](test/Cuemon.Core.Tests/DisposableTest.cs) and [`test/Cuemon.Core.Tests/Security/HashFactoryTest.cs`](test/Cuemon.Core.Tests/Security/HashFactoryTest.cs).
154
154
155
+
## 9. Avoid `InternalsVisibleTo` in Tests
156
+
157
+
-**Do not** use `InternalsVisibleTo` to access internal types or members from test projects.
158
+
- Prefer **indirect testing via public APIs** that depend on the internal implementation (public facades, public extension methods, or other public entry points).
159
+
160
+
### Preferred Pattern
161
+
162
+
**Pattern name:** Public Facade Testing (also referred to as *Public API Proxy Testing*)
163
+
164
+
**Description:**
165
+
Internal classes and methods must be validated by exercising the public API that consumes them. Tests should assert observable behavior exposed by the public surface rather than targeting internal implementation details directly.
-**Test strategy:** Write tests for `WriteLines()` and verify its public behavior. The internal call to `DelimitedString.Create()` is exercised implicitly.
172
+
173
+
### Benefits
174
+
175
+
- Avoids exposing internal types to test assemblies.
description: 'Prompt for populating PackageReleaseNotes.txt files under .nuget/**'
4
+
params:
5
+
version: '10.0.0'
6
+
---
7
+
8
+
Purpose: deterministic, low-analysis instructions so automated runs prepend a single, consistent release block.
9
+
10
+
Behavior (exact):
11
+
- For every file matching `.nuget/**/PackageReleaseNotes.txt`:
12
+
1. Read the file and find the first line that starts with `Availability:` (case-sensitive).
13
+
2. If found, capture the remainder of that line as `previous-tfm` and prepend the exact template shown below (substituting `{{version}}` and `{{previous-tfm}}`).
14
+
3. If not found within the first 3 lines, do nothing for that file.
15
+
4. Apply the template exactly as shown, preserving all whitespace and blank lines (including NBSP U+00A0 characters).
16
+
5. Save the file in-place - do not open PRs or create branches.
17
+
6. Continue to the next file until all matching files have been processed.
18
+
7. Do not assume that each file are the same - process each file independently.
19
+
20
+
Exact template to prepend (preserve whitespace and trailing NBSP U+00A0 on the blank lines):
21
+
```
22
+
Version {{version}}
23
+
Availability: {{previous-tfm}}
24
+
25
+
# ALM
26
+
- CHANGED Dependencies have been upgraded to the latest compatible versions for all supported target frameworks (TFMs)
27
+
28
+
```
29
+
Notes:
30
+
- Do not attempt to infer versions or parse changelogs — use the provided `params.version` value.
31
+
- Keep edits minimal: only prepend the template block; preserve the rest of the file unchanged for human interference.
32
+
- DO NOT REMOVE THE ASCII 0xA0 NBSP CHARACTERS OR RUN ANY SORT OF TRIM on the blank lines in the template!
33
+
- DO NOT RUN ANY SORT OF GIT COMMANDS - once the files are saved, you are done.
Copy file name to clipboardExpand all lines: .nuget/Cuemon.AspNetCore.Mvc/PackageReleaseNotes.txt
+7-1Lines changed: 7 additions & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -1,3 +1,9 @@
1
+
Version 10.1.2
2
+
Availability: .NET 10 and .NET 9
3
+
4
+
# ALM
5
+
- CHANGED Dependencies have been upgraded to the latest compatible versions for all supported target frameworks (TFMs)
6
+
1
7
Version 10.1.1
2
8
Availability: .NET 10 and .NET 9
3
9
@@ -88,4 +94,4 @@ Availability: .NET 9 and .NET 8
88
94
# Improvements
89
95
- EXTENDED ExceptionDescriptorResult class in the Cuemon.AspNetCore.Mvc namespace to have an extra overload that accepts ProblemDetails
90
96
- CHANGED FaultDescriptorFilter class in the Cuemon.AspNetCore.Mvc.Filters.Diagnostics namespace to support preferred fault descriptor (e.g., FaultDetails or ProblemDetails)
Copy file name to clipboardExpand all lines: .nuget/Cuemon.AspNetCore/PackageReleaseNotes.txt
+7-1Lines changed: 7 additions & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -1,3 +1,9 @@
1
+
Version 10.1.2
2
+
Availability: .NET 10 and .NET 9
3
+
4
+
# ALM
5
+
- CHANGED Dependencies have been upgraded to the latest compatible versions for all supported target frameworks (TFMs)
6
+
1
7
Version 10.1.1
2
8
Availability: .NET 10 and .NET 9
3
9
@@ -94,4 +100,4 @@ Availability: .NET 9 and .NET 8
94
100
# Improvements
95
101
- EXTENDED FaultDescriptorOptions class in the Cuemon.AspNetCore.Diagnostics namespace to include a property named FaultDescriptor (PreferredFaultDescriptor); default is PreferredFaultDescriptor.FaultDetails
96
102
- EXTENDED HttpExceptionDescriptor class in the Cuemon.AspNetCore.Diagnostics namespace to include two new properties; Instance (Uri) and TraceId (string)
Copy file name to clipboardExpand all lines: .nuget/Cuemon.Core/PackageReleaseNotes.txt
+7-1Lines changed: 7 additions & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -1,3 +1,9 @@
1
+
Version 10.1.2
2
+
Availability: .NET 10, .NET 9 and .NET Standard 2.0
3
+
4
+
# ALM
5
+
- CHANGED Dependencies have been upgraded to the latest compatible versions for all supported target frameworks (TFMs)
6
+
1
7
Version 10.1.1
2
8
Availability: .NET 10, .NET 9 and .NET Standard 2.0
3
9
@@ -170,4 +176,4 @@ Availability: .NET 9, .NET 8 and .NET Standard 2.0
170
176
- EXTENDED Validator class in the Cuemon namespace with five new methods: ThrowIfContainsReservedKeyword, ThrowIfNotDifferent, ThrowIfDifferent, ThrowIfContainsAny and ThrowIfNotContainsAny
171
177
- CHANGED Validator class in the Cuemon namespace to comply with RSPEC-3343
172
178
- EXTENDED Decorator class in the Cuemon namespace with an additional method: RawEnclose
0 commit comments