using System.IO;
namespace OpenTap
{
/// Defines the interface for IArtifactListeners. Artifacts are generated by the test plan and may be any kind of file. The artifacts are published sequentially with the results.
public interface IArtifactListener
{
/// Invoked when an artifact is published. Note the artifactStream MUST be disposed after use.
/// The artifact may be a FileStream, in which case it can be used as such.
/// May be a TestPlanRun or TestStepRun depending on how the artifact is published. If it is published with a TestStepRun it means it belongs to that specific step. If its a TestStepRun, TestStepRunCompleted has not been called for that step run.
/// The stream containing the artifact data.
/// The name of the artifact. e.g results.csv
void OnArtifactPublished(TestRun run, Stream artifactStream, string artifactName);
}
}