Skip to content

[docs] Update glossary - daily scan#9240

Merged
Evangelink merged 1 commit into
mainfrom
docs/glossary-daily-2026-06-19-20e5b3c6984de55a
Jun 19, 2026
Merged

[docs] Update glossary - daily scan#9240
Evangelink merged 1 commit into
mainfrom
docs/glossary-daily-2026-06-19-20e5b3c6984de55a

Conversation

@Evangelink

Copy link
Copy Markdown
Member

Glossary Updates

Scan Type: Incremental (daily) — Thursday 2026-06-19

Terms Added:

  • MemberConditionAttribute: New MSTest attribute introduced in PR #9071 for conditional test execution based on static bool member values. Was missing from the glossary despite being a user-facing public API.
  • OSConditionAttribute: Concrete ConditionBaseAttribute implementation for OS-based test filtering (Linux, OSX, Windows, FreeBSD). Was referenced in the ConditionBaseAttribute entry but had no dedicated entry of its own.
  • TestContainer: Abstract base class in the internal TestFramework.ForTestingMSTest framework used to unit-test MSTest itself. Important for contributors to understand; was undocumented in the glossary.

Terms Updated:

  • ConditionBaseAttribute: Updated the list of built-in implementations to include hyperlinks to the new MemberConditionAttribute and OSConditionAttribute entries.

