public void ValidateBlogPost_ValidBlogPost_Returns() { var validator = new BlogPostValidator(); var param_blogPost = new BlogPostFactory().Create(); validator.ValidateBlogPost(param_blogPost); }
public void Delete_VerifyDataAccess() { var fakeConfig = MakeFakeConfig(); var mockFileDataAccess = new MockIFileDataAccess <BlogPost>(); var fileAdapter = new BlogPostFileAdapter(fakeConfig, mockFileDataAccess); var param_entity = new BlogPostFactory().Create(); var stub_blogPost = new BlogPostFactory().Create(); stub_blogPost.PostId = Guid.Parse("55555555-5555-5555-5555-555555555555"); var stub_list = new List <BlogPost> { param_entity, stub_blogPost }; mockFileDataAccess.StubReadDatabase(stub_list); var expected_readDBfilePath = fakeConfig[KeyChain.FileDataAccess_BlogPost_DatabasePath]; var expected_overwriteDBfilePath = fakeConfig[KeyChain.FileDataAccess_BlogPost_DatabasePath]; var expected_overwriteDB_newList = new List <BlogPost> { stub_blogPost }; fileAdapter.Delete(param_entity); mockFileDataAccess.VerifyReadDatabase(expected_readDBfilePath); mockFileDataAccess.VerifyOverwriteDatabase(expected_overwriteDBfilePath, expected_overwriteDB_newList); }
public void Add_ValidBlogPost_Returns() { var stubDataAccessAdapter = new StubIBlogPostDataAccessAdapter(); var stubValidator = new StubIBlogPostValidator(); var repository = new BlogPostRepository(stubDataAccessAdapter, stubValidator); var param_blogPost = new BlogPostFactory().Create(); repository.Add(param_blogPost); }
public void DeleteAllByAuthorId_ValidAuthorId_Returns() { var stubDataAccessAdapter = new StubIBlogPostDataAccessAdapter(); var stubValidator = new StubIBlogPostValidator(); var repository = new BlogPostRepository(stubDataAccessAdapter, stubValidator); var param_authorId = new BlogPostFactory().Create().AuthorId; repository.DeleteAllByAuthorId(param_authorId); }
public void ValidateBlogPost_PostTitleIsInvalid_ThrowsException(string invalidValue) { var validator = new BlogPostValidator(); var param_blogPost = new BlogPostFactory().Create(); param_blogPost.PostTitle = invalidValue; Assert.Throws <ArgumentException>( () => validator.ValidateBlogPost(param_blogPost)); }
public void Add_Returns() { var fakeConfig = MakeFakeConfig(); var stubFileDataAccess = new StubIFileDataAccess <BlogPost>(); var fileAdapter = new BlogPostFileAdapter(fakeConfig, stubFileDataAccess); var param_entity = new BlogPostFactory().Create(); fileAdapter.Add(param_entity); }
public void DeleteAllByAuthorId_ValidAuthorId_VerifyDataAccessAdapter() { var mockDataAccessAdapter = new MockIBlogPostDataAccessAdapter(); var stubValidator = new StubIBlogPostValidator(); var repository = new BlogPostRepository(mockDataAccessAdapter, stubValidator); var param_authorId = new BlogPostFactory().Create().AuthorId; repository.DeleteAllByAuthorId(param_authorId); mockDataAccessAdapter.VerifyDeleteAllByAuthorId(param_authorId); }
public void Delete_ValidBlogPost_VerifyDataAccessAdapter() { var mockDataAccessAdapter = new MockIBlogPostDataAccessAdapter(); var stubValidator = new StubIBlogPostValidator(); var repository = new BlogPostRepository(mockDataAccessAdapter, stubValidator); var param_blogPost = new BlogPostFactory().Create(); repository.Delete(param_blogPost); mockDataAccessAdapter.VerifyDelete(param_blogPost); }
public void Edit_Return() { var fakeConfig = MakeFakeConfig(); var stubWebApiDataAccess = new StubIWebApiDataAccess(); var webApiAdapter = new BlogPostWebApiAdapter(fakeConfig, stubWebApiDataAccess); var param_entity = new BlogPostFactory().Create(); stubWebApiDataAccess.StubSendRequest(MakeHttpResponseMessage(HttpStatusCode.OK)); webApiAdapter.Edit(param_entity); }
public void AddBlogPost_VerifyRepository() { var mockBlogPostRepo = new MockIBlogPostRepository(); var interactor = new AddBlogPostInteractor(mockBlogPostRepo); var stub_BlogPost = new BlogPostFactory().Create(); var param_request = MakeRequest(stub_BlogPost); var response = interactor.AddBlogPost(param_request); mockBlogPostRepo.VerifyAdd(response.Post); }
public void DeleteByAuthorId_Returns() { var fakeConfig = MakeFakeConfig(); var stubWebApiDataAccess = new StubIWebApiDataAccess(); var webApiAdapter = new BlogPostWebApiAdapter(fakeConfig, stubWebApiDataAccess); var param_id = new BlogPostFactory().Create().AuthorId; stubWebApiDataAccess.StubSendRequest(MakeHttpResponseMessage(HttpStatusCode.OK)); webApiAdapter.DeleteAllByAuthorId(param_id); }
public void Add_ValidBlogPost_VerifyValidator() { var stubDataAccessAdapter = new StubIBlogPostDataAccessAdapter(); var mockValidator = new MockIBlogPostValidator(); var repository = new BlogPostRepository(stubDataAccessAdapter, mockValidator); var param_blogPost = new BlogPostFactory().Create(); repository.Add(param_blogPost); mockValidator.VerifyValidateBlogPost(param_blogPost); }
public void Add_VerifyDataAccess() { var fakeConfig = MakeFakeConfig(); var mockFileDataAccess = new MockIFileDataAccess <BlogPost>(); var fileAdapter = new BlogPostFileAdapter(fakeConfig, mockFileDataAccess); var param_entity = new BlogPostFactory().Create(); var expectedfilePath = fakeConfig[KeyChain.FileDataAccess_BlogPost_DatabasePath]; fileAdapter.Add(param_entity); mockFileDataAccess.VerifyWriteToDatabase(expectedfilePath, param_entity); }
public void Add_VerifySendRequestCalled() { var fakeConfig = MakeFakeConfig(); var mockWebApiDataAccess = new MockIWebApiDataAccess(); var webApiAdapter = new BlogPostWebApiAdapter(fakeConfig, mockWebApiDataAccess); var param_entity = new BlogPostFactory().Create(); mockWebApiDataAccess.StubSendRequest(MakeHttpResponseMessage(HttpStatusCode.OK)); webApiAdapter.Add(param_entity); mockWebApiDataAccess.VerifySendRequestCalled(1); }
public void DeleteByAuthorId_VerifySendRequestCalled() { var fakeConfig = MakeFakeConfig(); var mockWebApiDataAccess = new MockIWebApiDataAccess(); var webApiAdapter = new BlogPostWebApiAdapter(fakeConfig, mockWebApiDataAccess); var param_id = new BlogPostFactory().Create().AuthorId; mockWebApiDataAccess.StubSendRequest(MakeHttpResponseMessage(HttpStatusCode.OK)); webApiAdapter.DeleteAllByAuthorId(param_id); mockWebApiDataAccess.VerifySendRequestCalled(1); }
public void DeleteAllByAuthorId_Returns() { var fakeConfig = MakeFakeConfig(); var stubSqlParameterBuilder = new StubISqlParameterBuilder(); var stubSqlServerDataAccess = new StubISqlServerDataAccess(); var sqlServerAdapter = new BlogPostSqlServerAdapter(fakeConfig, stubSqlServerDataAccess, stubSqlParameterBuilder); var param_id = new BlogPostFactory().Create().AuthorId; stubSqlServerDataAccess.StubExecuteNonQueryStoredProcedure(1); sqlServerAdapter.DeleteAllByAuthorId(param_id); }
public void Add_Returns() { var fakeConfig = MakeFakeConfig(); var stubSqlParameterBuilder = new StubISqlParameterBuilder(); var stubSqlServerDataAccess = new StubISqlServerDataAccess(); var sqlServerAdapter = new BlogPostSqlServerAdapter(fakeConfig, stubSqlServerDataAccess, stubSqlParameterBuilder); var param_entity = new BlogPostFactory().Create(); stubSqlServerDataAccess.StubExecuteNonQueryStoredProcedure(1); sqlServerAdapter.Add(param_entity); }
public void DeleteBlogPost_ValidBlogPost_ReturnsExpectedResponse() { var stubBlogPostRepo = new StubIBlogPostRepository(); var interactor = new DeleteBlogPostInteractor(stubBlogPostRepo); var stub_BlogPost = new BlogPostFactory().Create(); stubBlogPostRepo.StubGetById(stub_BlogPost); var expected = MakeResponse(true); var param_request = MakeRequest(stub_BlogPost); var actual = interactor.DeleteBlogPost(param_request); Assert.Equal(expected.DeleteSuccessful, actual.DeleteSuccessful); }
public void DeleteBlogPost_VerifyRepository() { var mockBlogPostRepo = new MockIBlogPostRepository(); var interactor = new DeleteBlogPostInteractor(mockBlogPostRepo); var stub_BlogPost = new BlogPostFactory().Create(); mockBlogPostRepo.StubGetById(stub_BlogPost); var param_request = MakeRequest(stub_BlogPost); var response = interactor.DeleteBlogPost(param_request); mockBlogPostRepo.VerifyGetById(stub_BlogPost.PostId); mockBlogPostRepo.VerifyDelete(stub_BlogPost); }
public void GetById_ValidBlogPost_ReturnsExpectedBlogPost() { var stubDataAccessAdapter = new StubIBlogPostDataAccessAdapter(); var stubValidator = new StubIBlogPostValidator(); var repository = new BlogPostRepository(stubDataAccessAdapter, stubValidator); var expected = new BlogPostFactory().Create(); stubDataAccessAdapter.StubGetById(expected); var param_authorId = expected.AuthorId; var actual = repository.GetById(param_authorId); Assert.Equal(expected, actual); }
public void GetById_ListReturnedIsEmpty_ReturnsNullBlogPost() { var fakeConfig = MakeFakeConfig(); var stubSqlParameterBuilder = new StubISqlParameterBuilder(); var stubSqlServerDataAccess = new StubISqlServerDataAccess(); var sqlServerAdapter = new BlogPostSqlServerAdapter(fakeConfig, stubSqlServerDataAccess, stubSqlParameterBuilder); var param_id = new BlogPostFactory().Create().PostId; stubSqlServerDataAccess.StubExecuteReaderStoredProcedure(new List <BlogPost>()); var returned_blogpost = sqlServerAdapter.GetById(param_id); Assert.Null(returned_blogpost); }
public void GetById_ListReturnedIsEmpty_VerifySqlServerDataAccess() { var fakeConfig = MakeFakeConfig(); var stubSqlParameterBuilder = new StubISqlParameterBuilder(); var mockSqlServerDataAccess = new MockISqlServerDataAccess(); var sqlServerAdapter = new BlogPostSqlServerAdapter(fakeConfig, mockSqlServerDataAccess, stubSqlParameterBuilder); var param_id = new BlogPostFactory().Create().PostId; mockSqlServerDataAccess.StubExecuteReaderStoredProcedure(new List <BlogPost>()); sqlServerAdapter.GetById(param_id); mockSqlServerDataAccess.VerifyExecuteReaderStoredProcedureCalled <BlogPost>(1); }
public void AddBlogPost_ValidBlogPost_ReturnsExpectedResponse() { var stubBlogPostRepo = new StubIBlogPostRepository(); var interactor = new AddBlogPostInteractor(stubBlogPostRepo); var stub_BlogPost = new BlogPostFactory().Create(); var expected = MakeResponse(stub_BlogPost, true); var param_request = MakeRequest(stub_BlogPost); var actual = interactor.AddBlogPost(param_request); Assert.Equal(expected.AddSuccessful, actual.AddSuccessful); Assert.Equal(expected.Post.AuthorId, actual.Post.AuthorId); Assert.Equal(expected.Post.PostBody, actual.Post.PostBody); Assert.Equal(expected.Post.PostTitle, actual.Post.PostTitle); }
public void Delete_VerifySqlServerDataAccess() { var fakeConfig = MakeFakeConfig(); var stubSqlParameterBuilder = new StubISqlParameterBuilder(); var mockSqlServerDataAccess = new MockISqlServerDataAccess(); var sqlServerAdapter = new BlogPostSqlServerAdapter(fakeConfig, mockSqlServerDataAccess, stubSqlParameterBuilder); var param_entity = new BlogPostFactory().Create(); mockSqlServerDataAccess.StubExecuteNonQueryStoredProcedure(1); sqlServerAdapter.Delete(param_entity); mockSqlServerDataAccess.VerifyExecuteNonQueryStoredProcedureCalled(1); }
public void GetById_VerifySendRequestCalled() { var fakeConfig = MakeFakeConfig(); var mockWebApiDataAccess = new MockIWebApiDataAccess(); var webApiAdapter = new BlogPostWebApiAdapter(fakeConfig, mockWebApiDataAccess); var param_id = new BlogPostFactory().Create().PostId; var stub_expectedBlogPost = new BlogPostFactory().Create(); var stub_response = MakeHttpResponseMessage(HttpStatusCode.OK); stub_response.Content = new StringContent(JsonConvert.SerializeObject(stub_expectedBlogPost)); mockWebApiDataAccess.StubSendRequest(stub_response); webApiAdapter.GetById(param_id); mockWebApiDataAccess.VerifySendRequestCalled(1); }
public void GetById_ReturnsExpectedBlogPost() { var fakeConfig = MakeFakeConfig(); var stubWebApiDataAccess = new StubIWebApiDataAccess(); var webApiAdapter = new BlogPostWebApiAdapter(fakeConfig, stubWebApiDataAccess); var param_id = new BlogPostFactory().Create().PostId; var expected = new BlogPostFactory().Create(); var stub_response = MakeHttpResponseMessage(HttpStatusCode.OK); stub_response.Content = new StringContent(JsonConvert.SerializeObject(expected)); stubWebApiDataAccess.StubSendRequest(stub_response); var actual = webApiAdapter.GetById(param_id); AssertBlogPostAreEqual(expected, actual); }
public void Delete_Returns() { var fakeConfig = MakeFakeConfig(); var stubFileDataAccess = new StubIFileDataAccess <BlogPost>(); var fileAdapter = new BlogPostFileAdapter(fakeConfig, stubFileDataAccess); var param_entity = new BlogPostFactory().Create(); var stub_blogPost = new BlogPostFactory().Create(); stub_blogPost.PostId = Guid.Parse("55555555-5555-5555-5555-555555555555"); var stub_list = new List <BlogPost> { param_entity, stub_blogPost }; stubFileDataAccess.StubReadDatabase(stub_list); fileAdapter.Delete(param_entity); }
public void List_ReturnsExpectedList() { var fakeConfig = MakeFakeConfig(); var stubFileDataAccess = new StubIFileDataAccess <BlogPost>(); var fileAdapter = new BlogPostFileAdapter(fakeConfig, stubFileDataAccess); var stub_blogPost = new BlogPostFactory().Create(); var stub_list = new List <BlogPost> { stub_blogPost }; stubFileDataAccess.StubReadDatabase(stub_list); var expected = stub_list; var actual = fileAdapter.List(); Assert.Equal(expected, actual); }
public void List_VerifyFileDataAccess() { var fakeConfig = MakeFakeConfig(); var mockFileDataAccess = new MockIFileDataAccess <BlogPost>(); var fileAdapter = new BlogPostFileAdapter(fakeConfig, mockFileDataAccess); var stub_blogPost = new BlogPostFactory().Create(); var stub_list = new List <BlogPost> { stub_blogPost }; mockFileDataAccess.StubReadDatabase(stub_list); var expected_readDBfilePath = fakeConfig[KeyChain.FileDataAccess_BlogPost_DatabasePath]; fileAdapter.List(); mockFileDataAccess.VerifyReadDatabase(expected_readDBfilePath); }
public void DeleteByAuthorId_Returns() { var fakeConfig = MakeFakeConfig(); var stubFileDataAccess = new StubIFileDataAccess <BlogPost>(); var fileAdapter = new BlogPostFileAdapter(fakeConfig, stubFileDataAccess); var stub_blogPost1 = new BlogPostFactory().Create(); var stub_blogPost2 = new BlogPostFactory().Create(); stub_blogPost2.AuthorId = Guid.Parse("55555555-5555-5555-5555-555555555555"); var stub_list = new List <BlogPost> { stub_blogPost1, stub_blogPost2 }; stubFileDataAccess.StubReadDatabase(stub_list); fileAdapter.DeleteAllByAuthorId(stub_blogPost2.AuthorId); }