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
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
9 changes: 9 additions & 0 deletions src/TestabilityKata/ICustomFileWriter.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
namespace TestabilityKata
{
public interface ICustomFileWriter
{
string FilePath { get; }

void AppendLine(string line);
}
}
7 changes: 7 additions & 0 deletions src/TestabilityKata/ICustomFileWriterFactory.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
namespace TestabilityKata
{
public interface ICustomFileWriterFactory
{
ICustomFileWriter Create(string filePath);
}
}
7 changes: 7 additions & 0 deletions src/TestabilityKata/ILogger.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
namespace TestabilityKata
{
public interface ILogger
{
void Log(LogLevel logLevel, string logText);
}
}
7 changes: 7 additions & 0 deletions src/TestabilityKata/IMailSender.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
namespace TestabilityKata
{
public interface IMailSender
{
void SendMail(string recipient, string content);
}
}
7 changes: 7 additions & 0 deletions src/TestabilityKata/IProgram.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
namespace TestabilityKata
{
public interface IProgram
{
void Run();
}
}
36 changes: 18 additions & 18 deletions src/TestabilityKata/Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

namespace TestabilityKata
{
public class Program
public class Program : IProgram
{
public static void Main(string[] args)
{
Expand All @@ -16,12 +16,12 @@ public static void Main(string[] args)
.Run();
}

private readonly Logger logger;
private readonly MailSender mailSender;
private readonly ILogger logger;
private readonly IMailSender mailSender;

public Program(
Logger logger,
MailSender mailSender)
ILogger logger,
IMailSender mailSender)
{
this.logger = logger;
this.mailSender = mailSender;
Expand Down Expand Up @@ -49,14 +49,14 @@ public enum LogLevel
Error
}

public class Logger
public class Logger : ILogger
{
private readonly MailSender mailSender;
private readonly CustomFileWriterFactory customFileWriterFactory;
private readonly IMailSender mailSender;
private readonly ICustomFileWriterFactory customFileWriterFactory;

public Logger(
MailSender mailSender,
CustomFileWriterFactory customFileWriterFactory)
IMailSender mailSender,
ICustomFileWriterFactory customFileWriterFactory)
{
this.mailSender = mailSender;
this.customFileWriterFactory = customFileWriterFactory;
Expand All @@ -80,7 +80,7 @@ public void Log(LogLevel logLevel, string logText)
}
}

public class MailSender
public class MailSender : IMailSender
{
public void SendMail(string recipient, string content)
{
Expand All @@ -92,32 +92,32 @@ public void SendMail(string recipient, string content)
}
}

public class CustomFileWriterFactory
public class CustomFileWriterFactory : ICustomFileWriterFactory
{
private readonly MailSender mailSender;
private readonly IMailSender mailSender;

public CustomFileWriterFactory(
MailSender mailSender)
IMailSender mailSender)
{
this.mailSender = mailSender;
}

public CustomFileWriter Create(string filePath)
public ICustomFileWriter Create(string filePath)
{
return new CustomFileWriter(
mailSender,
filePath);
}
}

public class CustomFileWriter
public class CustomFileWriter : ICustomFileWriter
{
private readonly MailSender mailSender;
private readonly IMailSender mailSender;

public string FilePath { get; }

public CustomFileWriter(
MailSender mailSender,
IMailSender mailSender,
string filePath)
{
this.mailSender = mailSender;
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>