/// <summary> /// Retrieves a SmtpImposter along with information about requests made to that /// imposter if Mountebank is running with the "--mock" flag. /// </summary> /// <param name="port">The port number of the imposter to retrieve</param> /// <returns>The retrieved imposter</returns> /// <exception cref="MbDotNet.Exceptions.ImposterNotFoundException">Thrown if no imposter was found on the specified port.</exception> /// <exception cref="MbDotNet.Exceptions.InvalidProtocolException">Thrown if the retrieved imposter was not an SMTP imposter</exception> public async Task <RetrievedSmtpImposter> GetSmtpImposterAsync(int port, CancellationToken cancellationToken = default) { var imposter = await _requestProxy.GetSmtpImposterAsync(port, cancellationToken).ConfigureAwait(false); ValidateRetrievedImposterProtocol(imposter, Protocol.Smtp); return(imposter); }