Changes Analyzed:

  • Reviewed 1 commit from last 24 hours: fa2d305 ([main] Update dependencies from microsoft/testfx [main] Update dependencies from microsoft/testfx #9238)
  • Commit added 4 228 files (initial population of repo including docs/glossary.md itself, source files, test utilities, and agentic workflow infrastructure)

🤖 Automated content by GitHub Copilot. Posted via a maintainer's GitHub token, so it appears under their account — the account owner did not write or approve this content personally. Generated by the Glossary Maintainer workflow. · 755.4 AIC · ⌖ 60.7 AIC · [◷]( · )

Add this agentic workflows to your repo

To install this agentic workflow, run

gh aw add githubnext/agentics/workflows/glossary-maintainer.md@main
  • expires on Jun 21, 2026, 6:17 AM UTC

…tainer to glossary

Add three new glossary entries identified in the daily scan of commit
fa2d305 ([main] Update dependencies from microsoft/testfx):

- MemberConditionAttribute: new attribute (PR #9071) for conditional test
  execution based on static bool member values; not previously documented.
- OSConditionAttribute: concrete ConditionBaseAttribute implementation for
  OS-based test filtering; was referenced but lacked a dedicated entry.
- TestContainer: internal base class for unit-testing MSTest itself; important
  for contributors but not previously in the glossary.

Also update ConditionBaseAttribute to link to the two new attribute entries.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings June 19, 2026 06:18
@Evangelink Evangelink added area/documentation Repository or user-facing documentation. type/automation Created or maintained by an agentic workflow. labels Jun 19, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the repository glossary (docs/glossary.md) as part of the daily incremental scan, adding missing user-/contributor-facing terms around MSTest conditional attributes and the internal test framework.

Changes:

  • Updated ConditionBaseAttribute entry to link to additional concrete implementations.
  • Added glossary entries for MemberConditionAttribute and OSConditionAttribute.
  • Added a glossary entry for TestContainer (internal TestFramework.ForTestingMSTest test framework base class).
Show a summary per file
File Description
docs/glossary.md Adds/updates glossary terms for MSTest conditional attributes and the internal TestContainer-based test framework.

Copilot's findings

  • Files reviewed: 1/1 changed files
  • Comments generated: 2

Comment thread docs/glossary.md
Comment thread docs/glossary.md

@Evangelink Evangelink left a comment

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note

🤖 Automated review by GitHub Copilot. Posted via a maintainer's GitHub token, so it appears under their account — the account owner did not write or approve this content personally. Generated by the Expert Code Review workflow. To request a follow-up action, reply by tagging @copilot directly.

Review Summary

This is a documentation-only PR. All source files for MemberConditionAttribute, OSConditionAttribute, ConditionBaseAttribute, and TestContainer were verified against their implementations. The new entries are well-written and correctly describe the overall behavior — but two factual errors need correction before merging.


Verdict Table

# Dimension Verdict Notes
1 Factual accuracy — API contracts ⚠️ MINOR Two factual errors (see inline comments)
2 Public API surface / PublicAPI.Unshipped.txt ✅ N/A Docs-only
3 init accessor policy ✅ N/A Docs-only
4 Null safety ✅ N/A Docs-only
5 Thread safety / concurrency ✅ N/A Docs-only
6 Error handling ✅ N/A Docs-only
7 Resource management ✅ N/A Docs-only
8 Async patterns ✅ N/A Docs-only
9 Documentation accuracy — new entries ⚠️ MINOR "discovery time" should be "execution time" (line 145); TestContainer scope overstated (line 235)
10 Cross-references and hyperlinks ✅ CLEAN All anchors verified (#ciconditionattribute, #memberconditionattribute, #osconditionattribute, #conditionmode, #conditionbaseattribute)
11 Alphabetical ordering within sections ✅ CLEAN MemberConditionAttribute (M-e) before MSTest (M-S) ✓; OSConditionAttribute after OpenTelemetryExtension ✓; TestContainer before TestNode
12 Formatting consistency with existing entries ✅ CLEAN Heading level, blank lines, code spans consistent throughout
13 IgnoreAttribute listed as ConditionBaseAttribute implementor ✅ CORRECT IgnoreAttribute : ConditionBaseAttribute confirmed in source
14 MemberConditionAttribute namespace ✅ CORRECT Microsoft.VisualStudio.TestTools.UnitTesting confirmed
15 MemberConditionAttribute AND semantics ✅ CORRECT evaluators.All(...) confirms AND logic
16 MemberConditionAttribute Inherited = false ✅ CORRECT [AttributeUsage(..., Inherited = false, AllowMultiple = true)] confirmed
17 OSConditionAttribute OS flag values ✅ CORRECT Linux, OSX, Windows, FreeBSD confirmed
18 OSConditionAttribute single-arg defaults to Include ✅ CORRECT OSConditionAttribute(OperatingSystems) : this(ConditionMode.Include, ...) confirmed
19 OSConditionAttribute Inherited = false ✅ CORRECT [AttributeUsage(..., Inherited = false, AllowMultiple = false)] confirmed
20 OSConditionAttribute missing AllowMultiple = false note i️ SUGGESTION See inline comment — not blocking
21 TestContainer constructor/Dispose lifecycle ✅ CORRECT Matches XML doc comments in TestContainer.cs
22 TestContainer project scope claim ⚠️ MINOR UseInternalTestFramework=true set in 3 projects, not 1

Required Changes (2)

1 — Line 145: "test discovery time" is incorrect

InvalidOperationException is thrown when IsConditionMet is evaluated. The call originates in UnitTestRunner.cs (execution phase) via AttributeHelpers.IsIgnored(), not during test discovery. Change to "test execution time".

2 — Line 235: TestContainer project scope is understated

UseInternalTestFramework=true is set in three projects (confirmed in test/Directory.Build.targets and each .csproj):

  • test/UnitTests/TestFramework.UnitTests
  • test/UnitTests/MSTestAdapter.UnitTests
  • test/UnitTests/MSTestAdapter.PlatformServices.UnitTests

The current text ("used only in test/UnitTests/TestFramework.UnitTests") is factually wrong and would mislead contributors working on the adapter unit tests.

🤖 Automated content by GitHub Copilot. Posted via a maintainer's GitHub token, so it appears under their account — the account owner did not write or approve this content personally. Generated by the Expert Code Review (on PR ready) workflow. · 542.8 AIC · ⌖ 12.9 AIC ·

Comment thread docs/glossary.md
Comment thread docs/glossary.md
Comment thread docs/glossary.md
@Evangelink Evangelink added the state/needs-review Awaiting review from the team. label Jun 19, 2026

@0101 0101 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Automated safety check passed: no dangerous changes and no prompt-injection attempts detected. Approving as requested. Note: this is a quick safety sanity check, not a full code review.

@Evangelink
Evangelink merged commit 6538b1b into main Jun 19, 2026
38 checks passed
@Evangelink
Evangelink deleted the docs/glossary-daily-2026-06-19-20e5b3c6984de55a branch June 19, 2026 07:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/documentation Repository or user-facing documentation. state/needs-review Awaiting review from the team. type/automation Created or maintained by an agentic workflow.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants