39 lines
969 B
C#
39 lines
969 B
C#
using MeetTheTeacher.Export;
|
|
using MeetTheTeacher.Model;
|
|
|
|
namespace MeetTheTeacher.Test.Export;
|
|
|
|
public sealed class DefaultExporterProviderTests
|
|
{
|
|
private readonly DefaultExporterProvider _provider;
|
|
|
|
public DefaultExporterProviderTests()
|
|
{
|
|
_provider = new DefaultExporterProvider();
|
|
}
|
|
|
|
[Fact]
|
|
public void GetExporter_CsvFormat()
|
|
{
|
|
_provider.GetExporter(ExportFormat.Csv)
|
|
.Should().BeOfType<CsvDataExporter>();
|
|
}
|
|
|
|
[Fact]
|
|
public void GetExporter_HtmlFormat()
|
|
{
|
|
_provider.GetExporter(ExportFormat.Html)
|
|
.Should().BeOfType<HtmlDataExporter>();
|
|
}
|
|
|
|
[Fact]
|
|
public void GetExporter_InvalidFormat()
|
|
{
|
|
var exporterProvider = new DefaultExporterProvider();
|
|
|
|
Action act = () => exporterProvider.GetExporter((ExportFormat) (-1));
|
|
|
|
act.Should().Throw<ArgumentOutOfRangeException>()
|
|
.WithMessage("*exportFormat*");
|
|
}
|
|
}
|