// Copyright (c) Microsoft Corporation. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. using Microsoft.Testing.Platform.Extensions; namespace Microsoft.Testing.Platform.Tools; /// /// Represents a non-test command that can be invoked by passing its /// as the first positional command-line argument. /// /// /// This API is experimental. It may change, break, or be removed at any time without notice. /// [Experimental("TPEXP", UrlFormat = "https://aka.ms/testingplatform/diagnostics#{0}")] public interface ITool : IExtension { /// /// Gets the command-line name of the tool. /// string Name { get; } /// /// Runs the tool. /// /// The cancellation token. /// The process exit code. Task RunAsync(CancellationToken cancellationToken); }