public void Verify_Create_Should_AddANewEntityObjectToTheDatabase() { // Arrange var mockOriginsRepository = OriginsMockingSetup.DoMockingSetupForRepository(); mockOriginsRepository.Setup(m => m.Search(It.IsAny <IOriginSearchModel>(), It.IsAny <bool>())) .Returns(() => new Mock <List <IOrigin> >().Object); var businessWorkflow = new OriginsBusinessWorkflow(mockOriginsRepository.Object, new OriginMapper()); var model = OriginsMockingSetup.DoMockingSetupForOriginModel(); // Act try { businessWorkflow.Create(model.Object); } catch { /* Ignored */ } // Assert mockOriginsRepository.Verify(m => m.Add(It.IsAny <IOrigin>()), Times.Once); }
public void Verify_Create_WithDuplicateData_Should_NotAddAndReturnOriginal() { // Arrange var mockOriginsRepository = OriginsMockingSetup.DoMockingSetupForRepository(); var mockOrigin = OriginsMockingSetup.DoMockingSetupForOrigin(1); mockOriginsRepository.Setup(m => m.Search(It.IsAny <IOriginSearchModel>(), It.IsAny <bool>())) .Returns(() => new List <IOrigin> { mockOrigin.Object }); mockOriginsRepository.Setup(m => m.Get(It.IsAny <int>())).Returns(() => mockOrigin.Object); var businessWorkflow = new OriginsBusinessWorkflow(mockOriginsRepository.Object, new OriginMapper()); var model = OriginsMockingSetup.DoMockingSetupForOriginModel(); // Act try { businessWorkflow.Create(model.Object); } catch { /* ignored, the Get call at the end doesn't work because don't get a real entity with id on it */ } // Assert mockOriginsRepository.Verify(m => m.Add(It.IsAny <IOrigin>()), Times.Never); }