Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 12 additions & 5 deletions src/TestabilityKata.Tests/CustomFileWriterTest.cs
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,23 @@ namespace TestabilityKata.Tests
[TestClass]
public class CustomFileWriterTest
{
private IMailSender fakeMailSender;

[TestInitialize]
public void Initialize()
{
fakeMailSender = Substitute.For<IMailSender>();
}

[TestMethod]
public void WhenCreatingFileAnEmailIsSentOut()
{
var fakeMailSender = Substitute.For<IMailSender>();

const string testFilePath = @"C:\WhenCreatingFileAnEmailIsSentOut.txt";

var customFileWriter = new CustomFileWriter(
fakeMailSender,
testFilePath);

//if the existing file exists, delete it before running the test, since
//we need to get to the point where a new file is created.
if(File.Exists(testFilePath))
Expand All @@ -25,9 +35,6 @@ public void WhenCreatingFileAnEmailIsSentOut()
File.Delete(testFilePath);
}

var customFileWriter = new CustomFileWriter(
fakeMailSender,
testFilePath);
customFileWriter.AppendLine("Some line");

fakeMailSender
Expand Down
9 changes: 8 additions & 1 deletion src/TestabilityKata.Tests/MailSenderTest.cs
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,18 @@ namespace TestabilityKata.Tests
[TestClass]
public class MailSenderTest
{
private IMailSender mailSender;

[TestInitialize]
public void Initialize()
{
mailSender = new MailSender();
}

[TestMethod]
[ExpectedException(typeof(ArgumentException))]
public void MailSenderThrowsExceptionIfEmailIsInvalid()
{
var mailSender = new MailSender();
mailSender.SendMail("my-invalid-email", "some content");
}
}
Expand Down
26 changes: 14 additions & 12 deletions src/TestabilityKata.Tests/ProgramTest.cs
Original file line number Diff line number Diff line change
Expand Up @@ -9,16 +9,25 @@ namespace TestabilityKata.Tests
[TestClass]
public class ProgramTest
{
[TestMethod]
public void ProgramSendsEmailWhenStartingUp()
private IMailSender fakeMailSender;
private ILogger fakeLogger;

private IProgram program;

[TestInitialize]
public void Initialize()
{
var fakeMailSender = Substitute.For<IMailSender>();
var fakeLogger = Substitute.For<ILogger>();
fakeMailSender = Substitute.For<IMailSender>();
fakeLogger = Substitute.For<ILogger>();

var program = new Program(
program = new Program(
fakeLogger,
fakeMailSender);
}

[TestMethod]
public void ProgramSendsEmailWhenStartingUp()
{
program.Run();

//we here make sure that SendMail was called
Expand All @@ -34,13 +43,6 @@ public void ProgramSendsEmailWhenStartingUp()
[TestMethod]
public void ProgramLogsErrorWhenExceptionIsThrown()
{
var fakeMailSender = Substitute.For<IMailSender>();
var fakeLogger = Substitute.For<ILogger>();

var program = new Program(
fakeLogger,
fakeMailSender);

//we here make the EmailSender's SendMail throw an exception no
//matter what arguments it was called with.
fakeMailSender
Expand Down
12 changes: 6 additions & 6 deletions src/TestabilityKata.Tests/TestabilityKata.Tests.csproj
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>netcoreapp2.0</TargetFramework>
<TargetFramework>net6.0</TargetFramework>

<IsPackable>false</IsPackable>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="FluffySpoon.Testing.Autofake.Autofac" Version="1.0.5" />
<PackageReference Include="FluffySpoon.Testing.Autofake.NSubstitute" Version="1.0.5" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.3.0-preview-20170628-02" />
<PackageReference Include="MSTest.TestAdapter" Version="1.1.18" />
<PackageReference Include="MSTest.TestFramework" Version="1.1.18" />
<PackageReference Include="FluffySpoon.Testing.Autofake.Autofac" Version="1.34.0" />
<PackageReference Include="FluffySpoon.Testing.Autofake.NSubstitute" Version="1.34.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.2.0" />
<PackageReference Include="MSTest.TestAdapter" Version="2.2.10" />
<PackageReference Include="MSTest.TestFramework" Version="2.2.10" />
</ItemGroup>

<ItemGroup>
Expand Down
2 changes: 1 addition & 1 deletion src/TestabilityKata/TestabilityKata.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp2.0</TargetFramework>
<TargetFramework>net6.0</TargetFramework>
</PropertyGroup>

</Project>