View FileReaderTests.cs
using System.Collections.Generic; | |
using System.IO; | |
using Moq; | |
using NUnit.Framework; | |
using Tdd.FrameworkWrappers.Lib.FrameworkWrappers; | |
namespace Tdd.FrameworkWrappers.Lib.Tests | |
{ | |
[TestFixture] | |
public class FileReaderTests |
View FileImpl.cs
using System.IO; | |
namespace Tdd.FrameworkWrappers.Lib.FrameworkWrappers | |
{ | |
public class FileImpl : IFile | |
{ | |
public string ReadAllText(string filePath) | |
{ | |
return File.ReadAllText(filePath); | |
} |
View IFile.cs
namespace Tdd.FrameworkWrappers.Lib.FrameworkWrappers | |
{ | |
public interface IFile | |
{ | |
string ReadAllText(string filePath); | |
} | |
} |
View FileReader.cs
using System; | |
using Tdd.FrameworkWrappers.Lib.FrameworkWrappers; | |
namespace Tdd.FrameworkWrappers.Lib | |
{ | |
public class FileReader | |
{ | |
private readonly IFile file; | |
private readonly ILogger logger; |
View FileReaderTests.cs
using System.IO; | |
using NUnit.Framework; | |
namespace Tdd.FrameworkWrappers.Lib.Tests | |
{ | |
[TestFixture] | |
public class FileReaderTests | |
{ | |
[SetUp] | |
public void SetUp() |
View FileReader.cs
using System.IO; | |
using System.Net; | |
namespace Tdd.FrameworkWrappers.Lib | |
{ | |
public class FileReader | |
{ | |
public string ReadText(string filePath) | |
{ | |
return File.ReadAllText(filePath); |
View SimpleRecursionExample.cs
// Tree traversal using recursion in C# | |
// | |
// We want to traverse the following tree, which may be arbitrarily | |
// deep/wide. These parameters are not known until runtime. | |
// | |
// root | |
// - branch1 | |
// - leaf1 | |
// - leaf2 | |
// - branch2 |
View program.cs
bool showDebugOutput = true; | |
void Main() | |
{ | |
var data = new string[] { "A", "R", "L", "S", "T", "N", "E" }; | |
// Tell the user what's going on | |
Console.WriteLine("Unsorted Data:"); | |
DumpData(data); | |
Console.WriteLine("Sorting Data..."); |
View PathWrapper.cs
// This code implements a wrapper around the static Path class. | |
// The interface allows us to inject a mock IPath instance at | |
// test time (for example when testing the MuchEasierToTest class). | |
public interface IPath{ | |
string GetFileName(string fileName); | |
} | |
public class PathImpl : IPath { | |
public string GetFileName(string fileName){ |