public void CreateSupplier_Action_Fails() { // Arrange var supplierDto = TestHelper.SupplierDto(); GenericServiceResponse <bool> fakeResponse = null; mockClientServicesProvider.Setup(x => x.Logger).Returns(mockLogger.Object).Verifiable(); mockClientServicesProvider.Setup(x => x.SupplierService.CreateSupplier(supplierDto)).Returns(fakeResponse).Verifiable(); var viewModel = new GenericViewModel(); var action = new CreateSupplier <GenericViewModel>(mockClientServicesProvider.Object) { OnComplete = model => viewModel = model }; // Act var result = action.Invoke(supplierDto); // Assert Assert.IsNotNull(result); Assert.IsInstanceOfType(result, typeof(GenericViewModel)); Assert.IsNotNull(result.Notifications); Assert.IsInstanceOfType(result.Notifications, typeof(NotificationCollection)); Assert.IsTrue(result.Notifications.Count() == 1); Assert.IsTrue(result.HasErrors); Assert.IsNotNull(result.Success); Assert.IsInstanceOfType(result.Success, typeof(bool)); Assert.IsFalse(result.Success); }
public async Task <int> CreateSupplier(CreateSupplier supplier) { return(await QueryFirstAsync <int>( @"IF NOT EXISTS ( SELECT TOP 1 1 FROM dbo.Supplier WITH(NOLOCK) WHERE Name = @Name) BEGIN INSERT INTO dbo.Supplier(Name) VALUES (@Name) SELECT SCOPE_IDENTITY() RETURN END SELECT TOP 1 Id FROM dbo.Supplier WITH(NOLOCK) WHERE Name = @Name", new { Name = supplier.Name })); }