नोट
इस पृष्ठ तक पहुंच के लिए प्राधिकरण की आवश्यकता होती है। आप साइन इन करने या निर्देशिकाएँ बदलने का प्रयास कर सकते हैं।
इस पृष्ठ तक पहुंच के लिए प्राधिकरण की आवश्यकता होती है। आप निर्देशिकाएँ बदलने का प्रयास कर सकते हैं।
| Property | Value |
|---|---|
| Rule ID | MSTEST0054 |
| Title | Use TestContext.CancellationToken instead of TestContext.CancellationTokenSource.Token |
| Category | Usage |
| Fix is breaking or non-breaking | Non-breaking |
| Enabled by default | Yes |
| Default severity | Info |
| Introduced in version | 3.11.0 |
| Is there a code fix | Yes |
Cause
Accessing CancellationToken via TestContext.CancellationTokenSource.Token instead of using the TestContext.CancellationToken property.
Rule description
MSTest provides a cancellation token through the TestContext.CancellationToken property. Accessing TestContext.CancellationTokenSource is not recommended, and it might be removed in a future release. It's also simpler to use TestContext.CancellationToken compared to TestContext.CancellationTokenSource.Token.
How to fix violations
Use the TestContext.CancellationToken property instead of TestContext.CancellationTokenSource.Token.
For example, change this:
public TestContext TestContext { get; set; }
[TestMethod]
public async Task TestMethod()
{
await Task.Delay(1000, TestContext.CancellationTokenSource.Token);
}
To this:
public TestContext TestContext { get; set; }
[TestMethod]
public async Task TestMethod()
{
await Task.Delay(1000, TestContext.CancellationToken);
}
When to suppress warnings
Don't suppress warnings from this rule. The use of CancellationTokenSource property is not recommended and might be removed in a future release.