public void WhenAProjectFullPathIsInvalidItWillCallDependencies() { var xmlSerializerIsCalled = false; var xmlSerializerSpy = new StubIXmlSerializer { SerializeObject = o => { xmlSerializerIsCalled = true; return "Result"; } }; var fileWriterIsCalled = false; var fileWriterSpy = new StubIFileWriter { WriteStringString = (s, s1) => { fileWriterIsCalled = true; } }; var projectSerializer = new ProjectSerializer(xmlSerializerSpy, fileWriterSpy); projectSerializer.Serialize(project); Assert.IsTrue(xmlSerializerIsCalled); Assert.IsTrue(fileWriterIsCalled); }
public void ClearDatabase_Returns() { var stubReader = new StubIFileReader(); var stubWriter = new StubIFileWriter(); var fileDataAccess = new FileDataAccess <FakeBlogModel>(stubReader, stubWriter); var param_filePath = "path/to/the/file.json"; fileDataAccess.ClearDatabase(param_filePath); }
public void WriteToDatabase_ListOfEntityIsEmpty_Returns() { var stubReader = new StubIFileReader(); var stubWriter = new StubIFileWriter(); var fileDataAccess = new FileDataAccess <FakeBlogModel>(stubReader, stubWriter); var param_filePath = "path/to/the/file.json"; var param_listOfEntity = new List <FakeBlogModel>(); fileDataAccess.WriteToDatabase(param_filePath, param_listOfEntity); }
public void WriteToDatabase_EntityIsNull_Returns() { var stubReader = new StubIFileReader(); var stubWriter = new StubIFileWriter(); var fileDataAccess = new FileDataAccess <FakeBlogModel>(stubReader, stubWriter); var param_filePath = "path/to/the/file.json"; FakeBlogModel param_entity = null; fileDataAccess.WriteToDatabase(param_filePath, param_entity); }
public void OverwriteDatabase_ListOfEntityIsValid_Returns() { var stubReader = new StubIFileReader(); var stubWriter = new StubIFileWriter(); var fileDataAccess = new FileDataAccess <FakeBlogModel>(stubReader, stubWriter); var param_filePath = "path/to/the/file.json"; var param_listOfEntity = new List <FakeBlogModel> { new FakeBlogModel() }; fileDataAccess.OverwriteDatabase(param_filePath, param_listOfEntity); }
public void WriteToDatabase_ListOfEntityIsEmpty_VerifyReader() { var mockReader = new MockIFileReader(); var stubWriter = new StubIFileWriter(); var fileDataAccess = new FileDataAccess <FakeBlogModel>(mockReader, stubWriter); var param_filePath = "path/to/the/file.json"; var param_listOfEntity = new List <FakeBlogModel>(); fileDataAccess.WriteToDatabase(param_filePath, param_listOfEntity); mockReader.VerifyReadNeverCalled(); }
public void WriteToDatabase_EntityIsValidAndDatabaseIsEmpty_VerifyReader() { var mockReader = new MockIFileReader(); var stubWriter = new StubIFileWriter(); var fileDataAccess = new FileDataAccess <FakeBlogModel>(mockReader, stubWriter); var param_filePath = "path/to/the/file.json"; var param_entity = new FakeBlogModel(); fileDataAccess.WriteToDatabase(param_filePath, param_entity); mockReader.VerifyRead(param_filePath); }
public void ReadDatabase_FileContentsAreNullOrEmpty_VerifyReader(string stub_fileContents) { var mockReader = new MockIFileReader(); var stubWriter = new StubIFileWriter(); var fileDataAccess = new FileDataAccess <FakeBlogModel>(mockReader, stubWriter); mockReader.StubRead(stub_fileContents); var param_filePath = "path/to/the/file.json"; fileDataAccess.ReadDatabase(param_filePath); mockReader.VerifyRead(param_filePath); }
public void ReadDatabase_FileContentsAreNullOrEmpty_ReturnsEmptyList(string stub_fileContents) { var stubReader = new StubIFileReader(); var stubWriter = new StubIFileWriter(); var fileDataAccess = new FileDataAccess <FakeBlogModel>(stubReader, stubWriter); stubReader.StubRead(stub_fileContents); var param_filePath = "path/to/the/file.json"; var expected_return = new List <FakeBlogModel>(); var actual_return = fileDataAccess.ReadDatabase(param_filePath); Assert.Equal(expected_return, actual_return); }
public void WriteToDatabase_ListOfEntityIsValidAndDatabaseContainsOneObject_Returns() { var stubReader = new StubIFileReader(); var stubWriter = new StubIFileWriter(); var fileDataAccess = new FileDataAccess <FakeBlogModel>(stubReader, stubWriter); var param_filePath = "path/to/the/file.json"; var param_listOfEntity = new List <FakeBlogModel> { new FakeBlogModel() }; stubReader.StubRead(JsonConvert.SerializeObject(param_listOfEntity)); fileDataAccess.WriteToDatabase(param_filePath, param_listOfEntity); }
public void ReadDatabase_FileContainsOneObject_VerifyReader() { var mockReader = new MockIFileReader(); var stubWriter = new StubIFileWriter(); var fileDataAccess = new FileDataAccess <FakeBlogModel>(mockReader, stubWriter); var param_filePath = "path/to/the/file.json"; var stub_listOfEntity = new List <FakeBlogModel> { new FakeBlogModel() }; var stub_fileContents = JsonConvert.SerializeObject(stub_listOfEntity); mockReader.StubRead(stub_fileContents); fileDataAccess.ReadDatabase(param_filePath); mockReader.VerifyRead(param_filePath); }
public void ReadDatabase_FileContainsOneObject_ReturnsListWithTheOneObject() { var stubReader = new StubIFileReader(); var stubWriter = new StubIFileWriter(); var fileDataAccess = new FileDataAccess <FakeBlogModel>(stubReader, stubWriter); var param_filePath = "path/to/the/file.json"; var stub_listOfEntity = new List <FakeBlogModel> { new FakeBlogModel() }; var stub_fileContents = JsonConvert.SerializeObject(stub_listOfEntity); stubReader.StubRead(stub_fileContents); var expected_return = JsonConvert.DeserializeObject <List <FakeBlogModel> >(stub_fileContents); var actual_return = fileDataAccess.ReadDatabase(param_filePath); Assert.Equal(expected_return.Count, actual_return.Count); Assert.Equal(expected_return[0].FakeProperty, actual_return[0].FakeProperty); }